; Update ChangeLog.2 and ldef-boot.el for Emacs 25.1 RC2
[emacs.git] / ChangeLog.2
blobbff2a0d98f2ea67bb411d6e1ad7071854a96d762
1 2016-08-20  Philipp Stephani  <phst@google.com>
3         Some assorted documentation clarifications
5         * src/fileio.c (Fwrite_region): Clarify that END is ignored if
6         START is nil.
7         * src/editfns.c (Fbuffer_size): Add short discussion about
8         narrowing.
9         * src/callproc.c (Fcall_process_region): Discuss behavior when
10         START and END are not buffer positions.
12 2016-08-18  Eli Zaretskii  <eliz@gnu.org>
14         Improve commentary in src/character.h
16         * src/character.h (BYTES_BY_CHAR_HEAD, MULTIBYTE_LENGTH)
17         (MULTIBYTE_LENGTH_NO_CHECK, STRING_CHAR_AND_LENGTH): Remove stale
18         info from commentary and improve it.
20 2016-08-17  Dmitry Gutov  <dgutov@yandex.ru>
22         * etc/NEWS: Mention the change in json-encode-string.
24         The change was made to fix bug#20154, and came up again in bug#24239.
26 2016-08-16  Eli Zaretskii  <eliz@gnu.org>
28         * src/doc.c (Fsubstitute_command_keys): Another fix for smart quotes.
30         (Bug#24206)
32 2016-08-16  Eli Zaretskii  <eliz@gnu.org>
34         Avoid segfaults due to quoting in 'substitute-command-keys'
36         * src/doc.c (Fsubstitute_command_keys): Correct character counts
37         when the input string is unibyte.  (Bug#24206)
39 2016-08-16  Martin Rudalics  <rudalics@gmx.at>
41         In NEWS describe new handling of window margins (Bug#24193)
43         * etc/NEWS: Describe new handling of margins when splitting or
44         resizing windows (Bug#24193).
46 2016-08-16  Martin Rudalics  <rudalics@gmx.at>
48         Facultatively ignore margins when splitting and resizing windows (Bug#24193)
50         Provide a new window parameter 'min-margins' which allows to
51         ignore the actual widths of a window's margins when splitting or
52         resizing that window horizontally.  This should serve as a
53         workaround for handling the problems raised by Bug#24193.
55         * lisp/window.el (window--min-size-1): Handle new window
56         parameter 'min-margins'.
57         (split-window): Fix text of error messages.
58         * doc/lispref/windows.texi (Window Parameters): Describe new
59         parameter 'min-margins'.
61 2016-08-14  Noam Postavsky  <npostavs@gmail.com>
63         Document CATEGORY arg to modify-category-entry
65         * src/category.c (Fmodify_category_entry): Document CATEGORY argument.
67 2016-08-13  Noam Postavsky  <npostavs@gmail.com>
69         Document char-script-table's effect on word motion
71         * doc/lispref/positions.texi (Word Motion): Talk about
72         char-script-table (Bug #10494).
74 2016-08-13  Eli Zaretskii  <eliz@gnu.org>
76         Further fix for 'url-http-create-request' and multibyte strings
78         * lisp/url/url-http.el (url-http-create-request): Run
79         url-mime-charset-string through url-http--encode-string.
80         (Bug#24117)
82 2016-08-13  Noam Postavsky  <npostavs@gmail.com>
84         Fix docstring of eval-expression
86         * lisp/simple.el (eval-expression): Fix the docstring to reflect the
87         fact that the prefix argument does not affect formatting for
88         integers (Bug #20691).
90 2016-08-11  Eli Zaretskii  <eliz@gnu.org>
92         Clarify when 'cursor' property is in effect
94         * doc/lispref/text.texi (Special Properties): Minor copyedits.
95         (Bug#24179)
97 2016-08-11  Dmitry Gutov  <dgutov@yandex.ru>
99         Convert the remaining strings to unibyte before concatenating
101         * lisp/url/url-http.el (url-http--encode-string): New function.
102         (url-http-create-request): Use it to convert ASCII to unibyte.
103         (Bug#24117)
105 2016-08-11  Eli Zaretskii  <eliz@gnu.org>
107         Fix bug with handling the bidi cache
109         * src/xdisp.c (redisplay_window): Save and restore the state of
110         the bidi cache before reusing the iterator after calls to
111         try_window and try_window_reusing_current_matrix.
113 2016-08-10  Eli Zaretskii  <eliz@gnu.org>
115         * doc/lispref/text.texi (Change Hooks): Minor copyedits.
117 2016-08-09  Eli Zaretskii  <eliz@gnu.org>
119         Clarify documentation of before/after-change-functions
121         * doc/lispref/text.texi (Change Hooks): Clarify that the hooks are
122         not called in balanced pairs.
124 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
126         Document use of vectors in keymaps
128         * doc/lispref/keymaps.texi (Format of Keymaps): Mention vector
129         format (Bug #14797).
131 2016-08-03  Alan Third  <alan@idiocy.org>
133         Post AppDefined events from the main thread ONLY (bug#23934)
135         * src/nsterm.h: Make nextappdefined var not just GNUStep.
136         * src/nsterm.m (ns_send_appdefined, sendFromMainThread): Remove GNUStep
138 2016-08-03  John Wiegley  <johnw@newartisans.com>
140         Update to the AUTHORS file for Bob Weiner
142                 * etc/AUTHORS: Update the packages attributed to Bob Weiner
144 2016-08-02  John Wiegley  <johnw@newartisans.com>
146         Revert "Fix local printer set to left aligned string formatter."
148         This reverts commit 8a38e948b039516e70176ebe20c5349e2ade6ac5.
150 2016-08-02  John Wiegley  <johnw@newartisans.com>
152         Revert "Fix ses-delete-blanks to delete only blanks + documentation."
154         This reverts commit 3c97b0f7589e06aeb1ab0147f0ee32974c32926d.
156 2016-08-02  John Wiegley  <johnw@newartisans.com>
158         Revert "Fix English."
160         This reverts commit b275cc76f0c5ab49e81445fcc3420c8772aefd42.
162 2016-08-01  Eli Zaretskii  <eliz@gnu.org>
164         Improve doc strings of 'gud-gdb' and 'gdb'
166         * lisp/progmodes/gdb-mi.el (gdb):
167         * lisp/progmodes/gud.el (gud-gdb): Doc fix.  (Bug#24125)
169 2016-08-01  Eli Zaretskii  <eliz@gnu.org>
171         Fix doc string of 'minibuffer-message-timeout'
173         * src/keyboard.c (syms_of_keyboard) <minibuffer-message-timeout>:
174         Doc fix.  (Bug#24123)
176 2016-07-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
178         Fix English.
180         * doc/misc/ses.texi (Nonrelocatable references): Fix grammatically
181           incorrect English.
183 2016-07-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
185         Fix ses-delete-blanks to delete only blanks + documentation.
187         * doc/misc/ses.texi (Quick Tutorial): Mention the '!'
188         'ses-range' modifier as an alternative to 'ses+'.
189         (Advanced Features): Add a refernce to node 'Nonrelocatable
190         references' concerning function 'ses-rename-cell'.
191         (Standard formula functions): Mention the '!' 'ses-range'
192         modifier as an alternative to 'ses-delete-blanks'.
193         (More on cell printing): Fix fallback printer
194         definition.  Minor editorial formatting changes.
195         (Nonrelocatable references): Document the use of
196         'ses-rename-cell' as a better way to make cell reference
197         non-relocatable.
198         (The data area): Document the presence of local printer
199         definitions in the data area.
201         * lisp/ses.el (ses-delete-blanks): Do not remove
202         *error*.  Any error in an argument should propagate into the
203         using formula rather than being silently hidden !
205 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
207         profiler: document prefix arg for tree expansion
209         * doc/lispref/debugging.texi (Profiling):
210         * lisp/profiler.el (profiler-report-toggle-entry): Document use of
211         prefix argument to expand whole call trees.
213 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
215         Clarify usage of eshell-visual-options
217         * lisp/eshell/em-term.el (eshell-visual-options): Add second option to
218         example usage (Bug #19627).
220 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
222         Fix comment in files-in-below-directory
224         * doc/lispintro/emacs-lisp-intro.texi (Files List): Comment should not
225         say append, since the code is adding to front of list (Bug #21589).
227 2016-07-28  Vincent Belaïche  <vincentb1@users.sourceforge.net>
229         Fix local printer set to left aligned string formatter.
231         * lisp/ses.el (ses-local-printer-compile): Add missing case
232         for left-aligned string formatter.
234 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
236         Bump Emacs version to 25.1 for the first RC
238         * README:
239         * configure.ac:
240         * lisp/ldefs-boot.el:
241         * msdos/sed2v2.inp: Bump Emacs version to 25.1.
243 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
245         * etc/AUTHORS: Update the AUTHORS file
247         ;; * ChangeLog.2: ChangeLog update.
249 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
251         * admin/authors.el (authors-valid-file-names): Addition.
253 2016-07-23  Eli Zaretskii  <eliz@gnu.org>
255         Warn about Cairo-related problems
257         * etc/NEWS: Warn about known problems in the Cairo build.
258         (Bug#23925)
260 2016-07-23  Paul Pogonyshev  <pogonyshev@gmail.com>
262         Don't let completion break `declare' handling
264         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Fix to not alter
265         `defun-declarations-alist' by side effect (Bug #23648).
267 2016-07-23  Noam Postavsky  <npostavs@gmail.com>
269         Adjust match data before calling after-change-funs
271         It's important to adjust the match data in between calling
272         before-change-functions and after-change-functions, so that buffer
273         change hooks will always see match-data consistent with buffer content.
274         (Bug #23917)
276         * src/insdel.c (replace_range): Add new parameter ADJUST_MATCH_DATA, if
277         true call update_search_regs.  Update all callers (except
278         Freplace_match) to pass 0 for the new parameter.
279         * src/search.c (update_search_regs): New function, extracted from
280         Freplace_match.
281         (Freplace_match): Remove match data adjustment code, pass 1 for
282         ADJUST_MATCH_DATA to replace_range instead.
284 2016-07-21  Mark Oteiza  <mvoteiza@udel.edu>
286         Do not show string-rectangle preview if minibuffer is empty
288         * lisp/rect.el (rectangle--string-preview): Remove condition that sets
289         preview string to the default replacement string.
291 2016-07-21  Achim Gratz  <Stromeko@nexgo.de>
293         * etc/PROBLEMS: Add entry about selection problems under Plasma 5.
295         Bug#24013
297 2016-07-21  Paul Eggert  <eggert@cs.ucla.edu>
299         Port to glibc 2.24 (pre-release) + ppc64
301         Backport from master (Bug#24033).
302         Inspired by a suggestion by Florian Weimer in:
303         https://sourceware.org/ml/libc-alpha/2016-07/msg00425.html
304         * src/emacs.c (main) [__PPC64__]:
305         Special case for __PPC64__, which needs ASLR disabled in
306         dumped Emacs too.
308 2016-07-21  Katsumi Yamaoka  <yamaoka@jpl.org>
310         * lisp/net/shr.el (shr-fill-line): Withdraw the last commit (4157159).
312         * lisp/net/shr.el (shr-fill-line):
313         Preserve text properties in folded lines (bug#24034).
315 2016-07-17  Robert Cochran  <robert-git@cochranmail.com>  (tiny change)
317         Expand FIXME near definition of fboundp
319         This expansion of the FIXME is so that future developers are aware of
320         the potential problems of aliasing fboundp to symbol-function without
321         taking backwards compatibility into account.
323         * src/data.c (fboundp): Note potential backwards compatibility issues in
324         FIXME.
326 2016-07-17  Noam Postavsky  <npostavs@gmail.com>
328         kill-rectangle should mention killed-rectangle
330         * lisp/rect.el (kill-rectangle): Mention `killed-rectangle' in docstring
331         and warning message, rather than kill ring (Bug#19773).
333 2016-07-16  Eli Zaretskii  <eliz@gnu.org>
335         Avoid assertion violations in nhexl-mode
337         * src/bidi.c (bidi_resolve_neutral): Convert an assertion to real
338         code executed in all builds.  (Bug#24001)
340 2016-07-15  Fredrik Bergroth  <fbergroth@gmail.com>  (tiny change)
342         Use memmove instead of memcpy on overlapping regions
344         * src/editfns.c (Ftranspose_regions): Regions may overlap, so
345         use memmove instead of memcpy (bug#19213).
348         This is a backport from trunk.
349         (cherry picked from commit 354f9f0fc6cc05ed98883447f9b2f37943d79160)
351 2016-07-15  Noam Postavsky  <npostavs@gmail.com>
353         Document buffer-swap-text+save-excursion interaction
355         * doc/lispref/buffers.texi (Swapping Text):
356         * src/buffer.c (Fbuffer_swap_text): Add warning about interaction of
357         `buffer-swap-text' and `save-excursion' (Bug #4655).
359 2016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
361         Fix eieio vs cl-generic incompatibilities found in Rudel (bug#23947)
363         * lisp/emacs-lisp/cl-generic.el (cl-generic-apply): New function.
364         * lisp/emacs-lisp/eieio-compat.el (eieio--defmethod): Fix incorrect
365         mapping between cl-no-applicable-method and EIEIO's no-applicable-method.
366         * lisp/emacs-lisp/eieio-core.el (eieio--class-precedence-c3):
367         `class' is not a symbol but a class object.
369 2016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
371         Include cl-generic in package--builtin-versions (bug#22817)
373         * lisp/emacs-lisp/cl-generic.el (package--builtin-versions):
374         Add ourselves manually.  Don't merge since there's a better fix on master.
376 2016-07-14  Michael Albinus  <michael.albinus@gmx.de>
378         Improve timing in `tramp-test29-environment-variables'
380         * test/automated/tramp-tests.el
381         (tramp-test--shell-command-to-string-asynchronously):
382         Add additional `accept-process-output' call.
383         (tramp-test29-environment-variables): Remove additional sleep calls.
385 2016-07-14  Michael Albinus  <michael.albinus@gmx.de>
387         Add test for handling environment variables in Tramp
389         * test/automated/tramp-tests.el
390         (tramp-test--shell-command-to-string-asynchronously): New defun.
391         (tramp-test29-environment-variables): New test.
392         (tramp-test30-vc-registered)
393         (tramp-test31-make-auto-save-file-name)
394         (tramp-test32-special-characters)
395         (tramp-test32-special-characters-with-stat)
396         (tramp-test32-special-characters-with-perl)
397         (tramp-test32-special-characters-with-ls, tramp-test33-utf8)
398         (tramp-test33-utf8-with-stat, tramp-test33-utf8-with-perl)
399         (tramp-test33-utf8-with-ls)
400         (tramp-test34-asynchronous-requests)
401         (tramp-test35-recursive-load, tramp-test36-unload): Rename.
403 2016-07-13  Glenn Morris  <rgm@gnu.org>
405         * lisp/emacs-lisp/package.el (describe-package-1)
406         (package-status-external): Fix face references.  (Bug#23927)
408 2016-07-12  Stephen Berman  <stephen.berman@gmx.net>
410         Improve documentation of search functions
412         Make the documentation of the search functions more accurate,
413         complete, and uniform; in particular, extend the description of
414         the effect when the 'count' parameter is a negative number to all
415         of these functions.
417         * src/search.c (Fsearch_backward, Fsearch_forward)
418         (Fre_search_backward, Fre_search_forward)
419         (Fposix_search_backward, Fposix_search_forward):
420         * lisp/isearch.el (word-search-backward, word-search-forward)
421         (word-search-backward-lax, word-search-forward-lax): Improve doc
422         strings as described above.
424         * doc/lispref/searching.texi (String Search, Regexp Search)
425         (POSIX Regexps): Use 'count' instead of 'repeat' as the name of
426         the fourth parameter of the *-search-{forward,backward} functions
427         and improve documentation as described above.
429 2016-07-12  Michael Albinus  <michael.albinus@gmx.de>
431         Delete environment variables in Tramp when needed
433         * lisp/net/tramp-sh.el (tramp-get-env-with-u-option): New defun.
434         (tramp-sh-handle-start-file-process)
435         (tramp-sh-handle-process-file, ): Use it.  (Bug#23952)
437 2016-07-12  Eli Zaretskii  <eliz@gnu.org>
439         Add "New in Emacs 25" section to the FAQ
441         * doc/misc/efaq.texi (Latest version of Emacs): Update for later
442         versions.
443         (New in Emacs 25): New node.
444         (Status of Emacs): Add it to the menu.
446 2016-07-10  Eli Zaretskii  <eliz@gnu.org>
448         Fix 'vertical-motion' in non-interactive sessions
450         * src/indent.c (Fvertical_motion): Don't return uninitialized
451         value in non-interactive session.  This fixes random errors in
452         batch mode, see
453         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00609.html
454         and
455         http://lists.gnu.org/archive/html/emacs-devel/2016-07/msg00500.html
456         for the details.
458 2016-07-10  Andreas Schwab  <schwab@linux-m68k.org>
460         Fix memory leak in imagemagick-types
462         * src/image.c (Fimagemagick_types): Use AcquireExceptionInfo to
463         avoid memory leak.
465 2016-07-10  Eli Zaretskii  <eliz@gnu.org>
467         Update ELisp manual to match 'string-collate-equalp' doc string
469         * doc/lispref/strings.texi (Text Comparison): Remove reference to
470         sorting from the description of 'string-collate-equalp'.  (Bug#23902)
472 2016-07-09  Noam Postavsky  <npostavs@gmail.com>
474         Clarify docstring of find-feature-regexp
476         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Explain that `%s'
477         is optional (Bug #23520).
479 2016-07-09  Noam Postavsky  <npostavs@gmail.com>
481         Add details to cl-lib defining macros' docstrings
483         * lisp/emacs-lisp/cl-macs.el (cl-defun, cl-defmacro): Add terse summary
484         of supported arglist forms (Bug #22462).
486 2016-07-09  Eli Zaretskii  <eliz@gnu.org>
488         Clarify doc string of 'save-buffer'
490         * lisp/files.el (save-buffer): Clarify that backups might not be
491         made even if this command is invoked with 2 or 3 "C-u"s.
492         (Bug#3702)
494 2016-07-08  Eli Zaretskii  <eliz@gnu.org>
496         Un-confuse doc string of 'string-collate-equalp'
498         * src/fns.c (Fstring_collate_equalp): Remove confusing text from
499         doc string.  (Bug#23902)
501 2016-07-07  Eli Zaretskii  <eliz@gnu.org>
503         Clarify documentation of 'mouse-on-link-p'
505         * lisp/mouse.el (mouse-on-link-p): Clarify the form of the POS
506         argument.  (Bug#23899)
508 2016-07-06  Phillip Lord  <phillip.lord@russet.org.uk>
510         Fix missing undo-boundary on revert-buffer.
512         * lisp/simple.el (undo-auto--undoable-change-no-timer): New function.
513         * src/fileio.c (insert-buffer-contents): Call
514           undo-auto--undoably-changed-buffers before changes.
516         Addresses Bug#23785.
518         Do not merge to master as c98bc98 also addresses the same bug.
520 2016-07-06  Martin Rudalics  <rudalics@gmx.at>
522         Amend last addition to etc/PROBLEMS
524         * etc/PROBLEMS: Mention GTK+ problem with unexpected frame widenings
526 2016-07-06  Paul Eggert  <eggert@cs.ucla.edu>
528         Fix open-network-stream responsiveness
530         Problem reported by Christer Ekholm (Bug#23864).
531         Backport from master.
532         * src/process.c (wait_reading_process_output):
533         Fix typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu
534         when wait == INFINITY and got_output_end_time is invalid.
535         In this case the code should break, not continue.
537 2016-07-05  Phillip Lord  <phillip.lord@russet.org.uk>
539         Fix missing point information in undo
541         * src/undo.c (record_insert): Use record_point instead of
542           prepare_record, and do so unconditionally.
543           (prepare_record): Do not record first change.
544           (record_point): Now conditional on state before the last command.
545           (record_delete): Call record_point unconditionally.
546           (record_property_change): Use prepare_record.
547           (record_marker_adjustments): Use prepare_record.
549         Addresses Bug# 21722
551 2016-07-04  Eli Zaretskii  <eliz@gnu.org>
553         Avoid crashes when buffer modification hooks clobber match data
555         * src/search.c (Freplace_match): Error out if buffer modification
556         hooks triggered by buffer changes in replace_range, upcase-region,
557         and upcase-initials-region clobber the match data needed to be
558         adjusted for the replacement.  (Bug#23869)
560 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
562         Note combine-and-quote-strings doesn't shell quote
564         * doc/lispref/processes.texi (Shell Arguments):
565         * lisp/subr.el (combine-and-quote-strings): Add a note that
566         combine-and-quote-strings doesn't protect arguments against shell
567         evaluation (Bug #20333).
569 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
571         Explain when package-initialize isn't called
573         * doc/lispref/os.texi (Startup Summary): Explain that package-initialize
574         is not called when options -q, -Q, or --batch were passed (Bug #19151).
576 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
578         Fix escaping in sh-indent-after-continuation docstr
580         * lisp/progmodes/sh-script.el (sh-indent-after-continuation): Properly
581         escape backslashes in docstring (Bug#23046).
583 2016-07-02  Eli Zaretskii  <eliz@gnu.org>
585         Clarify the documentation of back-references in replacements
587         * doc/emacs/search.texi (Regexp Replace): Clarify that \D starts
588         with \1, not \0.
590         * lisp/replace.el (query-replace-regexp)
591         (query-replace-regexp-eval, replace-regexp): Doc fix (Bug#23884)
593 2016-07-01  Noam Postavsky  <npostavs@gmail.com>
595         Clarify lexical binding with symbol args behavior
597         * doc/lispref/variables.texi (Lexical Binding): Clarify that symbol
598         arguments always refer to dynamic values (Bug #23781).  Remove mention
599         of obsolete restriction regarding lexical binding for defun and
600         defmacro, this no longer applies since 61b108cc 2012-05-29 "*
601         lisp/emacs-lisp/byte-run.el (defmacro, defun): Move from C...".
603 2016-06-30  Michael Albinus  <michael.albinus@gmx.de>
605         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.
607 2016-06-29  Eli Zaretskii  <eliz@gnu.org>
609         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.  (Bug#23865)
611 2016-06-29  Eli Zaretskii  <eliz@gnu.org>
613         Avoid assertion violations when rendering some fonts
615         * src/dispextern.h (FONT_TOO_HIGH): Don't consider a font "too
616         high" if its pixel_size value is zero.  This avoids assertion
617         violations at the end of x_produce_glyphs.
619 2016-06-28  Noam Postavsky  <npostavs@gmail.com>
621         Document more details of package activation
623         * doc/emacs/package.texi (Package Installation): Explain that package
624         activation adds to load-path (Bug #21704).
626 2016-06-28  Noam Postavsky  <npostavs@gmail.com>
628         Fixup warning message regarding HOME a bit more
630         * src/w32.c (init_environment): The manual section title is "Windows
631         HOME" (Bug #11612).  Move newline so warning fits in 80 character lines.
633 2016-06-27  Eli Zaretskii  <eliz@gnu.org>
635         * lisp/leim/quail/indian.el ("bengali-probhat"): Change indicator to BngPB.
637 2016-06-27  Michael Albinus  <michael.albinus@gmx.de>
639         Fix input method "probhat" for Bengali
641         Author: উৎসব রায় <uroybd@gmail.com>
643         * lisp/leim/quail/indian.el ("bengali-probhat"): Fix entry.
645 2016-06-27  Noam Postavsky  <npostavs@gmail.com>
647         Add to elisp-completion-at-point's docstring
649         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Document
650         position dependent behavior (Bug #19854).
652 2016-06-27  Noam Postavsky  <npostavs@gmail.com>
653             Eli Zaretskii  <eliz@gnu.org>
655         Give more helpful warning about setting HOME
657         * src/w32.c (init_environment): Improve warning message that pops when
658         Emacs sets HOME according to existence of C:\.emacs (Bug #11612).
660 2016-06-26  Eli Zaretskii  <eliz@gnu.org>
662         Fix slow redisplay in term-mode
664         * lisp/term.el (term-mode): Move the setting of
665         bidi-paragraph-direction from 'ansi-term' to here, since term-mode
666         is also affected.  Do not merge to master, since there the problem
667         is solved in bidi.c by changing the regexps that delimit a
668         paragraph.  (Bug#23801)
670 2016-06-26  উৎসব রায়  <uroybd@gmail.com>
672         New input method "probhat" for Bengali
674         * lisp/leim/quail/indian.el ("probhat"): New input method.
675         (Bug#23822)
677         * etc/NEWS: Mention the new input method.
679 2016-06-25  Noam Postavsky  <npostavs@gmail.com>
680             Drew Adams  <drew.adams@oracle.com>
682         Update docs for `customize-mode'
684         * lisp/cus-edit.el (customize-mode): This function works with both major
685         and minor modes, make docstring and prompt reflect that (Bug #23649).
687         * doc/lispref/modes.texi (Derived Modes): Remove note about
688         customize-mode being experimental; it has been around since Emacs
689         22 (Bug #11299).
691 2016-06-23  Eli Zaretskii  <eliz@gnu.org>
693         Fix documentation of 'assoc-string' and 'compare-strings'
695         * src/minibuf.c (Fassoc_string): Clarify how CASE-FOLD affects the
696         string comparison.  (Bug#23833)
697         * src/fns.c (Fcompare_strings): Fix the description of how
698         IGNORE-CASE affects the comparison.
700         * doc/lispref/strings.texi (Text Comparison): Clarify how
701         CASE-FOLD affects the string comparison in 'assoc-string'.  Fix
702         the description of how IGNORE-CASE affects the comparison in
703         'compare-strings'.
705 2016-06-22  Dmitry Gutov  <dgutov@yandex.ru>
707         Error on multibyte characters in HTTP request
709         * lisp/url/url-http.el (url-http-create-request): Check the
710         constructed request in the end to verify that it does not contain
711         multibyte characters (bug#23750).
713 2016-06-22  Katsumi Yamaoka  <yamaoka@jpl.org>
715         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
716         Mask keys that launch `widget-button-click' (bug#22157).
718 2016-06-22  Dmitry Gutov  <dgutov@yandex.ru>
720         Unset GIT_DIR when calling Git commands
722         * lisp/vc/vc-git.el (vc-git--call, vc-git-command):
723         Unset GIT_DIR (bug#23769).
725 2016-06-21  Phillip Lord  <phillip.lord@russet.org.uk>
727         Ensure undo-boundary after insert-file-contents.
729         * src/fileio.c: Record undoable change during insert-file-contents.
731         Addresses Bug #23785.
733 2016-06-21  Eli Zaretskii  <eliz@gnu.org>
735         Clarify documentation of 'line-spacing' and 'line-height'
737         * doc/lispref/display.texi (Line Height): Clarify how the line
738         height is determined via variables and text properties.  (Bug#23806)
740 2016-06-20  Eli Zaretskii  <eliz@gnu.org>
742         Fix removal of variables from process-environment
744         * src/callproc.c (add_env): Fix comparison of a variable with a
745         value against the same variable without a value.  (Bug#23779)
747 2016-06-20  Glenn Morris  <rgm@gnu.org>
749         * admin/authors.el (authors-ignored-files, authors-valid-file-names)
750         (authors-renamed-files-alist): Additions.
752         * admin/authors.el (authors-aliases, authors-fixed-case): Additions.
754 2016-06-18  Noam Postavsky  <npostavs@gmail.com>
756         Fix documentation of completion functions
758         So that the described behavior matches the code (and docstrings).
760         * doc/lispref/minibuf.texi (Basic Completion): Symbol keys of hash table
761         collections are used like string keys, not ignored (Bug #10416).
763 2016-06-18  Eli Zaretskii  <eliz@gnu.org>
765         Clarify documentation of 'font-lock-maximum-decoration'
767         * doc/emacs/display.texi (Font Lock): Explain how to make the
768         customization of 'font-lock-maximum-decoration' effective for an
769         existing buffer.  (Bug#23783)
771 2016-06-17  Glenn Morris  <rgm@gnu.org>
773         * doc/misc/cl.texi (Usage): Add some more details.
775 2016-06-17  Noam Postavsky  <npostavs@gmail.com>
777         Fbackward_prefix_chars: stay within buffer bounds
779         The commit 1fd3172d "(Fbackward_prefix_chars): Set point properly while
780         scanning" (1998-03-18), moved the check against of the position against the
781         buffer beginning out the loop condition so that we might end up checking
782         the syntax of characters before the beginning of the buffer.  This can
783         cause segfaults or trigger a "Point before start of properties" error in
784         `update_interval' (called indirectly from `char_quoted').
786         * src/syntax.c (Fbackward_prefix_chars): Stop the loop when beginning of
787         buffer is reached (Bug #3552, Bug #17132, Bug #19379).
789 2016-06-16  Paul Eggert  <eggert@cs.ucla.edu>
791         Fix ifdef-vs-if typo with RANDR13_LIBRARY
793         * src/xfns.c (x_get_monitor_attributes_xrandr): Use #if, not #ifdef.
794         This ports to systems that predate xrandr 1.3. See Christian Lynbech in:
795         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00198.html
797         (cherry picked from commit dce99f222f1ca33265cd56ddb157817be1dc078e)
799 2016-06-16  Stephen Berman  <stephen.berman@gmx.net>
801         Fix last todo-mode change
803         * lisp/calendar/todo-mode.el (todo-read-category): Return the
804         keymap in order to use its defined key bindings.
806 2016-06-15  Stephen Berman  <stephen.berman@gmx.net>
808         Improve last todo-mode fix
810         * lisp/calendar/todo-mode.el (todo-read-category): Use
811         set-keymap-parent instead of copy-keymap, and default (as
812         previously) to the global binding (for rationale, see
813         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00217.html).
815 2016-06-14  Stephen Berman  <stephen.berman@gmx.net>
817         Fix todo-mode use of minibuffer completion keymap (bug#23695).
819         * lisp/calendar/todo-mode.el (todo-read-category): Don't
820         override minibuffer-local-completion-map globally (bug#23695).
821         Bind <SPC> key to self-insert-command.
823 2016-06-14  Glenn Morris  <rgm@gnu.org>
825         * src/alloc.c (ALIGN): Avoid error on DragonFly BSD.  (Bug#23764)
827         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
828         Avoid mangling autoloads with unspecified arguments.  (Bug#21299)
830 2016-06-13  Glenn Morris  <rgm@gnu.org>
832         * lisp/help-fns.el (describe-function-1): Avoid reporting advised
833         autoloads as aliases.  (Bug#21299)
835 2016-06-13  Stephen Berman  <stephen.berman@gmx.net>
837         Minor grammar fix (bug#23746)
839         * doc/lispref/processes.texi (Synchronous Processes):
840         Another minor grammar fix (bug#23746).
842 2016-06-13  Stephen Berman  <stephen.berman@gmx.net>
844         Doc fixes for grammar and typos (bug#23746)
846         * doc/emacs/files.texi (Customize Save):
847         * doc/emacs/frames.texi (Window Dividers):
848         * doc/emacs/misc.texi (Printing):
849         * doc/lispref/compile.texi (Compiler Errors):
850         * doc/lispref/keymaps.texi (Changing Key Bindings):
851         * doc/lispref/loading.texi (Named Features):
852         * doc/lispref/markers.texi (Marker Insertion Types):
853         * doc/lispref/modes.texi (Mode Hooks):
854         * doc/lispref/text.texi (Undo):
855         * src/floatfns.c (Fldexp):
856         * src/xfaces.c (syms_of_xfaces):
857         Minor doc fixes for grammar and typos (bug#23746).
859 2016-06-13  Eli Zaretskii  <eliz@gnu.org>
861         * doc/lispref/processes.texi (Process Buffers): Minor rewording.  (Bug#23446)
863 2016-06-13  Eli Zaretskii  <eliz@gnu.org>
865         Add cross-reference to ELisp manual
867         * doc/lispref/commands.texi (Classifying Events): Add
868         cross-reference to "Motion Events".  (Bug#23756)
870 2016-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
872         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bug#19704)
874         Don't rewrite (funcall 'f ...) to (f ...).
876 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
878         Restore initial undo boundary with viper
880         * lisp/emulation/viper-cmd.el (viper-adjust-undo): Add back last undo
881           boundary if it has been removed.
883         Addresses Bug#22295.
885 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
887         Revert "Fix viper undo breakage from undo-boundary changes"
889         This reverts commit c0139e32f1f3bb287b04e02a69a7848d6a040003.
891 2016-06-11  Ken Brown  <kbrown@cornell.edu>
893         Fix dbus crash on 32-bit Cygwin
895         * src/dbusbind.c (Fdbus__init_bus): Use make_save_pointer to store
896         connection address.  (Bug#23741)
897         (xd_lisp_dbus_to_dbus): Use XSAVE_POINTER to retrieve connection
898         address.
900 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
902         Bump version to 25.0.95
904         * README:
905         * configure.ac:
906         * lisp/ldefs-boot.el:
907         * msdos/sed2v2.inp: Bump Emacs version to 25.0.95.
909 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
911         * etc/AUTHORS: Update the AUTHORS file
913 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
915         add entries to authors.el
917         * admin/authors.el (authors-renamed-files-alist): Add char-fold files.
919 2016-06-10  Jules Tamagnan  <jtamagnan@gmail.com>
921         Fix eldoc-related freezes in python mode
923         * lisp/progmodes/python.el (python-eldoc-get-doc): New defvar.
924         (python-eldoc-function-timeout)
925         (python-eldoc-function-timeout-permanent): New defcustoms.
926         (python-eldoc-function): If python-eldoc--get-doc-at-point times
927         out, effectively turn off ElDoc in current buffer.  (Bug#23609)
929 2016-06-09  Martin Rudalics  <rudalics@gmx.at>
931         Handle mouse leaving initial window in `mouse-set-region' (Bug#23707)
933         * lisp/mouse.el (mouse-set-region): If the mouse ends up in
934         another window or on the menu bar, use `window-point' of
935         selected window instead of `posn-point' of the event end
936         (Bug#23707).
938 2016-06-08  Marco Wahl  <marcowahlsoft@gmail.com>
940         org.el: Fix bindings of < and > for calendar scrolling
942         [This patch taken from upstream Org repo with 8b63dc9 dated
943         2014-10-20 (Bug#23725).]
944         * lisp/org/org.el (org-read-date-minibuffer-local-map):
945         Switch to the current calendar API for scrolling the calendar.
947 2016-06-08  Phillip Lord  <phillip.lord@russet.org.uk>
949         Fix undo boundary in recursive edit (Bug#23632)
951          * src/keyboard.c (recursive_edit_1): specbind
952            undo-auto--undoably-changed-buffers.
953          * lisp/simple.el (undo-auto--undoably-changed-buffers):
954            fix docstring.
956 2016-06-07  Glenn Morris  <rgm@gnu.org>
958         Doc fixes re alist-get.  (Bug#23548)
960         * lisp/subr.el (alist-get): Doc fix.
961         * doc/lispref/lists.texi (Association Lists): Improve alist-get.
963 2016-06-07  Glenn Morris  <rgm@gnu.org>
965         * lisp/progmodes/python.el (inferior-python-mode):
966         Avoid tabs.  (Bug#23616)
968         * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>: Doc fix.
970 2016-06-07  Tino Calancha  <f92capac@gmail.com>
972         * lisp/help-fns.el (describe-function-1):
973         Fix handling of file name for aliases.  (Bug#21950)
975         * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
977         * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
979 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
981         Fix crash in syntax.c after GC
983         Problem reported by Vincent Belaïche (Bug#23704).
984         * src/syntax.c (skip_chars): Recompute pointers into the
985         buffer after every call to update_syntax_table_forward,
986         as it can GC.
988 2016-06-06  Dmitry Gutov  <dgutov@yandex.ru>
990         Improve squiggly heredoc support in non-SMIE Ruby mode
992         * lisp/progmodes/ruby-mode.el (ruby-parse-partial): Support
993         squiggly heredocs here, too (port from upstream).
995 2016-06-06  Stephen Berman  <stephen.berman@gmx.net>
997         Fix doc string quoting
999         * lisp/files.el (shell-quote-wildcard-pattern):
1000         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
1001         * lisp/subr.el (replace-regexp-in-string):
1002         * lisp/view.el (view-mode):
1003         * src/nsfns.m (syms_of_nsfns):
1004         * src/syntax.c (Fbackward_prefix_chars):
1005         Fix quoting problems in doc strings (Bug#23696).
1007 2016-06-05  Martin Rudalics  <rudalics@gmx.at>
1009         Fix mouse dragging of vertical dividers with scroll bars on left (Bug#23690)
1011         * lisp/mouse.el (mouse-drag-line): With scroll bars on the left
1012         adjust trailing edge of window on the left when dragging the
1013         vertical divider of the mode line.  (Bug#23690)
1015 2016-06-04  Eli Zaretskii  <eliz@gnu.org>
1017         * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
1019         (Bug#23641)
1021 2016-05-31  Glenn Morris  <rgm@gnu.org>
1023         * test/automated/viper-tests.el (viper-test-undo-kmacro):
1024         Delete temp-file at end.
1026         * lisp/mail/footnote.el (footnote-mode): Fix doc typo.
1028         * doc/misc/smtpmail.texi (Encryption): Fix 2012-12-22 typo.
1030         * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table):
1031         Fix typo.  (Bug#23654)
1033 2016-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
1035         * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-link (bug#22434)
1037 2016-05-30  Bill Wohler  <wohler@newt.com>
1039         Correct cl-flet usage (Bug#22317)
1041         * lisp/mh-e/mh-compat.el: Rename mh-cl-flet to mh-flet and convert alias to
1042         macro using patch from Katsumi Yamaoka <yamaoka@jpl.org>.
1043         * lisp/mh-e/mh-thread.el (mh-thread-set-tables):
1044         * lisp/mh-e/mh-show.el (mh-gnus-article-highlight-citation):
1045         * lisp/mh-e/mh-mime.el (mh-display-with-external-viewer):
1046         (mh-mime-display, mh-press-button, mh-push-button):
1047         (mh-display-emphasis): Call mh-flet instead of mh-cl-flet.
1049 2016-05-30  Bill Wohler  <wohler@newt.com>
1051         Release MH-E manual version 8.6
1053         * doc/misc/mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH):
1054         Update for release 8.6.
1056 2016-05-30  Mike Kupfer  <m.kupfer@acm.org>
1058         Update MH-E's documentation about HTML renderers
1060         * doc/misc/mh-e.texi (HTML): Remove the footnote with the minimum Gnus
1061         version (we are no longer trying to support multiple Emacs
1062         releases). Sort the table of HTML renderers by name (the previous
1063         ordering was based on a 10-year-old survey). Add shr and gnus-w3m to
1064         the table. Remove the entry for w3 (no longer available).  Update
1065         existing entries so that they are more consistent about what features
1066         are discussed, and to reflect recent testing (Debian 8). Small tweaks
1067         to existing text.
1069 2016-05-30  Dmitry Gutov  <dgutov@yandex.ru>
1071         Fx the we->the typo
1073         * doc/emacs/trouble.texi (Sending Patches):
1074         Fix the typo (bug#23657).
1076 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
1078         Restore frames into the current display by default
1080         * lisp/desktop.el (desktop-restore-in-current-display):
1081         Default to t, not nil (Bug#23604).
1082         * etc/NEWS: Mention the change.
1084 2016-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1086         * lisp/recentf.el (recentf-open-files-item): Quick fix for (bug#22434).
1088         etc/TODO: Remove out-of-place issue
1090 2016-05-29  Eli Zaretskii  <eliz@gnu.org>
1092         Clarify doc string of 'file-name-sans-extension'
1094         * lisp/files.el (file-name-sans-extension, file-name-extension):
1095         Clarify in the doc strings what is the extension, and which
1096         leading period doesn't count.  (Bug#23643)
1098 2016-05-28  Eli Zaretskii  <eliz@gnu.org>
1100         Fix the MSDOS build
1102         * msdos/sed1v2.inp (PAXCTL_dumped, PAXCTL_notdumped): Define to
1103         empty, and remove the lines which use them in recipes, as that
1104         causes weird error message from Make and breaks the MSDOS build.
1106 2016-05-28  Andreas Schwab  <schwab@linux-m68k.org>
1108         * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Call
1109         substitute-command-keys to undo help--docstring-quote. (Bug#23634)
1111 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
1113         * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23631)
1115 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
1117         Fix infloop in 'number-sequence'
1119         * lisp/subr.el (number-sequence): Avoid overflow leading to an
1120         infloop.  (Bug#23627)
1122         * test/automated/subr-tests.el (number-sequence-test): New test.
1124 2016-05-26  Glenn Morris  <rgm@gnu.org>
1126         * lisp/emacs-lisp/find-func.el (find-function-library):
1128         Update for symbol-function no longer erroring.  (Bug#23626)
1130 2016-05-26  Glenn Morris  <rgm@gnu.org>
1132         * lisp/w32-fns.el (set-message-beep, w32-get-locale-info)
1133         (w32-get-valid-locale-ids): Improve declarations.
1135 2016-05-26  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1137         Correct old cell name unbinding when renaming cell.
1139         Bug is to unbind old cell names when renaming a cell with
1140         'makunbound'. when the old cell name is of A1 type, then
1141         'kill-local-variable' must be used instead, so that only the current
1142         spreadsheet is affected. When the old cell name is a renamed cell,
1143         then 'ses--unbind-cell-name' must be used in order to remove the old
1144         name from the name hashmap.
1146         * lisp/ses.el (ses-rename-cell): check consistency of cell symbol from
1147         text-property and from array object. Instead of 'makunbound', use
1148         either 'ses--unbind-cell-name' or 'kill-local-variable' depending on
1149         whether the cell old name is a named cell or an A1 type cell
1151 2016-05-25  Vincent Belaïche  <vincentb1@users.sourceforge.net>
1153         Document problem: slow screen refresh on missing font.
1155         See discussion of bug#22519 for more on this.
1157 2016-05-25  Glenn Morris  <rgm@gnu.org>
1159         * admin/admin.el (add-release-logs): Basic check of existing ChangeLog.
1161 2016-05-25  Glenn Morris  <rgm@gnu.org>
1163         * build-aux/gitlog-to-emacslog: Handle empty generated ChangeLog.
1165         This is relevant for M-x add-release-logs right after M-x authors.
1167 2016-05-25  Glenn Morris  <rgm@gnu.org>
1169         * admin/admin.el (add-release-logs): Generate ChangeLog if needed.
1171 2016-05-25  Paul Eggert  <eggert@cs.ucla.edu>
1173         * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
1175 2016-05-25  Glenn Morris  <rgm@gnu.org>
1177         * admin/authors.el (authors): First update the ChangeLog.
1179         * admin/make-tarball.txt: Related updates.
1181 2016-05-24  Dmitry Gutov  <dgutov@yandex.ru>
1183         Rename vc-stay-local back to vc-cvs-stay-local
1185         * lisp/vc/vc-cvs.el (vc-cvs-stay-local): Rename back from
1186         vc-stay-local (bug#19548).  Improve the docstring.
1187         (vc-cvs-stay-local-p): Update accordingly.
1189 2016-05-24  Glenn Morris  <rgm@gnu.org>
1191         * doc/emacs/files.texi (Comparing Files):
1192         * doc/emacs/trouble.texi (Sending Patches): Fix external xrefs.
1194         * doc/misc/eww.texi (Advanced): Fix xref.
1196 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
1198         Fix cross-references between manuals
1200         * doc/misc/viper.texi (Viper Specials):
1201         * doc/misc/url.texi (Tramp):
1202         * doc/misc/sem-user.texi (Smart Jump):
1203         * doc/lispintro/emacs-lisp-intro.texi (Finding More):
1204         * doc/misc/efaq.texi (Replacing text across multiple files): Fix
1205         cross-references between manuals.  (Bug#23612)
1206         * doc/lispintro/emacs-lisp-intro.texi (etags): Node deleted: no
1207         longer relevant to Emacs Lisp programming.
1209 2016-05-24  Glenn Morris  <rgm@gnu.org>
1211         * doc/misc/vhdl-mode.texi (Sample Init File): Rename node to avoid ".".
1213         * admin/admin.el (add-release-logs): Also update etc/HISTORY.
1215 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
1217         Avoid aborting due to errors in arguments of 'set-face-attribute'
1219         * src/xfaces.c (Finternal_set_lisp_face_attribute): Check the
1220         FRAME argument before using it.  This avoids gratuitous aborts in
1221         Emacs built with --enable-checking when the luser was unlucky
1222         enough to get the argument list in wrong order.
1224 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
1226         Add automated test for viper-tests.el
1228 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
1230         Fix viper undo breakage from undo-boundary changes
1232         * lisp/simple.el (undo-auto-disable-boundaries): New variable
1233         * lisp/emulation/viper-init.el (viper-undo-in-complex-command,
1234           viper-undo-needs-adjustment): Rename
1235           variable to reflect new purpose,
1236           (viper-buffer-undo-list-mark): Remove
1237         * lisp/emulation/viper-cmd.el (viper-set-complex-command-for-undo):
1238           Add undo using `undo-boundary', disable default undo-boundary
1239           addition.
1240         * lisp/emulation/viper-cmd.el
1241           (viper-complete-complex-command-for-undo,viper-adjust-undo):
1242           Change function name, remove old undo list manipulation.
1243         * lisp/emulation/viper-cmd.el (viper-undo,viper-repeat,
1244           viper-change-state-to-vi,viper-change-state):
1245           Update for function name change.
1247         Addresses Bug #22295
1249 2016-05-22  Kaushal Modi  <kaushal.modi@gmail.com>
1251         Fix reference to obsolete fn ps-eval-switch
1253         lpr-eval-switch is functionally the same as ps-eval-switch,
1254         which was obsoleted in 2cdeb903c57126d3ad5f0cbd72e182584b76ee29.
1255         So use that instead (Bug#19717).
1256         * lisp/printing.el (pr-switches): Use lpr-eval-switch instead of
1257         ps-eval-switch.
1259 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
1261         Do not trash symlinks to init file
1263         If the user’s init file is a symbolic link, do not break the link
1264         when initializing the package system.  Problem reported by Jackson
1265         Hamilton (Bug#23050).
1266         * lisp/emacs-lisp/package.el (package--ensure-init-file):
1267         Bind find-file-visit-truename when visiting the init file, and
1268         save and restore the buffer name the way cus-edit does in a
1269         similar situation (Bug#454).
1271 2016-05-22  Alan Mackenzie  <acm@muc.de>
1273         Don't print the "decomposition" line for control chars in what-cursor-position
1275         This is a temporary workaround for bug #23594, where the decomposition line
1276         for linefeed corrupted the display on a Linux virtual terminal.
1278         * lisp/descr-text.el (describe-char): Remove `decomposition' from the list of
1279         character code properties printed for control characters.
1281 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
1283         Bring back xterm pasting with middle mouse
1285         Problem reported by Jan Synáček.
1286         Solution suggested by Stefan Monnier (Bug#23519).
1287         * lisp/isearch.el (isearch-mode-map): Add a binding for xterm-paste.
1288         (xterm--pasted-text): New decl.
1289         (isearch-xterm-paste): New function.
1290         * lisp/term/xterm.el (xterm--pasted-text): New function,
1291         taken from xterm-paste internals.
1292         (xterm-paste): Use it.
1294 2016-05-22  Eli Zaretskii  <eliz@gnu.org>
1296         Provide workaround for xftfont rendering problem
1298         * src/xftfont.c (syms_of_xftfont) <xft-font-ascent-descent-override>:
1299         New variable.
1300         (xftfont_open): Use it to work around problems with rendering some
1301         fonts.  (Bug#23360)
1303 2016-05-21  Jun Hao  <jun_hao@aol.com>
1305         * lisp/desktop.el: Disable restore frameset if in non-graphic display.
1307         (Bug#17693)
1309 2016-05-21  Eli Zaretskii  <eliz@gnu.org>
1311         Mention GTK+ problems in etc/PROBLEMS
1313         * etc/PROBLEMS (GDK_SCALE, GDK_DPI_SCALE): Mention the possible
1314         problems this could create and the workaround.  (Bug#23587)
1316 2016-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
1318         * lisp/emacs-lisp/package.el (package-refresh-contents):
1320         Don't change the value of `package-check-signature'.
1321         (package-check-signature): Use `epg-find-configuration'
1322         instead of `executable-find'.
1324 2016-05-20  Daiki Ueno  <ueno@gnu.org>
1326         Revert "epg: Add a way to detect gpg1 executable for tests"
1328         This reverts commit d4ae6d7033b34e8b75c59aaf1584131e439ef2d5.
1330 2016-05-19  Eli Zaretskii  <eliz@gnu.org>
1332         Avoid errors with Czech and Slovak input methods
1334         * lisp/leim/quail/slovak.el (slovak, slovak-prog-1, slovak-prog-2)
1335         (slovak-prog-3): Remove the kp-* key bindings, they are not needed
1336         and cause errors in "C-u C-x =".
1337         * lisp/leim/quail/czech.el (czech, czech-qwerty, czech-prog-1)
1338         (czech-prog-2, czech-prog-3): Remove the kp-* key bindings.
1339         (Bug#23559)
1341 2016-05-19  Daiki Ueno  <ueno@gnu.org>
1343         epg: Add a way to detect gpg1 executable for tests
1345         Fixes bug#23561.
1347         * test/automated/epg-tests.el
1348         (epg-tests-program-alist-for-passphrase-callback): New
1349         constant.
1350         (epg-tests-find-usable-gpg-configuration): New function,
1351         renamed from `epg-tests-gpg-usable'.  All callers changed.
1352         (epg-tests-gpg-usable): Remove.
1354         * lisp/epg-config.el (epg-config--program-alist): Factor out
1355         constructor element to...
1356         (epg-config--configuration-constructor-alist): ...here.
1357         (epg-find-configuration): Rename FORCE argument to NO-CACHE,
1358         and add PROGRAM-ALIST argument.
1360 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
1362         * lisp/emacs-lisp/package.el: Fix free variable warnings.
1364         (package--with-response-buffer): Replace two usages of
1365         `macroexp-let2*' with `let'.
1367 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
1369         * lisp/emacs-lisp/package.el (package--with-response-buffer):
1371         Fix some macro locals leaking into body.  (Bug#22440)
1373         * test/automated/package-test.el (package-test-signed):
1374         Manually check all possible values of `package-check-signature'.
1376 2016-05-18  Eli Zaretskii  <eliz@gnu.org>
1378         Improve documentation of 'server-name'
1380         * doc/emacs/misc.texi (Emacs Server): Fix example of setting
1381         'server-name'.  Mention how to do that with daemon sessions.
1382         (Bug#23576)
1384 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
1386         Modernize ASLR advice in etc/PROBLEMS
1388         * etc/PROBLEMS (Segfault during 'make'): Modernize advice for
1389         seccomp, Docker, and NetBSD (Bug#23529).
1391 2016-05-17  Juri Linkov  <juri@linkov.net>
1393         * lisp/char-fold.el: Rename from character-fold.el.
1395         * lisp/replace.el (replace-char-fold): Rename from replace-character-fold.
1396         * test/automated/char-fold-tests.el: Rename from character-fold-tests.el.
1397         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00529.html
1399 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
1401         Bump version to 25.0.94
1403         * README:
1404         * configure.ac:
1405         * msdos/sed2v2.inp: Bump Emacs version to 25.0.94.
1407 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
1409         etc/AUTHORS: Update the AUTHORS file
1411 2016-05-16  Alan Third  <alan@idiocy.org>
1413         Fix bug#23462: Crash when iconifying frame on OS X.
1415         * src/nsterm.m (x_iconify_frame): Block input while miniaturize is
1416         running.
1418 2016-05-16  Paul Eggert  <eggert@cs.ucla.edu>
1420         Avoid shrinking windows with Gtk+ 3.20.3
1422         Problem reported by Matthias Clasen (Bug#23144).
1423         This was fixed in a different way in master.
1424         Do not merge to master.
1425         * src/xterm.c (handle_one_xevent) [GTK_CHECK_VERSION (3, 20, 3)]:
1426         Do not call xg_frame_resized in the MapNotify case.
1428 2016-05-16  Eli Zaretskii  <eliz@gnu.org>
1430         Fix bug in default setting of 'ps-paper-type'
1432         * lisp/international/mule-cmds.el (set-locale-environment): Don't
1433         inherit the value of locale from previous examination of different
1434         environment variables, which didn't look at LC_PAPER, and so using
1435         that value would effectively ignore the setting of LC_PAPER.
1436         (Bug#23544)
1438 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
1440         Properly reject malformed or empty package sigs
1442         Problem report and fix by Lizzie Dixon (Bug#23513).
1443         * lisp/emacs-lisp/package.el (package--check-signature-content):
1444         Report an error if no good signatures OR if a fatal error.  Not AND.
1446 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
1448         Remove buggy non-native image scrolling
1450         This never worked, and could cause infinite recursion.
1451         Problem reported by Glenn Morris (Bug#22465).
1452         * lisp/xwidget.el (xwidget-webkit-scroll-behavior): Remove.
1453         All uses removed.
1455 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
1457         * doc/misc/texinfo.tex: Sync from gnulib.
1459 2016-05-12  Glenn Morris  <rgm@gnu.org>
1461         * lisp/emacs-lisp/find-func.el (find-feature-regexp)
1462         (find-alias-regexp): Fix :version.
1464 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
1466         Do not mistake colon at the end of regexp for slash symbol
1468         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
1469         Check the parse state in the "Symbols with special characters"
1470         rule (bug#23515).
1472 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
1474         Make package-install-from-buffer not move point
1476         * lisp/emacs-lisp/package.el (package-install-from-buffer):
1477         Use save-excursion here (bug#22616).
1479 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
1481         Redo the fix for bug#21839
1483         * lisp/help.el (help-add-fundoc-usage): Undo the previous change.
1484         (help--make-usage-docstring): Escape newlines when printing.
1486         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
1487         Ditto (bug#21839).
1489 2016-05-10  Dmitry Gutov  <dgutov@yandex.ru>
1491         Don't treat JS spread as contination method call
1493         * lisp/progmodes/js.el (js--indent-operator-re):
1494         Allow only one dot (bug#23492).
1496         * test/indent/js.js (default): Add a corresponding example.
1498 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
1500         Allow newlines inside cl function arglists
1502         * lisp/help.el (help-add-fundoc-usage): Allow newlines inside
1503         ARGLIST (bug#21839).
1505 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
1507         Publicize cl--generic-all-functions
1509         * lisp/emacs-lisp/cl-generic.el (cl-generic-all-functions):
1510         Rename from cl--generic-all-functions.  Update both callers.
1512         * lisp/cedet/semantic/db-el.el
1513         (semanticdb-find-tags-external-children-of-type-method):
1514         And use it here (bug#23042).
1516 2016-05-09  Alan Mackenzie  <acm@muc.de>
1518         Add some "safe-local-variable" declarations for compatibility with master.
1520         These enable C files from the master repository to be visited in Emacs 25
1521         without generating irritating questions about configuration variable safety.
1523         * lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
1524         functions.
1525         (c-noise-macro-names, c-noise-macro-with-parens-names): give the
1526         safe-local-variable property c-string-list-p.
1527         (c-macro-names-with-semicolon): give the safe-local-variable property
1528         c-string-or-string-list-p.
1530 2016-05-09  Lars Ingebrigtsen  <larsi@gnus.org>
1532         Fix doc string in `insert'
1534         * src/editfns.c (Finsert_and_inherit): The before-insertion
1535         markers do not move.
1536         (Finsert): Ditto.
1538 2016-05-08  Paul Eggert  <eggert@cs.ucla.edu>
1540         * doc/misc/emacs-mime.texi (time-date): Document now-builtins better.
1542 2016-05-07  Dmitry Gutov  <dgutov@yandex.ru>
1544         Say 'All results processed' at the end
1546         * lisp/progmodes/xref.el (xref--query-replace-1):
1547         Say 'All results processed' at the end if the user hadn't
1548         cancelled the process (bug#23284).
1550 2016-05-07  Eli Zaretskii  <eliz@gnu.org>
1552         Document automatic adjustment of process' logical window dimensions
1554         * doc/lispref/processes.texi (Process Buffers): Document
1555         'set-process-window-size' and
1556         'window-adjust-process-window-size-function'.
1558         * etc/NEWS: Mention the new functionality and variable.
1560         * src/process.c (Fset_process_window_size): Improve the doc string.
1562 2016-05-06  Michael Albinus  <michael.albinus@gmx.de>
1564         tramp-sh.el: Work around a stat bug (backport from master)
1566         * lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
1567         stat versions which produce shell quoted output.  See also
1568         coreutils Bug#23422.
1570         (cherry picked from commit 6aad36ace9953b9672b13be68416d205532d5e59)
1572 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
1574         Doc fixes for fclist and grep
1576         A newline is needed between two fc-list calls.
1577         egrep and fgrep have been withdrawn from POSIX,
1578         so document grep -E and grep -F instead.
1580 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
1582         Minor doc fixes for quoting
1584         * doc/lispref/control.texi (Signaling Errors):
1585         * doc/lispref/display.texi (Displaying Messages):
1586         Don’t say that formats “generate”.  Try to word more clearly.
1587         * etc/NEWS: Coalesce near-duplicate entries.
1589 2016-05-05  Dmitry Gutov  <dgutov@yandex.ru>
1591         `nreverse' the marker pairs list
1593         * lisp/progmodes/xref.el (xref--buf-pairs-iterator): `nreverse'
1594         the marker pairs list for each buffer before returning.
1596 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
1598         Use save-excursion in xref-location-marker more
1600         * lisp/progmodes/elisp-mode.el (xref-location-marker): Use
1601         save-excursion, in order not to alter the value of point if the
1602         buffer is currently open in the background (problem reported by
1603         Robert Weiner).
1605         * lisp/progmodes/etags.el (xref-location-marker): Same.
1607 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
1609         shell-quote-argument DIR when appropriate
1611         * lisp/progmodes/project.el (project-file-completion-table):
1612         `shell-quote-argument' DIR as well.
1614         * lisp/progmodes/xref.el (xref--rgrep-command): Pass DIR through
1615         `shell-quote-argument' (bug#23453).  Thanks for Kaushal Modi for
1616         pointing out the problem.  Assert that DIR doesn't start with `~'.
1618 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
1620         Rework xref-query-replace-in-results
1622         * lisp/progmodes/xref.el (xref-query-replace-in-results): Collect
1623         all xrefs from the buffer first, then delegate most of the
1624         processing to the value returned by xref--buf-pairs-iterator.
1625         (xref--buf-pairs-iterator): New function.  Return an "iterator"
1626         which partitions returned markers into buffers, and only processes
1627         markers from one buffer at a time.  When an xref is out of date,
1628         skip it with a message instead of signaling error (bug#23284).
1629         (xref--outdated-p): Extract from xref--buf-pairs-iterator.  Trim
1630         CR from both strings before comparing.
1631         (xref--query-replace-1): Remove the variable current-buf, no need
1632         to track it anymore.  Simplify the filter-predicate and search
1633         functions accordingly.  Iterate over buffer-markers pairs returned
1634         by the iterator, and call `perform-replace' for each of them.  Use
1635         multi-query-replace-map (bug#23284).  Use `switch-to-buffer' every
1636         time after the first, in order not to jump between windows.
1638         * test/automated/xref-tests.el
1639         (xref--buf-pairs-iterator-groups-markers-by-buffers-1)
1640         (xref--buf-pairs-iterator-groups-markers-by-buffers-2)
1641         (xref--buf-pairs-iterator-cleans-up-markers): New tests.
1643 2016-05-04  Juri Linkov  <juri@linkov.net>
1645         * lisp/replace.el (query-replace-read-from): Use minibuffer-with-setup-hook
1647         to set minibuffer-local value of text-property-default-nonsticky.
1648         (Bug#23418, bug#23127)
1650 2016-05-04  Stephen Berman  <stephen.berman@gmx.net>
1652         Fix todo-mode bug involving archived items (bug#23447)
1654         * lisp/calendar/todo-mode.el (todo-jump-to-category): When jumping
1655         from Todo Categories mode to a category with only archived items
1656         and todo-skip-archived-categories is non-nil, make sure the
1657         archive file buffer is in Todo Archive mode to prevent
1658         todo-category-select from raising an error, and don't set
1659         todo-current-todo-file, since that makes todo-show display the
1660         archived category.  Remove a no-op call to kill-buffer, which is
1661         already called in todo-insert-category-line.
1663 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
1665         Handle "empty line" regexp in xref searches
1667         * lisp/progmodes/xref.el (xref--collect-matches-1): Stop after one
1668         match if re-search-forward doesn't move point (bug#23426).
1670         * test/automated/xref-tests.el
1671         (xref-collect-matches-finds-an-empty-line-regexp-match):
1672         Uncomment test.
1674 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
1676         Add tests for xref-collect-matches
1678         * test/automated/xref-tests.el: New file.  Add tests for
1679         xref-collect-matches.
1681 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
1683         Use grep-find-ignored-directories instead of vc-directory-exclusion-list
1685         * lisp/dired-aux.el (dired-do-find-regexp):
1686         Use grep-find-ignored-directories instead of
1687         vc-directory-exclusion-list.  The result should be functionally
1688         similar (the former uses the latter as the default value), but it
1689         should be more consistent and appropriate WRT user
1690         customizations.
1691         (dired-do-find-regexp-and-replace): Update the docstring.
1693         * lisp/dired.el: Update the corresponding autoloads.
1695         * doc/emacs/dired.texi (Operating on Files): Update the
1696         documentation accordingly.
1698 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
1700         Clear buffer-undo-list when showing xrefs
1702         * lisp/progmodes/xref.el (xref--show-xref-buffer): Clear
1703         buffer-undo-list and temporarily bind it to t while rendering the
1704         buffer contents.
1706 2016-05-03  Alan Mackenzie  <acm@muc.de>
1708         Note the quote translation in `message' in section "incompatible changes".
1710         * etc/NEWS: Note that `message' translates quotes, that the translation
1711         cannot be disabled, and that `format' can be used to get the old
1712         behavior back.
1714 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
1716         * etc/NEWS: Mention (message "%s" (format ...)).
1718 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
1720         (Common Keywords): Correct what missing :group means
1722         * doc/lispref/customize.texi (Common Keywords): Correct what
1723         missing :group means.
1725 2016-05-03  Eli Zaretskii  <eliz@gnu.org>
1727         Improve documentation of Dired's 'A' and 'Q' commands
1729         * lisp/dired-aux.el (dired-do-find-regexp)
1730         (dired-do-find-regexp-and-replace): Mention
1731         'grep-find-ignored-files' and 'vc-directory-exclusion-list', and
1732         also the fact that REGEXP should be palatable by Grep.  (Bug#23426)
1733         * lisp/dired.el: Update the corresponding autoload forms.
1735         * doc/emacs/dired.texi (Operating on Files): Mention
1736         'grep-find-ignored-files' and 'vc-directory-exclusion-list'.
1737         (Bug#23429)
1739 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
1741         Doc fixes for quoting
1743         * doc/emacs/text.texi, doc/lispintro/emacs-lisp-intro.texi:
1744         * doc/lispref/control.texi, doc/lispref/display.texi:
1745         * doc/lispref/help.texi, doc/lispref/strings.texi, lisp/subr.el:
1746         * src/callint.c, src/doprnt.c, src/editfns.c:
1747         Document quoting a bit more systematically.
1748         Problem reported by Alan Mackenzie (Bug#23425).
1750 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
1752         posnp doc clarification
1754         * lisp/subr.el (posnp): Mention that a posn object is returned
1755         from `event-start' (bug#18211).
1757 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
1759         Mention what a missing :group does
1761         * doc/lispref/customize.texi (Common Keywords): Document that
1762         a missing :group reuses the group from the preceding item (bug#21601).
1764 2016-05-02  Eli Zaretskii  <eliz@gnu.org>
1766         Fix documentation of dired-aux search/replace commands
1768         * lisp/dired-aux.el (dired-do-find-regexp)
1769         (dired-do-find-regexp-and-replace): Doc fixes.  (Bug#23429)
1770         * lisp/dired.el: Update the corresponding autoload forms.
1772 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
1774         Fix quoting problem in cc-engine debug message
1776         * lisp/progmodes/cc-engine.el (c-replay-parse-state-state):
1777         Use "%s" format to pass through ‘'’ unscathed (Bug#23425), and
1778         likewise for ‘`’, and ‘%’.
1780 2016-05-02  Philipp Stephani  <phst@google.com>
1782         Add electric-quote-string unit test
1784         * test/automated/electric-tests.el (electric-quote-string): New test.
1786 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
1788         Don’t electrically quote ‘'’ in Python
1790         Problem reported by Philipp Stephani (Bug#23387).
1791         * lisp/electric.el (electric-quote-post-self-insert-function):
1792         Do not requote a string starter or ender.
1794 2016-05-02  Dmitry Gutov  <dgutov@yandex.ru>
1796         `nreverse' Grep hits before passing them to xref--convert-hits
1798         * lisp/progmodes/xref.el (xref-collect-matches): `nreverse' hits
1799         before passing them to xref--convert-hits.  Fixes a regression
1800         from cc0b7132.
1802 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
1804         * doc/misc/texinfo.tex: Sync from gnulib.
1806 2016-05-01  Juri Linkov  <juri@linkov.net>
1808         * lisp/isearch.el (isearch-forward-symbol-at-point): Add isearch-push-state.
1810         (Bug#23410)
1812 2016-05-01  Michael Albinus  <michael.albinus@gmx.de>
1814         tramp.texi: Revert last change due to backward compatibility
1816         (cherry picked from commit 910f9a0a936aacbffe9b9b790d7f698dfd287aac)
1818 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1820         cua-prefix-override-inhibit-delay doc fix
1822         * lisp/emulation/cua-base.el
1823         (cua-prefix-override-inhibit-delay): Typo fix in doc string
1824         (bug#23401).
1826         (cherry picked from commit 2b4c099822811ede787fc6e575bfbb17b3cc0681)
1828 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1830         global-eldoc-mode doc fix
1832         * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Be more
1833         specific about what "applicable" means (bug#23071).
1835         (cherry picked from commit 25e95b5dd8cd92e03788e589bf99a4b399f03114)
1837 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1839         normal-top-level-add-subdirs-to-load-path doc fix
1841         * lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
1842         Doc fix (bug#21962).
1844         (cherry picked from commit 28aaa6d20586e3330a23b017a65e56dd6461c003)
1846 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1848         isearch-search-fun-function doc tweak
1850         * lisp/isearch.el (isearch-search-fun-function): Mention what
1851         the STRING parameter is (bug#21552).
1853         (cherry picked from commit cafc2a5940cdc523cfea6dcf1cf540f48367c62a)
1855 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1857         Fill some imenu--index-alist doc lines
1859         * lisp/imenu.el (imenu--index-alist): Fill some doc lines (bug#21269).
1861         (cherry picked from commit 4b7bb8f596550628eaa83b82c0f7eabe59a84964)
1863 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1865         Fmarker_position doc string clarification
1867         * src/marker.c (Fmarker_position): Clarify the doc string
1868         (bug#21231).
1870         (cherry picked from commit eeac7c57273cec3f9408b18392dd2bafe3be4450)
1872 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1874         Further define-obsolete-* doc fixups
1876         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
1877         Fix up last change.
1878         (define-obsolete-variable-alias): Ditto.
1880         (cherry picked from commit 28e9f4390d8391c2c36be4ef515cf3a2c679a5a5)
1882 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1884         Describe WHEN in all the define-obsolete- macros
1886         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
1887         Say more verbosely what WHEN is (bug#21225).
1888         (define-obsolete-function-alias): Describe the WHEN parameter.
1889         (define-obsolete-variable-alias): Ditto.
1891         (cherry picked from commit 247c388f160581d207e41ca5926990bbf69d4a0f)
1893 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1895         Mention with-silent-modifications in the lispref manual
1897         * doc/lispref/text.texi (Changing Properties): Document
1898         with-silent-modifications (bug#21171).
1900         (cherry picked from commit fcd0d854eef6e439d51e8f07cf734d5e34e502b3)
1902 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1904         with-silent-modifications doc clarification
1906         * lisp/subr.el (with-silent-modifications): Rearrange the doc
1907         string a bit so that the most pertinent information is at the
1908         top (bug#21171).
1910         (cherry picked from commit e0e70f030e69d9696a963a86f5f7caaff4df06eb)
1912 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1914         clear-visited-file-modtime doc string fix
1916         * lisp/files.el (clear-visited-file-modtime): Fix possibly
1917         confusing doc string wording (bug#21169).
1919         (cherry picked from commit 1aaeaf1450756a71c9254a2a5b174c72084ca67a)
1921 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1923         Document mode mode line variables
1925         * doc/lispref/modes.texi (Mode Line Variables): Document
1926         `mode-line-front-space, `mode-line-misc-info',
1927         `mode-line-end-spaces' (bug#21014).
1929         (cherry picked from commit bf7a630b0a5d3900f2afb0e7a881ce62e2b9f935)
1931 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1933         Add a cross ref to Optional Mode Line
1935         * doc/lispref/modes.texi (Mode Line Variables): Add a cross
1936         reference to the Emacs mode line node that explains things
1937         like `display-time-string' (bug#21002).
1939         (cherry picked from commit a3151a28789f413af73b14fbba557b2a587fca53)
1941 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1943         Add a doc string to display-time-string
1945         * lisp/time.el: Add a doc string to `display-time-string',
1946         because it's referred to in the manual, and is too mysterious
1947         otherwise (bug#21002).
1949         (cherry picked from commit 45559c584e5a4ddeed1539b028b50b95baa372f8)
1951 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1953         custom-buffer-style doc fix
1955         * lisp/cus-edit.el (custom-buffer-style): Document the `tree'
1956         value (bug#20724).
1958         (cherry picked from commit bcf0291d0cd02095b0809b1eb91f1e5c5c2ac5e3)
1960 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1962         Rearrange the doc of query-replace slightly
1964         * lisp/replace.el (query-replace): Move the mention of the
1965         interactive prefix arg earlier so that users can find it
1966         (bug#20654).
1968         (cherry picked from commit bcc10761c3b968fa4534718116a0a601ed7da389)
1970 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1972         apropos-print doc fix
1974         * lisp/apropos.el (apropos-print): Document the undocumented
1975         parameters (bug#20520).
1977         (cherry picked from commit 0714d7387812a151f59993ac77c7321724ef79b1)
1979 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1981         completion-table-with-predicate doc string fix
1983         * lisp/minibuffer.el (completion-table-with-predicate): t ->
1984         non-nil in the doc string (bug#20460).
1986         (cherry picked from commit b6a4d162208f239bc7804696d611ae52c686f138)
1988 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1990         Fill the completion-table-with-predicate doc string
1992         * lisp/minibuffer.el (completion-table-with-predicate): Fill
1993         the doc string (bug#20460).
1995         (cherry picked from commit 207a31432c1ed8b548003a3e4af32c49aa3441e9)
1997 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1999         replace-match-maybe-edit doc clarification
2001         * lisp/replace.el (replace-match-maybe-edit): Say what
2002         MATCH-DATA is (bug#20304).
2004         (cherry picked from commit 139874ba53c2e2de9868f8e5234d6ea2bcb97af8)
2006 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2008         add-timeout doc fix
2010         * lisp/emacs-lisp/timer.el (add-timeout): Mention the return
2011         value (bug#20181).
2013         (cherry picked from commit 921b40476f597c84d7c34aa289cd43caeb389c4a)
2015 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2017         Extremely minor doc fix in Choosing Window
2019         * doc/lispref/windows.texi (Choosing Window): There's only one
2020         action alist, I think (bug#20158).
2022         (cherry picked from commit 6c7e7f421d02d9290d6d1d85320737371160aef7)
2024 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2026         Transform mentions of `eval-after-load' to `with-eval-after-load'
2028         * doc/lispref/loading.texi (Hooks for Loading): Update text to
2029         not mention `eval-after-load' (bug#20038).
2031         (cherry picked from commit 9392193be56eebdfac702a0bbb5e954088371c7a)
2033 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2035         cursor-type doc fix
2037         * src/buffer.c (syms_of_buffer): Mention that cursor-type's
2038         WIDHT/HEIGHT can't exceed the frame char size (bug#19215).
2040         (cherry picked from commit 77c5f4554ebb3b7c7d49bc881e45a550f6c93987)
2042 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2044         Add a link from Tool Bar to Images
2046         * doc/lispref/keymaps.texi (Tool Bar): Add a link to the
2047         Images node (bug#19722).
2049         (cherry picked from commit da5d0786163a91400eced4fddba4a92b652458d1)
2051 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2053         (default-mode-line-format): More explicit obsolete info
2055         * lisp/subr.el (default-mode-line-format): Be more explicit in
2056         how default values are now handled (bug#19424).
2058         (cherry picked from commit 9dc5f6d830e72420dc4d41c8f6ca1ca6b28609c0)
2060 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2062         Fcompare_buffer_substrings doc string clarification
2064         * src/editfns.c (Fcompare_buffer_substrings): Extremely minor
2065         doc string clarification (bug#19255).
2067         (cherry picked from commit aa692acbb598a1cc8219ed7a87dde25fd7626ba5)
2069 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2071         insert-file-contents-literally doc fix
2073         * lisp/files.el (insert-file-contents-literally): Say that the
2074         parameters are explained in the other function (bug#18317).
2076         (cherry picked from commit b6481b19bc9592492b1f70dfecb4de6256f537fe)
2078 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2080         Fix custom types for cursor-in-non-selected-windows
2082         * lisp/cus-start.el (standard): Use the same custom types for
2083         cursor-in-non-selected-windows as for cursor-type (bug#19214).
2085         (cherry picked from commit b66bc0cced786e0320e1c3b0758bd3c434d4e8b5)
2087 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2089         Doc clarification to mwheel-scroll
2091         * lisp/mwheel.el (mwheel-scroll): Mention that the restriction
2092         does not apply to Windows (bug#19209).
2094         (cherry picked from commit 696052b5fdfbc5c25dff3c6b081aebe70f6d06c7)
2096 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2098         Clarify the doc of eval-expression-print-format
2100         * lisp/simple.el (eval-expression-print-format): Doc
2101         clarification (bug#19114).
2103         (cherry picked from commit cd193a871f5a8e1c81ba86fc398ac382fa814383)
2105 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2107         Explictly explain that package-initialize loads the packages
2109         * lisp/emacs-lisp/package.el (package-initialize): Be explicit
2110         in saying that `package-initialize' obviates adjusting the
2111         path or requiring the packages, as this is a question that
2112         apparently comes up now and then (bug#18829).
2114         (cherry picked from commit 619e0aedb2f3dbfe6821ac34e2d25b4e5c181117)
2116 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2118         Have the doc strings of `load-path' and `require' mention each other
2120         * src/fns.c (Frequire): Mention `load-path' and fill the doc
2121         string (bug#18829).
2123         * src/lread.c (syms_of_lread): Mention that `require' uses
2124         `load-path'.
2126         (cherry picked from commit 3eca9a03816f95da0030665223c0b5262f223ba7)
2128 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2130         Doc fix for insert-pair-alist
2132         * lisp/emacs-lisp/lisp.el (insert-pair-alist): Say what
2133         COMMAND-CHAR is (bug#18809).
2135         (cherry picked from commit 2824c587e9749a8f350f1d3dddd65176b4561dcb)
2137 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2139         Move doc of backup-directory-alist to the Backup node
2141         * doc/emacs/files.texi (Backup): Move the documentation of
2142         `backup-directory-alist' here from the "Single or Numbered
2143         Backups" node, because it doesn't seem to have much to do with
2144         numbering (bug#18692).
2146         (cherry picked from commit e77b8d84b4161f2cf8720dec2bf44a3e50134398)
2148 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2150         Tiny doc clarification for create-fontset-from-fontset-spec
2152         * lisp/international/fontset.el (create-fontset-from-fontset-spec):
2153         Clarify what the optional part is (bug#18686).
2155         (cherry picked from commit c05d186455ce9907eeb6b21ea4227e453996c681)
2157 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2159         Fill the doc string of font-lock-keywords
2161         * lisp/font-lock.el (font-lock-keywords): Fill the lines and
2162         reorganise some explanations (bug#21427).
2164         (cherry picked from commit c05716d3a26ea7518b89eacfccaf70c9d0731df7)
2166 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2168         Doc fix for font-lock-remove-keywords
2170         * lisp/font-lock.el (font-lock-remove-keywords): Add a link to
2171         `font-lock-add-keywords' to describe KEYWORDS (bug#18634).
2173         (cherry picked from commit bc00dcf12983cd399127d0eea39647f29778eb02)
2175 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2177         Clarify whitespace-style doc string
2179         * lisp/whitespace.el (whitespace-style): Doc clarification
2180         (bug#18296).
2182         (cherry picked from commit d96c720d0cca7c9ffbb4c712ad315bb707d6625c)
2184 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2186         Doc fixed for next-error-buffer-p
2188         * lisp/simple.el (next-error-buffer-p): Clarify doc string
2189         (bug#18202).
2191         (cherry picked from commit a10eb168cc96db9f0dab2d75550cbd8f08be2363)
2193 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2195         Tiny doc fix
2197         * src/fileio.c (Ffile_accessible_directory_p): Tiny doc fix
2198         (and fill) (bug#18201).
2200         (cherry picked from commit 2ef0040e2363a669d9b93df935d31c98fa130132)
2202 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2204         Doc fix
2206         * src/keymap.c (Fdefine_prefix_command): Clarify doc string
2207         slightly (bug#18092).
2209         (cherry picked from commit 6b769c81d024f7eeb90b167e7df6f87d859614d4)
2211 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2213         delsel doc touch ups
2215         * lisp/delsel.el (delete-selection-helper): Use non-nil
2216         instead of t and clarify function return values (bug#18089).
2218         (cherry picked from commit d7a5b5be9a5869bcd233434ec3103dd1976d7df7)
2220 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2222         Doc fixes for menu-bar.el
2224         * lisp/menu-bar.el (clipboard-kill-ring-save): Describe the
2225         REGION parameter (bug#18028).
2226         (clipboard-kill-region): Ditto.
2228         (cherry picked from commit 33d2c67bff0992ecbc0fe38556683242b9d1a4ae)
2230 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2232         Doc fix
2234         * lisp/rect.el (delete-whitespace-rectangle): Doc fix (bug#18026).
2236         (cherry picked from commit 6baca4911ec901579749dbf7596011d90fea3781)
2238 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2240         Minor doc clarification
2242         * lisp/subr.el (y-or-n-p): Document the return value from "n"
2243         (bug#18024).
2245         (cherry picked from commit 5d1f3192d484edee92caa46cd7d699da3e920259)
2247 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2249         Fill font-lock-mode doc string
2251         * lisp/font-core.el (font-lock-mode): Fill the text to make it
2252         narrower (bug#18008).
2254         (cherry picked from commit 27abf372836532c57be2e9e3ed23413729cc07fc)
2256 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2258         Wrap the auto-generated doc string
2260         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Wrap a
2261         string to make it less likely that we get overlong lines
2262         (bug#17999).
2264         (cherry picked from commit 323b69664914d687fd4b48593479cea223dfbcb4)
2266 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2268         Clarify hi-lock-find-patterns
2270         * lisp/hi-lock.el (hi-lock-find-patterns): Doc clarification
2271         (bug#17989).
2273         (cherry picked from commit 552e90ce7dff3a7107243fdf71c4de3af443e13a)
2275 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2277         Add a doc string to `winner-mode'
2279         * lisp/winner.el (winner-mode): Add a doc string based on the
2280         comments in the file (bug#17716).
2282         (cherry picked from commit 2c3ab9b6e39a3d600e7d82deacc24effaec051bb)
2284 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2286         Doc fix for align-newline-and-indent
2288         * lisp/align.el (align-newline-and-indent): Mention that
2289         alignment is done by `align' (bug#17707).
2291         (cherry picked from commit 340a224ec3e01706112a07164da9a9f3f369a5aa)
2293 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2295         Doc fix for `kbd'
2297         * lisp/subr.el (kbd): Describe more fully the format of the
2298         parameter (bug#17039).
2300         (cherry picked from commit 3a33afe25d8518f194fa4706eaccdb2a786a0348)
2302 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2304         Doc tweak
2306         * lisp/simple.el (use-empty-active-region): Doc tweak.
2307         There's only one region (bug#16513).
2309         (cherry picked from commit 35fb7897f161d5e5a87e039dc1e427094640b0c8)
2311 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2313         Link from (emacs)Exiting to (lisp)Killing Emacs
2315         * doc/emacs/entering.texi (Exiting): Link to the lispref
2316         manual for further customisations (bug#15445).
2318         (cherry picked from commit bc5f27aa099cdde02ca66e71501b89300685ab28)
2320 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2322         find-lisp doc touchups
2324         * lisp/find-lisp.el (find-lisp-format): Copy over the doc
2325         string (bug#15047).
2326         (find-lisp-find-files): Clarify doc.
2328         (cherry picked from commit e4c7657b0d1a31d64ca24bc64b5480cd7687e332)
2330 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2332         Don't have the manual claim that it lists all CL incompatibilities
2334         * doc/misc/cl.texi (Common Lisp Compatibility): The list of
2335         incompatibilities isn't exhaustive, so don't say that it is
2336         (bug#15171).
2338         (cherry picked from commit fb685bc91a72508c97ce7e30f970d4157677f371)
2340 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2342         Change all occurrences of "Mouse-[0-9]" to "mouse-[0-9]"
2344         * doc/emacs/*.texi: Change all occurrences of "Mouse-[0-9]" to
2345         "mouse-[0-9]".  These are case sensitive, and the keys are lower case
2346         (bug#14554).
2348         (cherry picked from commit e4c26271f2c2fe08f8490e25c63a436ab2a804ca)
2350 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2352         Doc string change to enable-recursive-minibuffers
2354         * src/minibuf.c (syms_of_minibuf): Mention
2355         minibuffer-depth-indicator-mode in the doc string to
2356         enable-recursive-minibuffers (bug#14147).
2358         (cherry picked from commit 23ba488a5e8290c4de91e0ff4161641efa364c0d)
2360 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2362         Clarify the `interactive' doc string slightly
2364         * src/callint.c (Finteractive): Clarify the doc string slightly
2365           (bug#14577).
2367         (cherry picked from commit cd993be60da2d12db0d390001373d486c1091c47)
2369 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2371         Clarify some doc strings
2373         * lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
2374         Clarify doc string (bug#8693).
2375         (syntax-propertize): Clarify doc string.
2377         (cherry picked from commit ad3ef417f3c40f086de9c547d6272e5685595e42)
2379 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2381         Add some concept index entries for custom types
2383         * doc/lispref/customize.texi (Composite Types): Add concept
2384         index entries for restricted-sexp, radio and choice (bug#7385).
2386         (cherry picked from commit 388bb723fa078158d3148de05e942f9c01e95dd8)
2388 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2390         Mention `lisp-indent-function' in the lispref manual
2392         * doc/lispref/macros.texi (Indenting Macros): Mention
2393         `lisp-indent-function' (bug#3393).
2395         (cherry picked from commit a1627691a896b2afaa264f93534178bc763564c9)
2397 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
2399         Clarify doc string of internal compilation function
2401         * lisp/progmodes/compile.el (compilation-get-file-structure):
2402         Clarify doc string (bug#3137).
2404         (cherry picked from commit 123191decb7428db3b32a6c01631fa755088393a)
2406 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
2408         Use ‘T *restrict’ proto, not ‘T[restrict]’
2410         * src/fns.c (sort_vector_copy): Use a different way to attempt to
2411         work around GCC 3.0-and-earlier incompatibility with C99, one that
2412         does not have problems with modern non-GCC compilers.
2414 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
2416         Fix documentation of 'url-retrieve-synchronously'
2418         * doc/misc/url.texi (Retrieving URLs): Update argument list of
2419         'url-retrieve-synchronously'.  (Bug#23411)
2421 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
2423         * lisp/url/url.el (url-retrieve-synchronously): Doc fix.  (Bug#23411)
2425 2016-04-30  Leo Liu  <sdl.web@gmail.com>
2427         Fix last change to isearch-update (bug#23406)
2429         * lisp/isearch.el (isearch-update): Remove (setq cursor-sensor-inhibit
2430           nil) ie remove the original (unless (boundp 'cursor-sensor-inhibit)
2431           ...) form.
2433 2016-04-30  Leo Liu  <sdl.web@gmail.com>
2435         Autoload cursor-sensor-inhibit (bug#23406)
2437         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-inhibit): Autoload.
2438         * lisp/isearch.el (isearch-update): Remove boundp check.
2440 2016-04-30  Phillip Lord  <phillip.lord@newcastle.ac.uk>
2442         org-map-entries: Fix org-agenda-prepare-buffers call
2444         * lisp/org/org.el (org-map-entries): Check that buffer-file-name is non-nil
2445           before passing to org-agenda-prepare-buffers.
2447         This is a backport of commit 44c8cd7136e3fcd1e6bfa08895cac437b7a691fa
2448         from upstream org-mode. Addresses bug #23365.
2450 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
2452         Followup for last commit in the user manual
2454         * doc/emacs/basic.texi (Moving Point): Clarify that
2455         set-goal-column has buffer-local effect.  (Bug#23405)
2457 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
2459         Improve doc string of 'set-goal-column'
2461         * lisp/simple.el (set-goal-column): Doc fix.  (Bug#23405)
2463 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
2465         Fix the MSDOS build
2467         * config.bat:
2468         * msdos/sedlisp.inp:
2469         * msdos/sedlibmk.inp:
2470         * msdos/sedleim.inp:
2471         * msdos/sedadmin.inp:
2472         * msdos/sed6.inp:
2473         * msdos/sed3v2.inp:
2474         * msdos/sed2v2.inp:
2475         * msdos/sed1v2.inp: Adapt to Emacs 25.
2477         * src/process.c (remove_slash_colon): Move out of "#ifdef
2478         subprocesses" block, as it its called unconditionally.  Move
2479         ADD_SUBFEATURE calls into "#ifdef subprocesses" block, as they
2480         reference variables only defined in that block.
2481         * src/msdos.h: Provide prototypes for IT_set_frame_parameters,
2482         faccessat, msdos_fatal_signal, syms_of_msdos, pthread_sigmask,
2483         dos_keysns, dos_keyread, run_msdos_command, and
2484         syms_of_win16select, to avoid compiler warnings.
2485         * src/msdos.c (SYS_ENVIRON): Define to either '_environ' or
2486         'environ', depending on the DJGPP version.
2487         Remove declarations of externally-visible Lisp objects, like
2488         Qbackground_color and Qreverse.
2489         (run_msdos_command): First argument is not signed, not unsigned.
2490         Use SYS_ENVIRON.
2491         (sys_select): Use 'timespec_cmp' instead of 'timespec_sign', as
2492         the latter doesn't work when 'time_t' is an unsigned data type.
2493         This caused idle timers to behave incorrectly: they only fired
2494         after a keyboard input event.
2495         * src/frame.c (adjust_frame_size) [MSDOS]: Account for
2496         FRAME_TOP_MARGIN that isn't counted in the frame's number of
2497         lines, but dos_set_window_size needs it to be added.
2498         * src/lread.c (INFINITY, NAN) [DJGPP < 2.05]: Provide definitions.
2499         * src/fns.c (sort_vector_copy) [__GNUC__ < 4]: Provide a prototype
2500         that works around compilation errors with older GCC versions.
2501         * src/w16select.c: Don't declare QCLIPBOARD and QPRIMARY as Lisp
2502         Objects.
2503         * src/filelock.c [MSDOS]: Ifdef away most of the code.  Provide
2504         no-op implementations for 'lock_file' and 'unlock_file'.
2505         (Ffile_locked_p) [MSDOS]: Always return nil.  This avoids multiple
2506         ifdefs in all users of filelock.c functionality.
2507         * src/conf_post.h (EOVERFLOW, SIZE_MAX) [DJGPP < 2.04]: Define.
2508         * src/emacs.c [MSDOS]: Include dosfns.h, to avoid compiler
2509         warnings.
2510         * src/dosfns.h: Provide prototypes for dos_cleanup,
2511         syms_of_dosfns, and init_dosfns.
2512         * src/deps.mk (atimer.o): Depend on msdos.h.
2513         (emacs.o): Depend on dosfns.h.
2514         * src/atimer.c [MSDOS]: Include msdos.h, to avoid compiler
2515         warnings.
2517         * lisp/window.el (window--adjust-process-windows): Skip the body
2518         if 'process-list' is not available.  This avoids failure to start
2519         up on MS-DOS.
2520         * lisp/vc/diff.el (diff-no-select): Test 'make-process', not
2521         'start-process', as the latter is now available on all platforms.
2522         * lisp/textmodes/ispell.el (ispell-async-processp): Replace
2523         'start-process' with 'make-process' in a comment.
2524         * lisp/term/internal.el (IT-unicode-translations): Modify and add
2525         a few translations to display Info files with Unicode markup.  Fix
2526         an ancient off-by-one mismatch error with Unicode codepoints.
2527         * lisp/progmodes/compile.el (compilation-start): Test
2528         'make-process', not 'start-process', as the latter is now
2529         available on all platforms.
2530         * lisp/man.el (Man-build-man-command, Man-getpage-in-background):
2531         Test 'make-process', not 'start-process', as the latter is now
2532         available on all platforms.
2533         * lisp/international/mule-cmds.el (set-coding-system-map): Test
2534         'make-process', not 'start-process', as the latter is now
2535         available on all platforms.
2536         * lisp/eshell/esh-cmd.el (eshell-do-pipelines-synchronously): Doc
2537         fix.
2538         (eshell-execute-pipeline): Test 'make-process', not
2539         'start-process', as the latter is now available on all platforms.
2541 2016-04-30  Andreas Schwab  <schwab@linux-m68k.org>
2543         Remove \= from format string (bug#18190)
2545         * lisp/emacs-lisp/eieio.el (defclass): Remove \= from format
2546         string.
2548 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
2550         Fix variable-pitch font on MS-Windows
2552         * lisp/faces.el (variable-pitch) [w32]: Name a variable-pitch font
2553         explicitly, to avoid Emacs picking up a bold-italic variant on
2554         some MS-Windows systems.  See this thread for details:
2555         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00746.html.
2557 2016-04-29  Alan Mackenzie  <acm@muc.de>
2559         Restore follow-scroll-up/down to scrolling by the combined size of all windows
2561         Also rename the current follow-scroll-up/down functions to
2562         follow-scroll-up-window and follow-scroll-down-window.  These scroll by the
2563         height of the current window.
2565         This fixes bug #23347.
2567         * lisp/follow.el (follow-mode): Tweak the doc string.
2568         (follow-scroll-up-arg, follow-scroll-down-arg): new functions, extracted from
2569         follow-scroll-up/down.
2570         (follow-scroll-up-window, follow-scroll-down-window): Functions renamed from
2571         follow-scroll-up/down.
2572         (follow-scroll-up, follow-scroll-down): Restore the historic functionality.
2574 2016-04-29  Alan Mackenzie  <acm@muc.de>
2576         Revert unneeded change which harms syntactic parsing.  This fixes bug #23308.
2578         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache): User
2579         c-state-old-cpp-end as an argument to c-with-all-but-one-cpps-commented-out
2580         regardless of the value of `here'.
2582 2016-04-29  Alan Mackenzie  <acm@muc.de>
2584         Correct indentation of ids in a C++ enum after a protection keyword.
2586         Also correct the misfontification of the last enum identifier.
2588         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): setq
2589         c-last-identifier-range to nil to ensure that only types recognized by this
2590         macro are set for fontification as types.
2591         (c-backward-typed-enum-colon): Function renamed from
2592         c-backward-colon-prefixed-type.  On finding a colon in the backward search,
2593         check it is preceded by an identifier rather than a keyword.
2595 2016-04-27  Glenn Morris  <rgm@gnu.org>
2597         * lisp/window.el (window--process-window-list): No-op if no processes.
2599         This avoids an issue with save-selected-window (from walk-windows)
2600         failing if frame.el is not loaded, eg if the terminal is resized
2601         during startup of a -nw CANNOT_DUMP build.  (Bug#23369).
2603 2016-04-27  Paul Eggert  <eggert@penguin.cs.ucla.edu>
2605         Port dumping to NetBSD with PaX
2607         Problem reported by Thomas Klausner (Bug#23371).
2608         * configure.ac (PAXCTL_dumped, PAXCTL_notdumped): New vars.
2609         Set them to setfattr and/or paxctl commands appropriate for
2610         GNU/Linux and/or NetBSD; the latter prefers paxctl +a.  Search
2611         for paxctl only if setfattr is not found.
2612         * src/Makefile.in (PAXCTL_dumped, PAXCTL_notdumped):
2613         New vars, replacing PAXCTL_if_present and SETFATTR_if_present.
2614         All uses changed.
2616 2016-04-27  Dmitry Gutov  <dgutov@yandex.ru>
2618         Don't mistake `for' inside a function for a part of array comprehension
2620         * lisp/progmodes/js.el (js--indent-in-array-comp): Also check the
2621         depth in parens between the bracket and `for' (bug#23391).
2623         * test/indent/js.js: Add a corresponding example.
2625 2016-04-27  Anders Lindgren  <andlind@gmail.com>
2627         Fix bug#22891: wrong terminal width when a fringe width is zero.
2629         When either fringe width is zero, Emacs reserved one column for a
2630         continuation glyph. Terminal windows does not take this into
2631         account when the frame is resized.
2633         * lisp/window.el (window-adjust-process-window-size): Use
2634         `window-max-chars-per-line' instead of `window-body-width'.
2635         * lisp/term.el (term-window-width): Remove function. (It does the
2636         same as `window-max-chars-per-line' but without recent bug fixes.)
2637         (term-mode): Use `window-max-chars-per-line' instead of
2638         `term-window-width'.
2640         Backport
2642         (cherry picked from commit 5b5403289888efe8783ae6a405845b925f544ec1)
2644 2016-04-27  Leo Liu  <sdl.web@gmail.com>
2646         Improve last change to vc-git-mode-line-string
2648         * lisp/vc/vc-git.el (vc-git-mode-line-string): Better fix that caches
2649           the result.
2651 2016-04-27  Stephen Berman  <stephen.berman@gmx.net>
2653         Todo mode doc bug fix
2655         * lisp/calendar/todo-mode.el (todo-show): Correct obsolete and no
2656         longer correct information in doc string.
2658 2016-04-27  Leo Liu  <sdl.web@gmail.com>
2660         Fix revision calculation in vc-git-mode-line-string
2662         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use
2663           vc-git-working-revision because vc-working-revision needs to decide
2664           the backend and may return nil.
2666 2016-04-26  Jorgen Schaefer  <contact@jorgenschaefer.de>
2668         Add Python 3.5 keyword "await"
2670         * lisp/progmodes/python.el (python-font-lock-keywords): Add await as
2671         keyword.
2673 2016-04-26  Lele Gaifax  <lele@metapensiero.it>
2675         Add new keywords of Python 3.5
2677         Python 3.5, released in mid September 2015, introduced a few new
2678         keywords to better support asynchronous code, "async" and "await"
2679         in particular. See https://www.python.org/dev/peps/pep-0492/ for
2680         details. (Bug#21783)
2681         * lisp/progmodes/python.el (python-rx-constituents): Add async
2682         def/for/with as block-start and async def as defun.
2683         * lisp/progmodes/python.el (python-font-lock-keywords): Add async
2684         def/for/with as keyword.
2685         * test/automated/python-tests.el (python-indent-after-async-block-1,
2686         python-indent-after-async-block-2, python-indent-after-async-block-3,
2687         python-nav-beginning-of-defun-3): New tests to test indentation and
2688         navigation for the async keyword.
2690 2016-04-26  Mark Oteiza  <mvoteiza@udel.edu>
2692         Partially revert previous change.
2694         This commit partially reverts 0f332848cdb2ed6d46771914a911cbca194cd51a.
2695         * lisp/rect.el (rectangle--highlight-for-redisplay): Use region face.
2696         This function is for rectangle-mark-mode, not string-rectangle.
2698 2016-04-25  Paul Eggert  <eggert@penguin.cs.ucla.edu>
2700         Say why text-quoting-style is not a user option
2702         * doc/lispref/help.texi (Keys in Documentation):
2703         * etc/NEWS: Document why text-quoting-style is not a
2704         customizable variable (Bug#23372).
2706 2016-04-25  Glenn Morris  <rgm@gnu.org>
2708         * lisp/emacs-lisp/autoload.el (update-directory-autoloads):
2709         Future-proof against non-time-values.
2711 2016-04-25  Eli Zaretskii  <eliz@gnu.org>
2713         Don't mention ~/.emacs.bmk literally in doc strings
2715         * lisp/bookmark.el (bookmark-save-flag, bookmark-load): Don't
2716         mention "~/.emacs.bmk" explicitly as the default bookmark file in
2717         the doc strings.  (Bug#23350)
2719 2016-04-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2721         * etc/NEWS: Explain why multicolor font display is disabled on OS X Cocoa.
2723 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
2725         Port to Ubuntu 16.04 --enable-gcc-warnings
2727         * src/image.c (gif_load) [HAVE_GIF]: Fix pointer signedness problem.
2729 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
2731         * etc/NEWS: Improve wording of vc-git-log-output-coding-system etc.
2733 2016-04-24  Tino Calancha  <f92capac@gmail.com>
2735         Don't kill ~/ if it's the top level directory
2737         * lisp/dired-aux.el (dired-kill-subdir): Don't kill ~/ if it's
2738         the top level directory (bug#23017).
2740 2016-04-23  Tino Calancha  <f92capac@gmail.com>  (tiny change)
2742         describe-char: fix insert char documentation
2744         * lisp/descr-text.el (describe-char):
2745         Only 'ucs-names' entries can be inserted by unicode name (Bug#23325).
2747 2016-04-23  Dmitry Gutov  <dgutov@yandex.ru>
2749         (vc-git-mode-line-string): Don't use `replace-regexp-in-string'
2751         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use `substring'
2752         instead of `replace-regexp-in-string', because REV can be nil
2753         (e.g. when FILE is a directory, bug#23344), and we actually know
2754         we only need the first 4 characters.
2756 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
2758         Bump version to 25.0.93
2760         * README:
2761         * configure.ac:
2762         * msdos/sed2v2.inp: Bump Emacs version to 25.0.93.
2764 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
2766         * etc/AUTHORS: Update the AUTHORS file
2768         * admin/update_autogen: Use #!/usr/bin/env bash
2770         * admin/authors.el (authors-ignored-files): Additions.
2772 2016-04-22  Martin Rudalics  <rudalics@gmx.at>
2774         In x_set_window_size restore do_pending_window_change calls
2776         * src/xterm.c (x_set_window_size):
2777         * src/w32term.c (x_set_window_size): Restore
2778         do_pending_window_change calls after their stupid removal on
2779         2015-08-31.
2781 2016-04-21  Ilya Zakharevich  <ilya@math.berkeley.edu>
2783         Fix Alt-modified keys on some European MS-Windows keyboards
2785         * src/w32fns.c (deliver_wm_chars): If the reported character is
2786         ASCII, AND Meta modifier is a candidate, behave as if Meta is
2787         present, i.e. fall back to the legacy code.  (Bug#23251)
2789 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
2791         Document 'help-go-forward'
2793         * doc/emacs/help.texi (Help Mode): Document and index
2794         'help-go-forward'.  (Bug#23323)
2796 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
2798         Revert "Allow to customize names of executables used by grep.el"
2800         This reverts commit c93ae7a1e5a94541189a8f36984014344d561ffc.
2802 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
2804         Revert "Don't use 'find-program'"
2806         This reverts commit 10597c977d55cbf9304b51c3b364ce58199384a0.
2808 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
2810         Revert "Use 'grep-find-program' in check-declare.el"
2812         This reverts commit 33bef6e90bfd20609d044b8a076c1570c627684a.
2814 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
2816         Clarify documentation of 'dired-mark-files-containing-regexp'
2818         * doc/emacs/dired.texi (Marks vs Flags): Clarify that for files
2819         visited in buffers, 'dired-mark-files-containing-regexp' searches
2820         the buffer rather than the file on disk.  (Bug#22694)
2822         * lisp/dired.el (dired-mark-files-containing-regexp): Clarify that
2823         for files visited in buffers, 'dired-mark-files-containing-regexp'
2824         searches the buffer rather than the file on disk.  (Bug#22694)
2826 2016-04-19  Eli Zaretskii  <eliz@gnu.org>
2828         Make tmm-menubar work in correct order again
2830         * lisp/tmm.el (tmm-prompt): Don't reverse 'tmm-km-list' right at the
2831         beginning; instead, pass a reversed copy to 'tmm--completion-table'.
2832         (Bug#23309)
2833         (tmm-menubar): Fix an off-by-one error in determining the menu
2834         item when the function is called with a non-nil 'x-position'
2835         argument.
2837 2016-04-18  Dmitry Gutov  <dgutov@yandex.ru>
2839         Remove the Meta-CVS VC backend
2841         * lisp/obsolete/vc-mcvs.el: Remove the file (bug#20475).
2843         * lisp/vc/log-view.el (log-view-extract-comment): Remove the MCVS
2844         reference.
2846         * doc/misc/efaq-w32.texi (Version control): Same.
2848 2016-04-18  Michael Albinus  <michael.albinus@gmx.de>
2850         Fix Bug#23276
2852         * lisp/autorevert.el (auto-revert-handler): Ignore errors
2853         coming from `revert-buffer'.  (Bug#23276)
2855 2016-04-17  Reto Zimmermann  <reto@gnu.org>
2857         Sync with upstream vhdl mode v3.38.1.
2859         * lisp/progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp): Update.
2860         (vhdl-mode): No longer set comment-padding.
2861         (vhdl-begin-p): Handle missing space between keyword and parenthesis.
2862         (vhdl-beginning-of-statement-1): Fix indentation for "else generate".
2863         (vhdl-template-else, vhdl-template-elsif): Support generate statement.
2864         (vhdl-re-search-forward, vhdl-re-search-backward): Save match data.
2866 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
2868         Tweak configure.ac syntax in recent module patch
2870         * configure.ac: Use proper Autoconf parenthesization in
2871         recent HAVE_MODULES patch.  Although this doesn’t fix any bugs,
2872         the previous syntax was confusing.
2874 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
2876         Port to GCC 5.3.1 20160406 (Red Hat 5.3.1-6)
2878         * src/indent.c (Fvertical_motion): Pacify --enable-gcc-warnings
2879         when using the April 6 Fedora patch to GCC.
2881 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
2883         Make sh-electric-here-document-mode accessible in sh-mode-hook. (Bug#3226)
2885         * lisp/progmodes/sh-script.el (sh-mode-hook): Add
2886         sh-electric-here-document-mode as an option and the default value.
2887         (sh-mode): Mention sh-mode-hook in docstring.
2888         (sh-mode): Remove sh-electric-here-document-mode invocation.
2890 2016-04-16  Glenn Morris  <rgm@gnu.org>
2892         * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from previous.
2894 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
2896         Make use of rectangle-preview custom variable.
2898         lisp/rect.el (rectangle--string-preview): Only create a preview if
2899         rectangle-preview is non-nil (Bug#23248).
2901 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
2903         Make use of rectangle-preview face.
2905         * lisp/rect.el (rectangle--string-preview):
2906         (rectangle--highlight-for-redisplay): Replace 'region with
2907         'rectangle-preview (Bug#23248).
2909 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
2911         Use 'grep-find-program' in check-declare.el
2913         * lisp/emacs-lisp/check-declare.el (check-declare-directory): Use
2914         'grep-find-program', not 'find-program'.
2916 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
2918         Improve "C-h S" for cl-lib symbols
2920         * lisp/info-look.el: Add cl.info lookup to emacs-lisp-mode related
2921         manuals.  (Bug#23289)
2923 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
2925         Fix minor issues with removing left or right fringes
2927         * lisp/window.el (window-max-chars-per-line): Account for
2928         'left-fringe-width' and 'right-fringe-width' variables.
2930         * doc/lispref/windows.texi (Window Sizes): Document the effect on
2931         window text width when setting the width of one or both fringes to
2932         zero.
2933         * doc/emacs/display.texi (Fringes): Document the effect on window
2934         text width when setting the width of one or both fringes to zero.
2935         (Bug#22891)
2937 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
2939         Speed up redisplay in ansi-term mode
2941         * lisp/term.el (ansi-term): Force L2R 'bidi-paragraph-direction'.
2942         (Bug#20611)
2944 2016-04-16  Philipp Stephani  <phst@google.com>
2946         Simplify 8-bit character handling by terminal for 'raw-text'
2948         * lisp/international/mule.el (set-keyboard-coding-system): Treat
2949         'raw-text' as another coding type that requires 8-bit characters.
2950         * lisp/xt-mouse.el (xterm-mouse--read-coordinate): Use 'no-conversion'
2951         instead of 'latin-1'.
2953 2016-04-15  Glenn Morris  <rgm@gnu.org>
2955         * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux.  (Bug#22722)
2957 2016-04-15  Eli Zaretskii  <eliz@gnu.org>
2959         Fix w32 memory-management problem when extending buffer text
2961         * src/w32heap.c (mmap_realloc): Only attempt extending a region if
2962         the following region has the same allocation base.  Also, use the
2963         original allocation base and enlarged size to commit reserved
2964         memory, to ensure that the allocation base stays at its original
2965         value.  This fixes several hard-to-debug problems whereby part of
2966         buffer text was overwritten with binary nulls, because
2967         mmap_realloc copied only part of buffer text when extending it.
2968         See
2969         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00325.html
2970         and http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#55 for two
2971         examples of the related problems.
2973 2016-04-14  Michael Albinus  <michael.albinus@gmx.de>
2975         Fix Bug#20637.  Do not merge to master
2977         * lisp/vc/vc-hooks.el (vc-state, vc-working-revision):
2978         Use `vc-backend' instead of `vc-responsible-backend'.  (Bug#20637)
2980         * test/automated/vc-tests.el (vc-test--state)
2981         (vc-test--working-revision): Deactivate now failing checks.
2983 2016-04-14  Paul Eggert  <eggert@cs.ucla.edu>
2985         substitute-command-keys keeps quotes’ text props
2987         Problem reported by Clément Pit--Claudel (Bug#23254).
2988         * src/doc.c: Include intervals.h.
2989         (Fsubstitute_command_keys): If the only substitutions are for
2990         quotes, copy the source string’s text properties too, since no
2991         substring lengths have changed.
2993 2016-04-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2995         * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping fixes.
2997 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
2999         Add semantic-symref-filepattern-alist entry for lisp-interaction-mode
3001         * lisp/cedet/semantic/symref/grep.el
3002         (semantic-symref-filepattern-alist):
3003         Add entry for lisp-interaction-mode
3004         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#47)
3006 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
3008         Perform xref searches without visiting unopened files
3010         * lisp/progmodes/xref.el (xref-collect-references): Instead of
3011         calling `semantic-symref-find-references-by-name', use
3012         `semantic-symref-instantiate' and `semantic-symref-perform-search'
3013         directly.  Ask for `line-and-text' results (bug#23223).
3014         (xref-collect-matches): Include the line text in the "hit"
3015         structure.
3016         (xref--convert-hits): New function, split off from
3017         `xref-collect-references' and `xref-collect-matches', to convert
3018         "hits" to xref instance list.  Create a temporary buffer here, to
3019         use it for post-processing all hit lines.
3020         (xref--collect-matches): Use a different approach for non-visited
3021         files.  Insert the line text into the temp buffer, apply the
3022         file's major mode the best we can without reading its whole
3023         contents, syntax-propertize, and search in the result.
3024         (xref--collect-matches-1): Extract, to handle the common logic
3025         between two cases.
3026         (xref--find-buffer-visiting): New function, a wrapper around
3027         `find-buffer-visiting' to amortize its cost.
3029         * lisp/cedet/semantic/symref/idutils.el
3030         (semantic-symref-idutils--line-re): New constant.
3031         (semantic-symref-parse-tool-output-one-line): Support result type
3032         `line-and-text'.
3034         * lisp/cedet/semantic/symref/grep.el
3035         (semantic-symref-grep--line-re)
3036         (semantic-symref-parse-tool-output-one-line): Same.
3038         * lisp/cedet/semantic/symref/cscope.el
3039         (semantic-symref-cscope--line-re)
3040         (semantic-symref-parse-tool-output-one-line): Same.
3042         * lisp/cedet/semantic/symref/global.el
3043         (semantic-symref-global--line-re)
3044         (semantic-symref-parse-tool-output-one-line): Same.
3046 2016-04-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
3048         Revert "Prevent bootstrap autoload backup files"
3050         This reverts commit c23c965bb9d0a4bcc1b6158833ff99aa20fd53e9.
3052 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
3054         Improve time zone documentation
3056         * doc/lispref/os.texi (Time Zone Rules):
3057         New section, mostly with material moved here from other sections.
3058         * doc/emacs/cmdargs.texi (General Variables):
3059         * doc/lispref/os.texi (Time Conversion, Time Parsing):
3060         Xref new section.
3061         * etc/NEWS, etc/PROBLEMS:
3062         * lisp/org/org.el (org-timestamp-format):
3063         * src/editfns.c (Fformat_time_string, Fdecode_time)
3064         (Fencode_time, Fcurrent_time_string, Fcurrent_time_zone)
3065         (Fset_time_zone_rule):
3066         When documenting time zone rule strings, mention the TZ
3067         environment variable in preference to mentioning the
3068         sort-of-internal function set-time-zone-rule.
3070 2016-04-12  Phillip Lord  <phillip.lord@russet.org.uk>
3072         Prevent bootstrap autoload backup files
3074          * lisp/emacs-lisp/autoload.el (autoload-find-generated-file): Suppress
3075            backups in newly created file.
3077           (autoload-ensure-default-file): Function split into two.
3078           (autoload-ensure-file-writeable): New function from split.
3080           (Bug#23203)
3082 2016-04-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3084         Disable multicolor fonts on OS X since they are not supported on free systems
3086         * src/macfont.m (macfont_list): Don't use color bitmap fonts.
3088 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
3090         Capitalize “Universal Time” in documentation
3092         It’s a proper noun.
3093         * lisp/vc/add-log.el (add-log-time-zone-rule): Also, fix typo by
3094         mentioning ‘format-time-string’ instead of ‘set-time-zone-rule’.
3096 2016-04-11  Eli Zaretskii  <eliz@gnu.org>
3098         Don't use 'find-program'
3100         * lisp/progmodes/project.el (project-file-completion-table): Use
3101         'grep-find-program', rather than the obsolete 'find-program'.
3103 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
3105         Sync with gnulib
3107         This is for picky compilers whose stdint.h fails our C11 tests.
3108         Problem reported for clang by Philipp Stephani (Bug#23261).
3109         This incorporates:
3110         2016-04-11 stdint: port to strict C11 left shift
3111         * doc/misc/texinfo.tex, lib/stdint.in.h: Copy from gnulib.
3113 2016-04-11  Leo Liu  <sdl.web@gmail.com>
3115         Fix last change on 2016-01-02
3117         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Move
3118           `cl-errs-re' before `lisp--el-match-keyword'; don't use `prepend'
3119           which highlights `cl-errs-re' even in comments or strings.
3121 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
3123         Port run-prolog EMACS to SWI-Prolog 7.2.3
3125         * lisp/progmodes/prolog.el (prolog-ensure-process):
3126         Work around incompatibility of SWI-Prolog 7.2.3 and earlier
3127         with the new way of dealing with the EMACS and INSIDE_EMACS
3128         environment variables.
3130 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
3132         Avoid crashes due to unreasonably large or small text scaling
3134         * lisp/face-remap.el (text-scale-min-amount)
3135         (text-scale-max-amount): New functions.
3136         (text-scale-set, text-scale-increase): Use them to limit the text
3137         scaling to a reasonable range of values.  (Bug#23259)
3139 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
3141         Improve documentation of 'with-eval-after-load'
3143         * lisp/subr.el (with-eval-after-load): Doc fix.  (Bug#23258)
3145 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
3147         Improve handling of non-ASCII characters in Git log messages
3149         * lisp/vc/vc-git.el (vc-git-commits-coding-system): Now a defcustom.
3150         (vc-git-log-output-coding-system): New defcustom.
3151         (vc-git-print-log, vc-git-command, vc-git--call): Use
3152         'vc-git-log-output-coding-system' for reading stuff from Git.
3153         Don't override values of 'coding-system-for-read/write' if they
3154         are bound by caller -- this allows the user to force an encoding
3155         via "C-x RET c".
3156         (vc-git-checkin): On MS-Windows, pass the log message via a
3157         temporary file, to work around the limitations on passing
3158         non-ASCII characters via command-line arguments.  Force using the
3159         'locale-coding-system' for Git command-line arguments.  This fixes
3160         problems with non-ASCII commit log messages on MS-Windows.
3161         (Bug#23076)
3163         * etc/NEWS: Mention the new vc-git related defcustoms.
3165 2016-04-09  Philipp Stephani  <phst@google.com>
3167         Remove undefined behavior in OS X dumper.
3169         Found by Address Sanitizer.
3171         * src/unexmacosx.c (unexec_write): Use Mach virtual memory API to
3172         avoid undefined behavior when reading arbitrary memory.
3174 2016-04-09  Joakim Verona  <joakim@verona.se>
3176         Fix clipping of xwidgets
3178         * src/xwidget.c (x_draw_xwidget_glyph_string): Use window_box
3179         instead of calculating the clipping borders manually.  Suggested
3180         by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
3182 2016-04-09  Eli Zaretskii  <eliz@gnu.org>
3184         Improve Lisp-level documentation of tooltips
3186         * doc/lispref/display.texi (Tooltips): New section.  (Bug#23246)
3187         (Display): Update the chapter menu.
3188         * doc/lispref/text.texi (Special Properties): Make the "tooltip"
3189         index entry more concrete.  Change the cross-reference to point to
3190         "Tooltips" in the ELisp manual.
3191         * doc/lispref/elisp.texi (Top): Update the master menu.
3192         * doc/emacs/frames.texi (Tooltips): Include more customization
3193         variables.  Add a cross-reference to the ELisp manual.
3195 2016-04-08  Glenn Morris  <rgm@gnu.org>
3197         Faces names should not end in "-face".
3199         * lisp/rect.el (rectangle-preview): Rename from rectangle-preview-face.
3200         * lisp/vc/vc-hooks.el (vc-state-base): Rename from vc-state-base-face.
3202 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
3204         * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
3206 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
3208         Comint and compile no longer set EMACS
3210         This mostly restores the change that I reverted on March 23,
3211         fixing most of Bug#20202.  The only part of the change that is
3212         still reverted is the change to M-x term, where compatibility with
3213         current Bash constrains us from moving too quickly (Bug#20484).
3214         Problem reported by Phillip Lord in: http://bugs.gnu.org/20484#108
3215         * etc/NEWS: Document this.
3216         * lisp/comint.el (comint-exec-1):
3217         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
3218         * lisp/progmodes/compile.el (compilation-start):
3219         Don’t set EMACS=t in the subsidiary process.
3221 2016-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
3223         * lisp/subr.el (read-key): Don't let the prompt linger (bug#22714)
3225 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
3227         Allow to customize names of executables used by grep.el
3229         * lisp/progmodes/grep.el (grep-find-program): Renamed from
3230         'find-program', which was a variable.  All uses changed.
3231         (grep-xargs-program): Renamed from 'xargs-program', which was a
3232         variable.  All uses changed.
3233         (grep-program): Now a defcustom rather than a simple variable.
3234         (Bug#23219)
3236 2016-04-08  Alan Third  <alan@idiocy.org>
3238         Set locale encoding to UTF-8 when run from OS X GUI.
3240         * src/nsterm.m (ns_init_locale): Append .UTF-8 when setting LANG.
3242 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
3244         Avoid signaling errors in 'M-n' at the 'C-x C-f' prompt
3246         * lisp/ffap.el (ffap-guess-file-name-at-point): Ignore errors
3247         while 'ffap-guesser' runs.  (Bug#23218)
3249 2016-04-08  Marcin Borkowski  <mbork@mbork.pl>
3251         Avoid infinite loop in 'studlify-word'
3253         * lisp/play/studly.el (studlify-region): Call
3254         'forward-word-strictly' and 'backward-word-strictly' instead of
3255         'forward-word' and 'backward-word'.  (Bug#19940)
3257 2016-04-07  Paul Eggert  <eggert@cs.ucla.edu>
3259         Don’t recommend obsolete EMACS env var
3261         * doc/misc/efaq.texi (Escape sequences in shell output):
3262         Remove long-obsolete (and now-confusing) notes about
3263         the EMACS environment variable in Emacs 21.1 and earlier.
3264         * doc/misc/efaq.texi (^M in the shell buffer):
3265         * etc/PROBLEMS:
3266         Remove obsolescent recommendation to consult the EMACS environment
3267         variable.
3269 2016-04-07  Glenn Morris  <rgm@gnu.org>
3271         * lisp/emacs-lisp/package.el: Change from a few days ago needs seq.
3273         * lisp/emacs-lisp/seq.el: Load cl-lib, not cl-extra.
3275 2016-04-07  Leo Liu  <sdl.web@gmail.com>
3277         Fix "Beginning of buffer" error in forward-page
3279         * lisp/textmodes/page.el (forward-page): Check before move to prevent
3280           "Beginning of buffer" error.
3282 2016-04-06  Dmitry Gutov  <dgutov@yandex.ru>
3284         Add a `transient' project type
3286         * lisp/progmodes/project.el (project-roots): Implement for the
3287         `transient' project type (bug#23224).
3288         (project-current): Instead of signaling an error, return a
3289         transient project instance rooted in the chosen directory.
3291 2016-04-06  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3293         Revert "Backport HTTPS proxy fix"
3295         This reverts commit 2d1a6054b161bd1055d4feb11c8c5ac95543f5db.
3297         It's too late in the Emacs 25 release cycle to add things like this to
3298         Emacs 25.1.  It's border line new feature.
3300 2016-04-06  Tao Fang  <fangtao0901@gmail.com>
3302         Backport HTTPS proxy fix
3304         Cherry-picked from 3c623c26ae7d695746e05d8a2e16a67a6256b024
3306         Backport:
3308 2016-04-06  Paul Eggert  <eggert@cs.ucla.edu>
3310         Fix stability confusion in sort-tests
3312         Problem reported by Philipp Stephani (Bug#23205).
3313         * test/automated/sort-tests.el:
3314         (sort-tests--insert-words-sort-and-compare):
3315         Don’t assume that reversing a sorted list is the same
3316         as sorting with the reverse predicate.  This is not true
3317         for stable sorts when items compare equal.
3319 2016-04-05  Paul Eggert  <eggert@cs.ucla.edu>
3321         Avoid describe-key error with lambdas
3323         Problem reported by Sho Takemori (Bug#22716).
3324         * lisp/cedet/mode-local.el (describe-mode-local-overload)
3325         (xref-mode-local-overload): Use function-overload-p instead
3326         of assuming the argument is a symbol.
3328 2016-04-04  Artur Malabarba  <bruce.connor.am@gmail.com>
3330         * lisp/emacs-lisp/package.el (package-install-selected-packages):
3332         Skip unavailable packages.
3334 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
3336         Sync with gnulib
3338         This incorporates:
3339         2016-04-03 stdint: detect good enough pre-C++11 stdint.h in C++ mode
3340         2016-04-01 stddef: support configuring with g++
3341         * doc/misc/texinfo.tex, lib/stddef.in.h, m4/stdint.m4:
3342         Copy from gnulib.
3344 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
3346         Fix doc for Universal Time
3348         * doc/lispref/os.texi (Time of Day, Time Conversion):
3349         Be more careful about distinguishing UTC (which is not valid for
3350         pre-1961 time stamps) and UT (which is).
3351         (Time Parsing): Remove stray obsolete paragraph about a
3352         UNIVERSAL argument for ‘format-time-string’.
3354 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
3356         Handle Bug#23186
3358         * lisp/net/tramp.el (tramp-encoding-command-switch)
3359         (tramp-encoding-command-interactive):
3360         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
3361         `tramp-encoding-shell' could be nil.  (Bug#23186)
3363 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
3365         More format-time-string change fixups
3367         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-times):
3368         * lisp/org/org.el (org-timestamp-format):
3369         Fix doc to match new format-time-string behavior.
3370         * lisp/org/ox-icalendar.el (org-icalendar-convert-timestamp):
3371         Use (not (not X)) to treat non-nil values of utc arg as UTC.
3373 2016-04-02  Paul Eggert  <eggert@cs.ucla.edu>
3375         make-xwidget unused arg cleanup
3377         * doc/lispref/display.texi (Xwidgets): Remove stray refs.
3378         * src/xwidget.c (syms_of_xwidget): Qwebkit, not Qwebkit_osr.
3380 2016-04-02  Joakim Verona  <joakim@verona.se>
3382         Remove unused arguments from make-xwidget
3384         The arguments BEG and END were unused, and are now removed.
3386         * doc/emacs/display.texi (Xwidgets): Document the change
3387         * lisp/xwidget.el (make-xwidget, xwidget-insert)
3388         (xwidget-webkit-new-session): Reflect changed arguments
3389         * src/xwidget.c (Fmake_xwidget, syms_of_xwidget): Reflect changed arguments
3391 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
3393         Document incompatible changes in 'format-time-string'
3395         * etc/NEWS: Mention the incompatible change in the interpretation
3396         of the 3rd argument to 'format-time-string'.  (Bug#21943)
3398 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
3400         Improve documentation of byte-code objects
3402         * doc/lispref/compile.texi (Byte-Code Objects): Document the
3403         integer format of the argument descriptor.  (Bug#23061)
3405 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
3407         Adapt calls to 'format-time-string' to changes in Emacs 25
3409         * lisp/vc/pcvs-info.el (cvs-fileinfo-from-entries): Use t as the
3410         last argument to format-time-string.  (Bug#23128)
3411         * lisp/gnus/gmm-utils.el (gmm-format-time-string): Use t as the
3412         last argument to format-time-string, when the TZ argument is not a
3413         number, per the doc string.
3415 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
3417         Improve vc-diff with Git backend
3419         * lisp/vc/vc-git.el (vc-git-command): Don't override
3420         coding-system-for-read/write if they are already bound.
3421         Suggested by joaotavora@gmail.com (João Távora).  (Bug#20892)
3422         (vc-git-print-log): Don't override coding-system-for-read if it's
3423         already bound.
3425 2016-04-01  Dmitry Gutov  <dgutov@yandex.ru>
3427         (js--continued-expression-p): Special-case unary plus and minus
3429         * lisp/progmodes/js.el (js--continued-expression-p): Make an
3430         effort to recognize unary plus and minus, in the contexts where
3431         they make sense (https://github.com/mooz/js2-mode/issues/322).
3433 2016-04-01  Alan Mackenzie  <acm@muc.de>
3435         Prevent C++ Mode wrongly fontifying some identifiers near templates as types
3437         This fixes debbugs #7917.
3439         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): Accept 'maybe
3440         (from c-forward-type) as sufficient to record an id.  Record type id as well
3441         as ref ids.
3442         (c-forward-name): Bind c-last-identifier-range around the call to
3443         c-forward-<>-arglist to prevent it getting corrupted.  Don't automatically
3444         assume an identifier is a type when a template ">" is followed by a "(".
3445         (c-forward-type): Don't automatically assume an identifier is a type when a
3446         template ">" is followed by a "(".
3448         * lisp/progmodes/cc-fonts.el (c-font-lock-<>-arglists): Don't fontify an
3449         identifier as a type when its associated ">" is followed by a "(".
3451 2016-04-01  Eli Zaretskii  <eliz@gnu.org>
3453         Avoid crashes due to insanely large columns in tabulated-list-format
3455         * src/xdisp.c (append_stretch_glyph, produce_xwidget_glyph)
3456         (produce_image_glyph): Limit the pixel width of the produced glyph
3457         to SHRT_MAX.  (Bug#23178)
3458         (append_composite_glyph, append_glyph, append_glyphless_glyph):
3459         Add assertions to verify that the pixel width of the glyph will
3460         never overflow a 'short'.
3461         * src/term.c (append_composite_glyph): Add assertion to verify
3462         that the pixel width of the glyph will never overflow a 'short'.
3464 2016-03-31  Mark Oteiza  <mvoteiza@udel.edu>
3466         Teach M-x disassemble a default argument.
3468         Adopts default argument in the same way as `describe-function'.
3469         * lisp/emacs-lisp/disass.el (disassemble): Default to function at point,
3470         if any.
3472 2016-03-31  Eli Zaretskii  <eliz@gnu.org>
3474         Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
3476         * lisp/vc/vc-annotate.el (vc-annotate): Force DOS EOL decoding on
3477         MS-Windows and MS-DOS, when processing the output of "svn annotate".
3479 2016-03-31  Michael Albinus  <michael.albinus@gmx.de>
3481         Fix OS X specific settings in tramp-tests
3483         * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
3485         * lisp/net/tramp.el (tramp-get-local-locale): New defun.
3487         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
3488         (tramp--test-utf8): Improve settings of coding systems.
3489         Do not use `tramp--test-darwin-p' anymore.  (Bug#22145)
3491 2016-03-30  Alan Mackenzie  <acm@muc.de>
3493         Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
3495         * lisp/progmodes/cc-cmds.el: (c-beginning-of-defun, c-end-of-defun): Remove
3496         superfluous invocations of c-self-bind-state-cache.
3498         * lisp/progmodes/cc-defs.el: (c-self-bind-state-cache): Copy and terminate
3499         markers correctly.
3501         * lisp/progmodes/cc-engine.el (c-record-parse-state-state): Terminate stale
3502         markers.
3504 2016-03-30  Alan Mackenzie  <acm@muc.de>
3506         Merge branch 'emacs-25' of /home/acm/emacs/emacs.git/emacs-25 into emacs-25
3508 2016-03-29  Xue Fuqiao  <xfq.free@gmail.com>
3510         * doc/lispref/text.texi (Columns): Remove a nonexistent reference.
3512         The example was removed by Chong Yidong on Mar 5, 2012.
3514 2016-03-29  Paul Eggert  <eggert@cs.ucla.edu>
3516         * doc/man/emacsclient.1: Document +line:column option.
3518 2016-03-29  Eli Zaretskii  <eliz@gnu.org>
3520         Fix rare problems with echo-area display and multiple frames
3522         * src/xdisp.c (redisplay_window): Bind inhibit-redisplay non-nil
3523         around the call to x_consider_frame_title, to prevent
3524         resize_mini_window from undoing echo-area display.  (Bug#23124)
3526 2016-03-29  Alan Mackenzie  <acm@muc.de>
3528         In M-%, avoid making buffer-local binding of text-property-default-nonsticky
3530         This would happen when that variable already has a buffer local binding.  Such
3531         a binding would not be seen by read-from-minibuffer.  This fixes bug #23127.
3533         * lisp/replace.el (query-replace-read-from): Move the binding of
3534         text-property-default-nonsticky to inside of a new with-current-buffer buffer
3535         form with the minibuffer as argument.
3537 2016-03-27  Dmitry Gutov  <dgutov@yandex.ru>
3539         Remove prog-indentation-context
3541         * lisp/progmodes/prog-mode.el: (prog-indentation-context)
3542         (prog-first-column, prog-widen): Remove, as discussed in
3543         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01425.html.
3545         * doc/lispref/text.texi (Mode-Specific Indent): Remove references
3546         to them.
3548         * etc/NEWS: Ditto.
3550         * lisp/progmodes/python.el: (prog-widen, prog-first-column):
3551         Remove the compatibility aliases and all uses.
3553         Do not merge to master.
3555 2016-03-27  Paul Eggert  <eggert@cs.ucla.edu>
3557         * src/font.c (QCuser_spec): Add missing colon to :user-spec.
3559 2016-03-27  Eli Zaretskii  <eliz@gnu.org>
3561         Don't start the 'midnight' timer twice
3563         * lisp/midnight.el (midnight-mode): Avoid starting the midnight
3564         timer twice when activating the mode the first time.  (Bug#23123)
3566 2016-03-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3568         * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of XFASTINT.
3570 2016-03-26  Stephen Berman  <stephen.berman@gmx.net>
3572         Fix todo-mode category movement
3574         * lisp/calendar/todo-mode.el (todo-move-category): Use moved
3575         category's existing categories sexp instead of invoking
3576         todo-update-categories-sexp in file moved to, in order to take
3577         archived items into account.  If the moved category has archived
3578         items, handle the source archive buffer properly.  Remove
3579         superfluous code.
3581 2016-03-26  Glenn Morris  <rgm@gnu.org>
3583         * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
3585 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
3587         Ignore non-nil. non-cons values of unread-command-events
3589         * src/keyboard.c (requeued_events_pending_p, read_char)
3590         (Finput_pending_p): Use CONSP instead of !NILP to see if there are
3591         unread command events to be processed.  (Bug#22976)
3593 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
3595         Improve documentatuon of 'truncate-partial-width-windows'
3597         * src/xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>:
3598         Clarify in the doc string how the width of partial-width windows
3599         is computed for the purposes of truncation decision.  (Bug#4338)
3601         * doc/emacs/windows.texi (Split Window): Clarify how the width of
3602         windows is calculated for the purposes of truncation decision.
3603         * doc/emacs/display.texi (Line Truncation): Remove a redundant
3604         index entry.
3606 2016-03-25  Paul Eggert  <eggert@cs.ucla.edu>
3608         * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU style.
3610 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
3612         Fix 'dired-goto-file' in Dired buffers produced by find-dired
3614         * lisp/dired.el (dired-goto-file): Try looking for the file as a
3615         relative name with leading sub-directories, before looking for the
3616         basename alone.  (Bug#23089)
3618 2016-03-25  Nicolas Petton  <nicolas@petton.fr>
3620         Fix map-put and map-delete for alists (Bug#23105)
3622         * lisp/emacs-lisp/map.el (map-put): Do not bind the evaluated place
3623         expression to a new symbol.
3624         * test/automated/map-tests.el: Add a regression test.
3626 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
3628         Minor copyedits of documentation for temporary displays
3630         * doc/emacs/windows.texi (Temporary Displays): Improve indexing.
3631         Minor changes in wording.
3632         (Window Choice, Displaying Buffers, Pop Up Window): Disambiguate
3633         index entries for 'display-buffer'.
3635         * etc/NEWS: Minor rewording of the entry about temporary displays.
3637 2016-03-25  Philipp Stephani  <phst@google.com>
3639         Add customization option for using UTF-8 coordinates in xt-mouse
3641         * lisp/xt-mouse.el (xterm-mouse-utf-8): New customization option.
3642         (xterm-mouse--read-coordinate): New function to replace
3643         `xterm-mouse--read-utf8-char'; uses UTF-8 only if enabled.
3644         (xterm-mouse--read-number-from-terminal): Adapt to new name.
3645         (xterm-mouse-tracking-enable-sequence)
3646         (xterm-mouse-tracking-disable-sequence): Replace constants with
3647         functions, mark constants as obsolete.
3648         (xterm-mouse--tracking-sequence): New helper function.
3649         (turn-on-xterm-mouse-tracking-on-terminal): Use new functions;
3650         enable UTF-8 only if customization option says so; store UTF-8
3651         flag in terminal parameter.  (Bug#23009)
3653         * test/automated/xt-mouse-tests.el: Add tests for xt-mouse.el.
3655 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
3657         Minor doc string fixes in replace.el
3659         * lisp/replace.el (query-replace, query-replace-regexp)
3660         (query-replace-regexp-eval, map-query-replace-regexp)
3661         (replace-string, replace-regexp): Clarify in doc strings that
3662         these commands operate from point to the end of the buffer's
3663         accessible portion.  (Bug#23067)
3665 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
3667         Fix scrolling upwards with 'xwidget-webkit-browse-url'
3669         * src/xwidget.c (Fxwidget_set_adjustment): Use CHECK_NUMBER instead
3670         of CHECK_NATNUM.  Suggested by Shayan Pirani <shayanpirani@gmail.com>.
3671         (Bug#22918)
3673 2016-03-25  K. Handa  <handa@gnu.org>
3675         Fix display of Indic scripts
3677         * src/ftfont.c (ftfont_shape_by_flt): For combining characters out
3678         of the range U+300...U+36F, use the "combining" FLT only with
3679         non-OTF fonts.
3681 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
3683         Fix splash screen display at startup
3685         * src/frame.c (DEFAULT_ROWS): Enlarge to 36, so that the initial
3686         window displayed by "emacs -q" has enough space to show the whole
3687         text even if it includes 2 lines talking about recovering crashes
3688         sessions.  (Bug#23074)
3690         * lisp/startup.el (use-fancy-splash-screens-p): Fix off-by-one
3691         error when computing the window-height from frame-height.
3693         * etc/NEWS: Mention the change.
3695 2016-03-25  Martin Rudalics  <rudalics@gmx.at>
3697         Describe temporary displays in Emacs manual
3699         * doc/emacs/emacs.texi (Temporary Displays): New subsubsection.
3700         * doc/emacs/windows.texi (Window Choice): Minor fixes.
3701         (Temporary Displays): New subsubsection describing display of
3702         temporary buffers and `temp-buffer-resize-mode'.
3704 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
3706         Avoid stray As next to IDLW icons
3708         * lisp/progmodes/idlw-toolbar.el (idlwave-toolbar-add-everywhere):
3709         Use "" for empty labels, not "a", as the latter now displays stray
3710         "A"s (Bug#18997).
3712 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
3714         Avoid GTK 3 crash with icons and masks
3716         Problem reported by Mosè Giordano (Bug#18997).
3717         * src/gtkutil.c (xg_get_pixbuf_from_pixmap): Remove.
3718         (xg_get_pixbuf_from_pix_and_mask): Do not use
3719         xg_get_pixbuf_from_pixmap, as it is poorly documented.  Instead,
3720         invoke XGetPixel directly.  This is slow but speed is not
3721         important here.  Also, fail for unusual situations (not TrueColor,
3722         or images that are not 8 bits per sample) instead of displaying
3723         junk or crashing.
3725 2016-03-24  Juri Linkov  <juri@linkov.net>
3727         * lisp/minibuffer.el (minibuffer-completion-help): Use fit-window-to-buffer
3729         instead of shrink-window-if-larger-than-buffer.  (Bug#23092)
3731 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
3733         Define make_save_ptr_ptr unconditionally
3735         * src/alloc.c (make_save_ptr_ptr): Remove the !(defined
3736         USE_X_TOOLKIT || defined USE_GTK) conditional.  Reported by
3737         Philipp Stephani <phst@google.com>.  (Bug#23101)
3739 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
3741         Preserve current buffer when popping up TTY menus
3743         * src/term.c (tty_menu_show): Be sure to save and restore the
3744         current buffer around TTY menu pop-ups.  (Bug#23101)
3746 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
3748         Improve font selection by family on MS-Windows
3750         * src/w32font.c (w32font_list_internal): Allow 'ascii-0' charset,
3751         in addition to 'iso10646-1', 'unicode-bmp', and 'unicode-sip'.
3752         This avoids rejecting many font families whose members are shown
3753         by 'font-family-list', in particular 'courier' requested by
3754         info.el.  Without this change, many values of ':family' attribute
3755         of a face have no effect on MS-Windows, because they are rejected
3756         due to bogus mismatch of the charset.
3758 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
3760         Comint, term, and compile now set EMACS
3762         This fixes directory tracking in ansi-term, at the expense of
3763         breaking some usages of 'configure'.  Setting EMACS is meant to be
3764         a somewhat temporary measure, until Bash 4.4 comes out and is
3765         common.  (Bug#20484).
3766         * etc/NEWS: Document this.
3767         * lisp/comint.el (comint-exec-1):
3768         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
3769         * lisp/progmodes/compile.el (compilation-start):
3770         * lisp/term.el (term-exec-1):
3771         Go back to setting the EMACS environment variable, for backward
3772         compatibility to Bash 4.3 and earlier.
3774 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
3776         Ignore more merges when generating ChangeLog
3778         * build-aux/gitlog-to-emacslog: Ignore all merges from gnu.org,
3779         not merely those from master and emacs-NN.  The ChangeLog entries
3780         they generate are not that useful.
3782 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
3784         Sync with gnulib
3786         This incorporates:
3787         2016-03-22 gitlog-to-changelog: suppress ignored chatter
3788         2016-03-21 sys_select: port to new Cygwin
3789         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
3790         * lib/sys_select.in.h: Copy from gnulib.
3792 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
3794         Resurrect GNUS-NEWS autogeneration
3796         * doc/misc/gnus-coding.texi (Gnus Maintenance Guide): Update
3797         GNUS-NEWS section to match current file locations and procedure.
3798         * etc/GNUS-NEWS: Regenerate by using new procedure.
3799         * lisp/Makefile.in (update-gnus-news): New rule, containing a
3800         procedure for building GNUS-NEWS.  The old procedure got lost
3801         somehow when Gnus was merged into Emacs.
3803 2016-03-22  Anders Lindgren  <andlind@gmail.com>
3805         Make `toggle-frame-maximized' respect the dock on OS X (bug#22988).
3807         * src/nsterm.m (ns_screen_margins): New function.
3808         (ns_screen_margins_ignoring_hidden_dock): New function.
3809         (ns_menu_bar_height): Reimplement in terms of `ns_screen_margins'.
3810         ([EmacsWindow zoom:]): Take all screen margins (except those
3811         originating from a hidden dock) into account.
3813 2016-03-22  Eli Zaretskii  <eliz@gnu.org>
3815         Fix bug in displaying header line with a box face
3817         * src/xdisp.c (get_next_display_element): Handle the case when a
3818         display string acquires the box face from an underlying string,
3819         not from the buffer.  (Bug#23091)
3821 2016-03-21  Kaushal Modi  <kaushal.modi@gmail.com>
3823         Fix an Isearch var to be a string (Bug#23038)
3825         * lisp/isearch.el (isearch--describe-regexp-mode): The `description' var
3826           needs to always be a string.  Add the missing default case for the
3827           cond form that ensures that.
3829         Before this bug fix, for the events when `regexp-function' and
3830         `search-default-mode' both were nil, `description' also stayed nil.  So
3831         when `space-before' was non-nil, the "non-string" `description'
3832         (with a value of nil) got passed as an argument to
3833         `replace-regexp-in-string' (where a string was expected).  That caused
3834         the error described in Bug#23038.
3836 2016-03-21  Leo Liu  <sdl.web@gmail.com>
3838         Fix (args-out-of-range 1) error in cursor-sensor--detect
3840         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
3841           hard-code (point-min) as 1 which fails in narrowed buffers.
3843 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3845         Render empty <ul><li><ul> correctly
3847         * lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
3848         correctly (bug#22964).
3849         (cherry picked from commit 4f6ea3988b66cf132c67fd0cc26d12eb9a300ba1)
3851         Backport:
3853 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3855         Ignore invalid base64 encoded embedded images
3857         * lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
3858         encoded embedded images (bug#22928).
3859         (cherry picked from commit f2da80d0e1ccd121c4891e869a45aeb9c6b1795d)
3861         Backport:
3863 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
3865         Fix <p> and <div> newlines with or without <li> in shr
3867         * lisp/net/shr.el (shr-ensure-newline): Respect that we're in
3868         a <li>, if we are, and don't insert newlines there.
3869         (shr-ensure-paragraph): When mixing newlines and paragraph
3870         ensurements, don't insert too many blank lines.
3871         (shr-tag-div): A <div> shouldn't introduce a paragraph, but a
3872         new line.
3873         (cherry picked from commit 292921facaff2f02ac4e8602c1f7ecbdcfe7ef45)
3875         Backport:
3877 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
3879         Avoid errors in 'newline'
3881         * lisp/simple.el (newline): Don't barf if invoked with
3882         non-positive argument in the middle of a line.  (Bug#22490)
3884 2016-03-19  Michael Albinus  <michael.albinus@gmx.de>
3886         Fix Bug#23032
3888         * doc/misc/eshell.texi (Arguments): Mention the pipe symbol in
3889         remote file names.  (Bug#23032)
3891 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
3893         Adjudicate review comments in abbrevs.texi
3895         * doc/lispref/abbrevs.texi (Abbrev Files, Abbrev Expansion):
3896         * doc/emacs/abbrevs.texi (Dabbrev Customization): State the
3897         default values of variables.  Suggested by Steve Byrne
3898         <sbb@penguinis.org>.  (Bug#23016)
3900         * admin/release-process (Check manuals): Mark files reviewed by
3901         Steve Byrne.
3903 2016-03-18  Dmitry Gutov  <dgutov@yandex.ru>
3905         Fixup the "normal" matcher; highlight global var symbols, too
3907         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight
3908         operator name symbols with the "normal" matcher (it actually
3909         needed updating).  Highlight global variable symbols, too.
3911 2016-03-18  Marcin Borkowski  <mbork@mbork.pl>
3913         Honor prefix arg in doc-view-next-line-or-next-page
3915         * lisp/doc-view.el (doc-view-next-line-or-next-page): Take the
3916         prefix argument into consideration when continuous scrolling is
3917         not in effect (i.e., by default) (bug#19559).
3919 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
3921         Port to strict C99 offsetof
3923         * src/bidi.c (bidi_copy_it):
3924         * src/lisp.h (CHAR_TABLE_EXTRA_SLOTS):
3925         Use only a single identifier as the second argument of offsetof.
3926         Found by using clang -pedantic.
3928 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
3930         Port to GTK with strict C11 compiler
3932         * src/gtkutil.c (xg_create_frame_widgets, xg_toggle_notify_cb):
3933         Cast from function type to void * where the C standard requires this.
3934         This works around a problem in the prototypes for
3935         g_signal_handler_find and g_signal_handlers_block_by_func, which
3936         use gpointer instead of GCallback.  Found by using gcc -pedantic.
3938 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
3940         Port to GTK with strict C99 compiler
3942         * src/emacsgtkfixed.c: Use workaround for GNOME bug 683906 only
3943         in glib 2.35.6 and earlier, since the bug is fixed in 2.35.7.
3944         * src/emacsgtkfixed.c (EmacsFixedPrivate):
3945         * src/emacsgtkfixed.h (EmacsFixedClass):
3946         Remove duplicate typedef, which strict C99 does not allow (Bug#23003).
3948 2016-03-17  Anders Lindgren  <andlind@gmail.com>
3950         Avoid screen artifacts with new OS X visible bell after scrolling
3952         * src/nsterm.m (EmacsBell): Save NSView when displaying the
3953         visible bell and set `needsDisplay' when removed.
3954         (hide_bell): Trace.
3955         (ns_copy_bits): Trace.
3957 2016-03-17  Michael Albinus  <michael.albinus@gmx.de>
3959         Suppress some Tramp tests for OSX, do not merge with master
3961         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
3962         (tramp--test-utf8): Use it.  (Bug#22145)
3964 2016-03-17  Glenn Morris  <rgm@gnu.org>
3966         * lisp/progmodes/xref.el (xref-buffer-name, xref--window):
3967         Move definitions before use.
3969         * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
3971         * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
3973 2016-03-17  Glenn Morris  <rgm@gnu.org>
3975         Address compilation warnings due to 2016-01-03 mml refactoring.
3977         * lisp/gnus/mml-sec.el (password-cache, mm-encode): Require.
3978         (message-options-get): Autoload.
3979         (message-options-set): Declare.
3980         (mml-secure-cache-passphrase, mml-secure-passphrase-cache-expiry):
3981         Simplify default value.
3982         * lisp/gnus/mml-smime.el (message-options-set): Remove declaration.
3983         * lisp/gnus/mml1991.el, lisp/gnus/mml2015.el:
3984         No longer a need for password-cache.
3986 2016-03-16  Stefan Monnier  <monnier@iro.umontreal.ca>
3988         * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp in strings
3990         (bug#22960).
3992 2016-03-16  Glenn Morris  <rgm@gnu.org>
3994         * lisp/dired-x.el (dired-omit-here-always): Correct error message
3995         for 2016-01-25 change.
3997         * lisp/dired-x.el (dired-omit-here-always): Replace undefined function
3998         removed 2016-01-30.
4000         * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
4002 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
4004         Avoid segfaults due to frame image cache being absent
4006         * src/image.c (cache_image): If the frame doesn't have an image
4007         cache, create it.  (Bug#23028)
4009 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
4011         Improve documentation of glyphless-character display
4013         * doc/emacs/display.texi (Text Display): Document and index the
4014         'glyphless-char' face.
4016 2016-03-16  Dmitry Gutov  <dgutov@yandex.ru>
4018         Support safe navigation operator in non-SMIE indentation code
4020         * lisp/progmodes/ruby-mode.el (ruby-calculate-indent):
4021         Support safe navigation operator in non-SMIE indentation code.
4022         Cherry-picked from
4023         https://github.com/ruby/ruby/commit/68e16ddd7961b86e5013e62ae2954e88638de058.
4025 2016-03-16  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
4027         Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
4029         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
4030         assume xsd:base64Binary values are UTF-8 strings.
4031         (soap-decode-xs-basic-type): Likewise.
4032         (soap-invoke): Document xsd:base64Binary handling.
4034 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
4036         Fix Ruby's operator precedence
4038         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
4039         Rearrange the smie-precs->prec2 form.
4041 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
4043         (ruby-interpolation-inside-another-interpolation): New failing test
4045         * test/automated/ruby-mode-tests.el
4046         (ruby-interpolation-inside-another-interpolation):
4047         New failing test.
4049 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
4051         Port to clang 3.7.0 on x86-64
4053         * configure.ac: Use AS_IF so that gl_WARN_ADD’s prerequisites are
4054         not done conditionally.  This helps clang, which needs
4055         -Wunknown-warning-option later when configured with warnings.
4056         * src/editfns.c (invalid_time): Now _Noreturn, since clang isn’t
4057         smart enough to figure this out on its own if warnings are enabled.
4058         (lisp_time_struct): Redo for clarity, and to pacify clang.
4059         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Don’t use
4060         uninitialized locals.  This avoids undefined behavior and pacifies
4061         clang.
4063 2016-03-15  Glenn Morris  <rgm@gnu.org>
4065         * test/automated/package-test.el (package-test-signed): Tweak skip
4066         condition, for hydra.
4068 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
4070         Sync with gnulib
4072         This incorporates:
4073         2016-03-15 time_rz: port to clang -Wunused-const-variable
4074         2016-03-15 select: port more to Intel 2016.1.150 compiler
4075         * lib/sys_select.in.h, lib/time_rz.c: Copy from gnulib.
4077 2016-03-15  Eli Zaretskii  <eliz@gnu.org>
4079         Fix startup of "emacs -nw" on systems that CANNOT_DUMP
4081         * src/xdisp.c (syms_of_xdisp) <resize-mini-windows>: Initialize to
4082         nil.
4084         * lisp/loadup.el <resize-mini-windows>: Set to 'grow-only' after
4085         loading window.el.  (Bug#22975)
4087 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
4089         Do not tokenize a comment before continuation as ';'
4091         * lisp/progmodes/ruby-mode.el (ruby-smie--implicit-semi-p):
4092         Account for a comment right after point.
4094 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
4096         Don't misindent arguments of a method call inside continuation
4098         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
4099         Use smie-indent-virtual instead of smie-rule-parent (bug#23015).
4100         Simplify the traversal loop.
4102 2016-03-14  Stefan Monnier  <monnier@iro.umontreal.ca>
4104         * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_echo_area
4106         (read_key_sequence): Test it here, as before.
4107         (bug#22825).
4109 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
4111         ASCII-only etc/NEWS etc.
4113         * etc/NEWS, nextstep/README: Revert the recently-added curved
4114         quotes, and stick to ASCII.  This typically involves replacing
4115         curved with straight quotes.  Since etc/NEWS is viewed so often by
4116         UTF-8-ignorant tools, rewrite its non-ASCII text to spell out
4117         Unicode, e.g., replace ‘‒’ with ‘U+2012 (FIGURE DASH)’.
4119 2016-03-14  Alan Mackenzie  <acm@muc.de>
4121         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
4123         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
4125         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
4126         rather than just using the cache variable c-state-cache.
4127         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
4128         to c-parse-state from other uses of the parse state cache.
4130         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
4131         c-self-bind-state-cache around the processing, replacing flawed bindings of
4132         c-state-cache.
4134 2016-03-14  Alan Mackenzie  <acm@muc.de>
4136         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
4138         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
4140         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
4141         rather than just using the cache variable c-state-cache.
4142         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
4143         to c-parse-state from other uses of the parse state cache.
4145         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
4146         c-self-bind-state-cache around the processing, replacing flawed bindings of
4147         c-state-cache.
4149 2016-03-14  Kaushal Modi  <kaushal.modi@gmail.com>
4151         Fix Isearch prompt when invoked with an argument
4153         * lisp/isearch.el (isearch--describe-regexp-mode): With
4154         `search-default-mode' set to nil, if user does C-u C-s, the minibuffer
4155         now displays "Regexp I-search: " again.  But if the user has set
4156         `search-default-mode' to t, and then does C-s, the minibuffer now
4157         displays "I-search: " because the default search mode is now regexp
4158         mode.  Comments have been added to explain the priority of conditions
4159         in the `cond' form.  (Bug#22991)
4161 2016-03-14  Cesar Quiroz  <cesar.quiroz@gmail.com>  (tiny change)
4163         Fix a typo in the Emacs manual
4165         * doc/emacs/maintaining.texi (VC Directory Commands): Fix a typo
4166         in a command name.
4168 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
4170         Curved quotes in etc/NEWS etc.
4172         * etc/NEWS, nextstep/README: Prefer curved quotes in the
4173         recently-changed text documentation.  See:
4174         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg00860.html
4176 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
4178         Fix some single quotes in documentation
4180         * doc/emacs/anti.texi (Antinews): Avoid confusion in info and PDF
4181         when documenting quoting styles.
4182         * etc/NEWS, nextstep/README: In these plain text files, quote
4183         'like this' consistently, rather than also (sometimes) ‘like this’
4184         or (more often) `like this'.
4186 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
4188         Make lisp-completion-at-point's argument optional
4190         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point): Make
4191         the argument optional, like it was before the rename.
4193 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
4195         Tweak the left precedence of '=>'
4197         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar): Tweak the left
4198         precedence of '=>', to improve indentation and sexp navigation.
4200 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
4202         Indent '.' relative to the first sibling expression
4204         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
4205         Indent '.' relative to the first sibling expression, instead of the
4206         parent token (bug#17213).
4208 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
4210         Make '.' associative, for easier sexp navigation
4212         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
4213         Make '.' associative, for easier sexp navigation.
4215 2016-03-13  Phillip Lord  <phillip.lord@russet.org.uk>
4217         Revert "Simplify "Visit New File" to "New File""
4219         This reverts commit d457fd9dc782465e1547f74021390c9d5951d6af.
4221 2016-03-12  Phillip Lord  <phillip.lord@russet.org.uk>
4223         Simplify "Visit New File" to "New File"
4225         * doc/emacs/files.texi, lisp/menu-bar.el (menu-bar-file-menu),
4226           lisp/startup.el(normal-mouse-start-screen,
4227           normal-no-mouse-startup-screen): Change label "Visit New File" to "New
4228           File".
4230 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
4232         Update Unicode notes for importing a new Unicode version
4234         * admin/notes/unicode: Mention the need to update otf-script-alist
4235         in fontset.el when importing data files from a new Unicode
4236         version.
4238 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
4240         Import new data files from Unicode 9.0.0beta
4242         * admin/unidata/UnicodeData.txt:
4243         * admin/unidata/Blocks.txt:
4244         * admin/unidata/BidiMirroring.txt:
4245         * admin/unidata/BidiBrackets.txt: Update from Unicode 9.0.0beta.
4246         * admin/unidata/unidata-gen.el (unidata-gen-files): Bind
4247         'coding-system-for-read' to 'utf-8, as various Unicode data files
4248         now actually use non-ASCII characters.
4249         (unidata-setup-list, unidata-get-name): Support the new Tangut
4250         Ideographs block.
4252         * lisp/international/characters.el (standard-case-table): Add new
4253         characters from Unicode 9.0.0.
4254         (standard-category-table): Add Arabic block u+08A0..u+08FF.  Add
4255         Cyrillic Extended-C block.
4256         (char-width-table): Update ranges per Unicode 9.0.0.
4257         * lisp/international/fontset.el (script-representative-chars): Add
4258         new scripts defined by Unicode 9.0.0.
4259         (otf-script-alist): Add new OTF script tags.
4260         * lisp/international/mule-cmds.el (ucs-names): Update ranges per
4261         Unicode 9.0.0 additions.
4263 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
4265         Avoid errors in forms-mode when default major mode is text
4267         * lisp/forms.el (forms-mode): Bind
4268         change-major-mode-with-file-name to nil when calling
4269         set-visited-file-name.  (Bug#22982)
4271 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
4273         Avoid crashes at startup on systems that CANNOT_DUMP
4275         * src/xdisp.c (syms_of_xdisp) <redisplay--inhibit-bidi>: New
4276         boolean variable.
4277         (init_iterator, reseat_to_string)
4278         (Fcurrent_bidi_paragraph_direction)
4279         (Fbidi_find_overridden_directionality): Use
4280         redisplay--inhibit-bidi instead of purify-flag, to determine when
4281         it's safe to reorder bidirectional text.
4283         * lisp/loadup.el (redisplay--inhibit-bidi): Set to t at the
4284         beginning of the file.  Reset to nil when charprop.el is
4285         successfully loaded, or when we are going to dump, whichever
4286         happens last.  (Bug#22975)
4288 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
4290         Fix documentation of seq.el functions
4292         * doc/lispref/sequences.texi (Sequence Functions): Fix typos.  Add
4293         cross-references.  Fix formatting.  (Bug#22992)
4295 2016-03-11  Dmitry Gutov  <dgutov@yandex.ru>
4297         Support Ruby 2.3.0's safe navigation operator
4299         * lisp/progmodes/ruby-mode.el (ruby-smie--forward-token)
4300         (ruby-smie--backward-token): Tokenize '&.' as '.'.
4301         (ruby-smie--implicit-semi-p): Check for possible '&' before '.'.
4303         * test/indent/ruby.rb: Add an example using safe navigation
4304         operator.  Fix a syntax error in existing example.
4306 2016-03-11  John Wiegley  <johnw@newartisans.com>
4308         Update Emacs manual section related to character folding
4310         * doc/emacs/search.texi: Character folding is not on by default.
4312 2016-03-11  Eli Zaretskii  <eliz@gnu.org>
4314         Update admin/notes/unicode
4316         * admin/notes/unicode: Update the list of files from the UCD we
4317         are using.  Mention the possible need to change 'ucs-names' when
4318         importing a new version of the Unicode Standard.
4320 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
4322         Add symref-filepattern entries for c?perl-mode
4324         * lisp/cedet/semantic/symref/grep.el
4325         (semantic-symref-filepattern-alist): Add entries for perl-mode and
4326         cperl-mode.
4328 2016-03-10  Ken Raeburn  <raeburn@raeburn.org>
4330         Don't use XRANDR 1.3 extensions if the server doesn't support them.
4332         * src/xterm.h (struct x_display_info): Add fields to save XRANDR
4333         version number.
4334         * src/xfns.c (x_get_monitor_attributes): Save the version numbers
4335         after querying the X server.
4336         (x_get_monitor_attributes_xrandr): Don't use XRRGetOutputPrimary or
4337         XRRGetScreenResourcesCurrent if the server doesn't support at least
4338         RANDR version 1.3.  Conditionalize the code blocks on compiling
4339         against library version 1.3 or better, rather than feature tests for
4340         each function.
4341         * configure.ac: Stop testing for those two functions.
4343 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
4345         Sync with gnulib
4347         This incorporates:
4348         2016-03-08 intprops: make .h file license match module
4349         2016-03-08 acl: fix missing return on Cygwin
4350         2016-03-05 extern-inline: port to PGI CC
4351         * doc/misc/texinfo.tex, lib/intprops.h, lib/set-permissions.c:
4352         * m4/extern-inline.m4:
4353         Copy from gnulib.
4355 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
4357         Rework C source files to avoid ^(
4359         Work around Bug#22884 by rewording comments and strings to avoid ‘(’
4360         at the start of a line unless it starts a function.  This change
4361         is a short-term hack; in the longer run we plan to fix cc-mode’s
4362         performance for C files that have ‘(’ at the start of a line in a
4363         comment or string.
4365 2016-03-10  Eli Zaretskii  <eliz@gnu.org>
4367         By default, etags produces unqualified Perl tag names
4369         * lib-src/etags.c (Perl_functions): Produce unqualified names,
4370         unless -Q was specified.
4371         (print_help): Update the description of -Q.
4373         * doc/man/etags.1: Update the documentation of -Q.
4375         * test/etags/ETAGS.good_1:
4376         * test/etags/ETAGS.good_2:
4377         * test/etags/ETAGS.good_3:
4378         * test/etags/ETAGS.good_4:
4379         * test/etags/ETAGS.good_5:
4380         * test/etags/CTAGS.good: Adapt the expected test results to the
4381         changed Perl functionality.
4383 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
4385         Indent methods with keyword names correctly
4387         * lisp/progmodes/ruby-mode.el (ruby-smie--at-dot-call):
4388         Rename to ruby-smie--before-method-name.  Now also check if we're
4389         after a 'def' keyword.  Update both callers.
4391 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
4393         Propertize character literals and special global variables differently
4395         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Propertize
4396         character literals and global variables with special names with
4397         prefix and symbol syntax classes, for SMIE to tokenize them
4398         together automatically.
4399         (ruby-font-lock-keywords): Fix an old regression in highlighting
4400         character literals.
4402 2016-03-09  John Wiegley  <johnw@newartisans.com>
4404         Change how /etc/NEWS presents character folding
4406         * NEWS: Note that character folding is no longer the default.
4408 2016-03-09  John Wiegley  <johnw@newartisans.com>
4410         Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding off by default""
4412         This reverts commit a91b4b51ddf2575d821adb8b84fdf32cff83886e.
4414 2016-03-09  Andreas Schwab  <schwab@linux-m68k.org>
4416         Properly handle lambda as read function (bug 22961)
4418         * src/lread.c (readchar): Be more strict about checking for
4419         string in cons for read_vector.
4420         (unreadchar): Likewise.
4422 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
4424         Propertize operator symbol names with symbol syntax class
4426         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
4427         Do it here.
4428         (ruby-font-lock-keywords): Instead of handling them here.  Leave
4429         highlighting them to the "normal" matcher, because now we can.
4430         (ruby-smie--forward-token, ruby-smie--backward-token):
4431         Likewise, don't special-case operator symbols anymore.
4432         (ruby-smie--args-separator-p): Simplify the regexp, match operator
4433         names with \s_.
4434         (ruby-smie--implicit-semi-p): Handle the special cases of ? and =
4435         at EOL the same way: check if the character has been assigned the
4436         symbol syntax class by syntax-propertize.
4438 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
4440         Stop recognizing :#{} as symbol in ruby-mode
4442         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Remove
4443         the weird part that recognized colon followed by interpolation
4444         construct without quotes (e.g. ':#{abc}') as symbol, which is just a
4445         syntax error in any modern version of Ruby.  Fix nearby bug reference.
4447 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
4449         Allow using the left shift operator without spaces on both sides
4451         * lisp/progmodes/ruby-mode.el (ruby-singleton-class-p): Rename to
4452         ruby-verify-heredoc, reverse the meaning of the return value, and
4453         short-circuit if preceded by a symbol not separated by whitespace.
4455         * test/automated/ruby-mode-tests.el (ruby-no-heredoc-left-shift)
4456         (ruby-no-heredoc-class-self): New tests.
4458 2016-03-08  Andreas Schwab  <schwab@linux-m68k.org>
4460         Properly handle unquoting in wdired (bug 22938)
4462         The recorded old names are not quoted, don't unquote them.
4464         * lisp/wdired.el (wdired-normalize-filename): Add argument
4465         unquotep, only unquote if non-nil.
4466         (wdired-get-filename): Don't unquote the old file name.
4467         (wdired-get-previous-link): Always unquote.
4469 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
4471         Allow splat operator before percent literal
4473         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
4474         Allow splat operator before percent literal.
4476 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
4478         Don't apply the return value of goto-char as syntax class
4480         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Don't
4481         apply the return value of goto-char as syntax class.
4483 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
4485         Guard against nested percent literals
4487         * lisp/progmodes/ruby-mode.el
4488         (ruby-syntax-propertize-percent-literal):
4489         Don't check the syntax status.
4490         (ruby-syntax-propertize): Check it here.  And also guard against
4491         being in a larger percent literal.
4493         * test/automated/ruby-mode-tests.el
4494         (ruby-no-nested-percent-literals): New test.
4496 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
4498         Recognize iuwu-mod after an escaped newline
4500         * lisp/progmodes/ruby-mode.el (ruby-smie--bosp): Check if the
4501         newline is escaped.
4502         (ruby-smie-rules): Indent iuwu-mod after an escaped newline
4503         correctly.
4505 2016-03-06  Andreas Schwab  <schwab@linux-m68k.org>
4507         Fix symbolic mode string conversion for s and t
4509         * lisp/files.el (file-modes-char-to-right): Fix values for ?s and
4510         ?t.
4511         (file-modes-symbolic-to-number): Default to a for ts permissions.
4513 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
4515         Update 'ucs-names' database
4517         * lisp/international/mule-cmds.el (ucs-names): Update used and
4518         unused ranges from the latest UnicodeData.txt.
4520 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
4522         Improve doc string of 'shell-command'
4524         * lisp/simple.el (shell-command): Mention that COMMAND is prompted
4525         for.  (Bug#22926)
4527 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
4529         Make the code in movemail_strftime more general
4531         * lib-src/movemail.c (movemail_strftime): Transform the format
4532         string passed by the caller instead of using a separate format
4533         string.
4535 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
4537         Speed up redisplay of binary files with long series of nulls
4539         * src/bidi.c (bidi_resolve_weak): Avoid entering a loop searching
4540         for a character needed for resolving the type of a series of BN
4541         and ET characters, as required by rule W5 of UAX#9, if the results
4542         of the resolution are known in advance, because we are at level
4543         zero, and the previous strong character was L.
4544         (bidi_resolve_neutral): Partially resurrect the optimization for a
4545         long series of control characters in an otherwise strictly L2R
4546         text.
4547         (bidi_level_of_next_char): Don't enter the loop that searches for
4548         a paragraph separator if the current character is already at base
4549         embedding level.  (Bug#22739)
4551 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
4553         Remove the highlighting support for quoting 'like this' inside Lisp docstrings
4555         Remove the highlighting support for quoting 'like this' inside
4556         Lisp docstrings.  This part of
4557         c4151ebe15479de4c2e511b068cdf9af6a4576cf seems to have been
4558         unintentional, considering substitute-command-keys gives wrong
4559         output for such usage.
4560         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
4561         (lisp-cl-font-lock-keywords-2): Do not highlight text between two
4562         straight quotes as symbol.
4564 2016-03-05  Paul Eggert  <eggert@cs.ucla.edu>
4566         Restore leading space in movemail pop output
4568         * lib-src/movemail.c (movemail_strftime) [WINDOWSNT]: New function.
4569         (strftime) [WINDOWSNT]: New macro.
4570         (mbx_delimit_begin): Go back to previous version of this code,
4571         now that there’s a special-purpose WINDOWSNT implementation
4572         that should do the right thing.  That way, the output continues
4573         to use leading space rather than leading zero for day of month.
4575 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
4577         Fix bidi-paragraph-direction in Rmail view buffer
4579         * lisp/mail/rmail.el (rmail-show-message-1): Reset
4580         bidi-paragraph-direction to nil before formatting the message for
4581         display.
4583 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
4585         Don't misindent computed property generator methods
4587         * lisp/progmodes/js.el (js--looking-at-operator-p):
4588         Don't misindent computed property generator methods
4589         (https://github.com/mooz/js2-mode/issues/317).
4591 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
4593         Fix mbox files produced by movemail on MS-Windows
4595         * lib-src/movemail.c (mbx_delimit_begin): Use portable strftime
4596         format specifiers, as at least the MS-Windows version of strftime
4597         doesn't support %e and %T.
4599 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
4601         doc string file descriptor exhaustion fix
4603         * src/doc.c (get_doc_string): Move newly-added check to a better
4604         location (Bug#22814).
4606 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4608         Fix Bug#22814
4610         * src/doc.c (get_doc_string): Raise an error in case too many
4611         files are open.  (Bug#22814)
4613 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4615         Fix insertion of edited servers in the dribble file
4617         * lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
4618         insert explicit newlines, because they're quoted (bug#22903).
4620         Backport:
4622         (cherry picked from commit ca4e30058eba0531f38fff75f14734acffab84ea)
4624 2016-03-04  Martin Rudalics  <rudalics@gmx.at>
4626         Fix previous fix of enlarge-/shrink-window
4628         * lisp/window.el (enlarge-window, shrink-window): Consistently
4629         signal user-error instead of error.  Resize minibuffer window by
4630         delta lines instead of pixels.  When a window cannot be resized,
4631         signal an error only when this function was invoked by a command
4632         in the enlarge-/shrink-window group (this restores the behavior
4633         before the fix of bug#22723 for the non-interactive case).
4635 2016-03-03  Artur Malabarba  <bruce.connor.am@gmail.com>
4637         * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
4639 2016-03-03  Mark Oteiza  <mvoteiza@udel.edu>
4641         Complete temperature units in calc-convert-temperature
4643         * lisp/calc/calc-units.el (calc-convert-temperature): Complete with
4644         temperature units in math-standard-units.
4646 2016-03-02  Dmitry Gutov  <dgutov@yandex.ru>
4648         Make sure to use case-sensitive search
4650         * lisp/progmodes/xref.el (xref-collect-references): Make sure to
4651         use case-sensitive search.
4653 2016-03-02  Ulf Jasper  <ulf.jasper@web.de>
4655         Prevent infinite loop on not-well-formed xml. (Bug#16344)
4657         * lisp/xml.el (xml-parse-tag-1): Prevent inifinite loop. (Bug#16344)
4658         * test/automated/xml-parse-tests.el (xml-parse-tests--bad-data): Add
4659           test cases for Bug#16344.
4661 2016-03-02  Alan Third  <alan@idiocy.org>
4663         Add the missing test case for the previous patch
4665         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
4666         any processing.
4667         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
4668         DABBREV--SUBSTITUTE-EXPANSION.
4669         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
4671 2016-03-02  Alan Third  <alan@idiocy.org>
4673         Use the correct dabbrev expansion
4675         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
4676         any processing.
4677         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
4678         DABBREV--SUBSTITUTE-EXPANSION.
4679         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
4681 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
4683         Bump version to 25.0.92
4685         * README:
4686         * configure.ac:
4687         * msdos/sed2v2.inp: Bump version to 25.0.92.
4689 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
4691         * etc/AUTHORS: Update the AUTHORS file
4693 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
4695         authors.el updates
4697         * admin/authors.el (authors-ignored-files): Addition.
4699 2016-03-02  Michael Albinus  <michael.albinus@gmx.de>
4701         Fix Bug#22859
4703         * lisp/filenotify.el (file-notify-callback): Return a `deleted'
4704         event in case of kqueue and file1 is nil.  (Bug#22859)
4706 2016-03-01  Eli Zaretskii  <eliz@gnu.org>
4708         Fix reordering of bidi text in an isolate inside an override
4710         * src/bidi.c (bidi_resolve_explicit): Override the orig_type value
4711         of FSI with either LRI or RLI, as determined by the first strong
4712         directional character in the isolate.  This prevents failure to
4713         isolate when the FSI...PDI text is inside a directional override.
4714         (Bug#22786)
4716 2016-03-01  Alan Mackenzie  <acm@muc.de>
4718         Document c-guess-basic-syntax in the CC Mode manual.
4720         * doc/misc/cc-mode.texi (Syntactic Analysis): Document the function, adding
4721         pxrefs to Custom Line-Up and Other Indentation.
4722         (Custom Line-Up): Add a note on using c-guess-basic-syntax with a pxref to
4723         Syntactic Analysis.
4725 2016-03-01  Michael Albinus  <michael.albinus@gmx.de>
4727         Fix targets in test/automated/Makefile.in
4729         * test/automated/Makefile.in: Use $(SELECTOR_DEFAULT) also for
4730         empty target and target all.
4732 2016-03-01  Leo Liu  <sdl.web@gmail.com>
4734         Comment on last change to define-derived-mode
4736         * lisp/emacs-lisp/derived.el (define-derived-mode): Add comment.
4738 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
4740         Allow binding `url-mime-accept-string'
4742         * lisp/url/url-http.el (url-http): Allow binding
4743         `url-mime-accept-string' (bug#22855).
4745         Backport:
4747         (cherry picked from commit 144bb0cf322b9756d29def3e27a42303e2edce43)
4749 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
4751         Also allow setting the paragraph direction to nil
4753         * lisp/net/eww.el (eww-toggle-paragraph-direction): Also allow
4754         setting the paragraph direction to nil ("auto").
4756 2016-02-29  Anders Lindgren  <andlind@gmail.com>
4758         Made the new OS X visible bell more visible.
4760         * src/nsterm.m: (EmacsBell:init:) Scaled up the visible bell
4761           "caution" image five times, as the image in its original size
4762           was hard to see.
4764 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
4766         Use the correct background color when filling nested <divs>
4768         * lisp/net/shr.el (shr-face-background): Return the first
4769         background, because that's the one that's visible (bug#22680).
4771         Backport:
4773         (cherry picked from commit cad0bc70558f9c28c808711c5295dec9fc5ad6e5)
4775 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
4777         Make <div> in <li> not insert extra newlines
4779         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
4780         extra newlines (bug#19587).
4782         Backport:
4784         (cherry picked from commit 379a846b8548dc32a9019ef0a37c02f62cd9bad1)
4786 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
4788         Uncomment the next-error-function integration in xref
4790         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
4791         Uncomment the next-error-function integration
4792         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20489#110).
4794 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
4796         Remove the word "valid", to avoid ambiguity
4798         * doc/emacs/maintaining.texi (Identifier Search)
4799         (Looking Up Identifiers): Remove the word "valid" (bug#22692).
4801 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
4803         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
4805 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
4807         Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
4809         * etc/NEWS:
4810         * etc/PROBLEMS: Mention this.
4812         * lisp/autorevert.el (global-auto-revert-mode): Set
4813         `auto-revert-use-notify' to nil.  (Bug#22814)
4815 2016-02-28  Paul Eggert  <eggert@cs.ucla.edu>
4817         * etc/TODO: Minor quoting and grammar fixes.
4819 2016-02-28  Friedrich Beckmann  <friedrich.beckmann@gmx.de>  (tiny change)
4821         Fix ModelSim error parsing
4823         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist): Fix
4824         ModelSim error parsing (bug#5768).
4826 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
4828         Make parse-time-string-chars faster
4830         * lisp/calendar/parse-time.el (parse-time-string-chars): Clean
4831         up the code (backport:).
4833 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
4835         Add a eww command to toggle paragraph direction
4837         * lisp/net/eww.el (eww-toggle-paragraph-direction): New
4838         command and keystroke.
4840         * doc/misc/eww.texi (Advanced): Mention the `D' command.
4842 2016-02-27  Glenn Morris  <rgm@gnu.org>
4844         * nextstep/WISHLIST: Merge into etc/TODO and remove.
4846         * etc/TODO: Merge in items from nextstep/WISHLIST.
4847         * nextstep/README: Update for this change.
4849 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
4851         Fix char signedness issue in bidi code
4853         * src/dispextern.h (struct bidi_t): Change type of resolved_level
4854         and isolate_level to signed char.  (Bug#22830)
4856 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
4858         * lib-src/pop.c (socket_connection): Fix format string.
4860 2016-02-27  Eli Zaretskii  <eliz@gnu.org>
4862         Avoid inflooping in thing-at-point-looking-at
4864         * lisp/thingatpt.el (thing-at-point-looking-at): Avoid inflooping
4865         with regular expressions whose matching doesn't move point.
4866         (Bug#22756)
4867         Describe the argument DISTANCE in the doc string.
4869 2016-02-27  Leo Liu  <sdl.web@gmail.com>
4871         * lisp/emacs-lisp/derived.el (define-derived-mode): Revert indent change.
4873 2016-02-26  Michael Albinus  <michael.albinus@gmx.de>
4875         etc/PROBLEMS: Mention problems with using file descriptors
4877         * etc/PROBLEMS: Mention problems with using file descriptors
4878         of kqueue file notification library.
4880 2016-02-26  Kaushal Modi  <kaushal.modi@gmail.com>
4882         * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
4884 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
4886         Remove unneeded workaround in xftfont.c
4888         * src/xftfont.c (xftfont_open): Remove "dirty workaround" for
4889         XftTextExtents8 behavior, as it is no longer needed.  Suggested by
4890         Fangwen Yu <yynyygy@gmail.com>.  (Bug#22383)
4892 2016-02-25  Stefan Monnier  <monnier@iro.umontreal.ca>
4894         * lisp/saveplace.el (save-place-local-mode): New minor mode
4896         (toggle-save-place): Define as obsolete alias.
4897         (save-place--setup-hooks): New function.
4898         (save-place-mode): Use it.
4900 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
4902         Fix redisplay on a TTY after 'make-frame'
4904         * src/xdisp.c (clear_garbaged_frames): Don't clear/redraw a
4905         garbaged TTY frame if it is not the selected frame.  (Bug#22794)
4907 2016-02-25  Alan Mackenzie  <acm@muc.de>
4909         Make double-click-1 work with unbalanced parens in CC Mode.  Fixes bug#5560.
4911         * lisp/mouse.el (mouse-start-end): check the syntax of alleged parens with
4912         `syntax-after' to ensure syntax-table text properties are respected.
4914 2016-02-25  Magnus Henoch  <magnus.henoch@gmail.com>
4916         Input method polish-slash should not use keyboard translation
4918         * lisp/leim/quail/latin-pre.el ("polish-slash"): Input method
4919         polish-slash should not use keyboard translation (bug#19081).
4921 2016-02-25  Chris Feng  <chris.w.feng@gmail.com>
4923         Fix an assertion
4925         * src/dispnew.c (clear_glyph_matrix_rows): Test matrix->nrows == 0 (which
4926         implies start == 0) separately.
4928 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
4930         Fix 'toggle-save-place'
4932         * lisp/saveplace.el (toggle-save-place): Set up hooks necessary to
4933         support save-place in the buffer.  Autoload the command.
4935 2016-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
4937         * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
4939         * src/keyboard.c (read_key_sequence): Don't inadvertently set
4940         immediate_echo when we don't want any echo-keystrokes.
4941         (echo_keystrokes_p): Move earlier.
4943 2016-02-24  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
4945         Minor fixes in calculator.el
4947         * lisp/calculator.el (calculator-mode-map): Bind `E' for
4948         `calculator-exp'.
4949         (calculator-last-input): Fix a bug with pressing F1.
4950         (Bug#20764)
4952 2016-02-24  Anders Lindgren  <andlind@gmail.com>
4954         Update HISTORY section in readme for the NextStep interface.
4956         * nextstep/README: Update HISTORY after suggestion
4957         from former maintainer Adrian Robert.
4959 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
4961         Improve documentation of 'save-place-mode'
4963         * lisp/saveplace.el (toggle-save-place): Update the doc string wrt
4964         turning on 'save-place-mode' globally.
4966         * etc/NEWS: Mention the need to call 'save-place-mode' for turning
4967         on the mode in all buffers.
4969 2016-02-24  Chris Feng  <chris.w.feng@gmail.com>  (tiny change)
4971         Allocate glyph matrices for the initial frame
4973         * src/frame.c (make_initial_frame): Allocate glyph matrices (Bug#22787).
4975         * src/dispnew.c (clear_glyph_matrix_rows): matrix->nrows can be 0.
4977 2016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
4979         Fix white space in last checkin
4981 2016-02-24  Dima Kogan  <gnuplot@dima.secretsauce.net>
4983         Make `insert-pair' always leave the cursor where documented
4985         * lisp/emacs-lisp/lisp.el (insert-pair): The docstring of
4986         insert-pair states that after insertion, the point ends up
4987         after the opening character. This was not true if the pair was
4988         inserted to surround a region (bug#16949).
4990 2016-02-24  Kaushal Modi  <kaushal.modi@gmail.com>
4992         etc/NEWS: Mention the new second parameter to `package-install'
4994         * etc/NEWS: Mention the new second parameter to
4995         `package-install' (bug#22784).
4997 2016-02-24  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
4999         Highlight assignments in Makefiles more correctly
5001         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
5002         Highlight assignments preceded by a TAB character correctly
5003         (bug#20787).
5006         Backport:
5008         (cherry picked from commit bbd86c5642bd62c43d72391669f28eaa14459fd5)
5010 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
5012         Improve documentation of focus-related hooks
5014         * doc/lispref/commands.texi (Focus Events): Mention focus-related
5015         hooks.  (Bug#21728)
5017 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
5019         Further improve doc string of 'disable-point-adjustment'
5021         * src/keyboard.c (syms_of_keyboard): <disable-point-adjustment>
5022         <global-disable-point-adjustment>: Clarify doc strings.  (Bug#22771)
5024 2016-02-23  Michael Albinus  <michael.albinus@gmx.de>
5026         Further adaptions in file-notify-tests.el for w32notify
5028         * test/automated/file-notify-tests.el
5029         (file-notify--test-read-event-timeout, file-notify--test-timeout):
5030         Decrease values.
5031         (file-notify-test03-autorevert)
5032         (file-notify-test04-file-validity)
5033         (file-notify-test05-dir-validity): Run tests also for w32notify.
5034         (file-notify-test08-watched-file-in-watched-dir):
5035         Adapt expected events for w32notify.
5037 2016-02-23  Jan Tatarik  <jan.tatarik@gmail.com>
5039         Don't bug out on localised dates in gnus-icalendar
5041         * lisp/gnus/gnus-icalendar.el
5042         (gnus-icalendar-event:org-timestamp): Don't bug out on
5043         localised dates.
5045 2016-02-23  Drew Adams  <drew.adams@oracle.com>
5047         (ls-lisp-insert-directory): Make -B work
5049         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
5050         (bug#20776).
5052         Backport:
5054         (cherry picked from commit ef52e66efd78aac4c4e5bd5e11870e5ba3b37a1e)
5056 2016-02-23  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
5058         Make buttons in header lines work
5060         * lisp/help-mode.el (help-button-action): `help-xref-button' in
5061         header line doesn't work (bug#21024).
5063         Backport:
5065         (cherry picked from commit c11e565a6b6d09fa39d4c3ef65bef08190eaecc1)
5067 2016-02-23  Christopher Wellons  <wellons@nullprogram.com>
5069         Make setf for frame-height/width work again
5071         * lisp/emacs-lisp/cl-lib.el (frame-height): Make setf for
5072         frame-height/width work again (bug#21979).
5074 2016-02-23  Łukasz Stelmach  <stlman@poczta.fm>
5076         Encode header strings before printing
5078         * lisp/ps-print.el (ps-generate-header-line): Encode the
5079         header strings to avoid problems with non-ASCII headers
5080         (bug#22611).
5082         Backport:
5084         (cherry picked from commit 3cedbdcc71ebefc12bd20ec84f74251fe99ee7d0)
5086 2016-02-23  Nicolas Richard  <youngfrog@members.fsf.org>
5088         (cl-union): Do not ignore :test argument when lists are equal.
5090         * lisp/emacs-lisp/cl-seq.el (cl-union): Do not ignore :test argument when lists are equal.
5092         * test/automated/cl-seq-tests.el: New file (bug#22729).
5094 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
5096         Add `isearch' to `basic-faces'
5098         * doc/lispref/display.texi (Basic Faces): Mention the isearch
5099         and lazy-highlight faces.
5101         * lisp/replace.el (match): Add `isearch' to the `basic-faces'
5102         group, too (bug#22760).
5104 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
5106         Make $, : and @ "prefix characters" in ruby-mode
5108         * lisp/progmodes/ruby-mode.el (ruby-mode-syntax-table): Change the
5109         syntax classes of $, : and @ to "prefix character"
5110         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00272.html).
5111         (ruby-syntax-propertize): Undo that specifically for colons
5112         followed by an opening paren or bracket.
5113         (ruby-font-lock-keyword-beg-re): Include colon character.
5114         (ruby-font-lock-keywords): Adjust the constants matcher for `:'
5115         not being a symbol constituent anymore.
5117 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
5119         Make find-tag-default-bounds more strict
5121         * lisp/subr.el (find-tag-default-bounds): Delegate to
5122         bounds-of-thing-at-point (bug#22692).
5124 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
5126         Minor fixes in filenotify.el
5128         * lisp/filenotify.el (top): Require 'cl-lib.
5129         (file-notify--rm-descriptor)
5130         (file-notify--event-watched-file): Use cl-caadr.
5131         (file-notify-callback): Handle also `ignore' events from inotify.
5133 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
5135         Additional fixes for file notification
5137         * lisp/filenotify.el (top): Require 'cl when compiling.
5138         (file-notify--event-watched-file): New defun.
5139         (file-notify--rm-descriptor, file-notify-callback):
5140         Handle case of several monitors running in parallel.
5142         * test/automated/file-notify-tests.el
5143         (file-notify--test-event-test): Simplify test.
5144         (file-notify--test-with-events): Get rid of outer definition.
5145         Check also results of tests performed in callbacks.
5146         (file-notify-test02-events): No wrapping when calling
5147         `file-notify-rm-watch'.  No special checking for callback tests.
5148         (file-notify-test07-backup): Adapt expected events for gfilenotify.
5149         (file-notify-test08-watched-file-in-watched-dir): Improve.
5151 2016-02-22  Eli Zaretskii  <eliz@gnu.org>
5153         Fix documentation of 'global-disable-point-adjustment'
5155         * src/keyboard.c (syms_of_keyboard) <disable-point-adjustment>
5156         <global-disable-point-adjustment>: Doc fixes.  (Bug#22771)
5158 2016-02-22  Daiki Ueno  <ueno@gnu.org>
5160         Set file modes of pinentry socket for extra safety
5162         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
5163         (pinentry-start): Change the file modes of the socket file to 0700.
5164         This is just for extra safety since the parent directory is already
5165         protected with `server-ensure-safe-dir'.
5167 2016-02-22  Daiki Ueno  <ueno@gnu.org>
5169         Clarify GnuPG version compatibility chapter
5171         * doc/misc/epa.texi (GnuPG version compatibility): Make the gpg-agent
5172         description a bit clearer.
5174 2016-02-22  Daiki Ueno  <ueno@gnu.org>
5176         Revert "Change the default socket location for pinentry"
5178         This reverts commit e34fbdee8aca84b98393b06b2450837d175999ca.
5179         It turned out that the address is fixed in Pinentry itself.
5181 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
5183         Kill off xref--display-history
5185         Now that the core workflow keeps the xref window visible, there's
5186         less value in storing this history.  And it never was
5187         comprehensive enough to undo scrolling changes.
5188         * lisp/progmodes/xref.el (xref--display-history)
5189         (xref--save-to-history, xref-quit): Remove.
5190         (xref--show-pos-in-buf): Update accordingly.
5191         (xref--xref-buffer-mode-map): Remove xref-quit binding.
5193 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
5195         Keep the xref buffer visible until the user quits it explicitly
5197         * lisp/progmodes/xref.el (xref--pop-to-location):
5198         Rename WINDOW argument to ACTION.
5199         (xref--with-dedicated-window): New macro.
5200         (xref--show-pos-in-buf): Rename from `xref--display-position'.
5201         Add and handle new argument, SELECTED.  Use the above macro.
5202         (xref--show-location): Add SELECTED argument.
5203         (xref-show-location-at-point): Make an effort to avoid the
5204         original window when showing the location.
5205         (xref-goto-xref): Don't quit the xref window (bug#20487 and
5206         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01133.html).
5207         (xref--query-replace-1): Use xref--with-dedicated-window as well.
5208         (xref--next-error-function): Call xref--show-location instead of
5209         xref--pop-to-location.
5210         (xref--show-xrefs): Rename WINDOW argument to DISPLAY-ACTION.
5211         Only pass that value to xref--pop-to-location.  Pass the current
5212         selected window to xref-show-xrefs-function as the `window'
5213         property.
5214         (xref--find-xrefs, xref--find-definitions): Rename WINDOW argument
5215         to DISPLAY-ACTION as well.
5217 2016-02-21  Daiki Ueno  <ueno@gnu.org>
5219         Change the default socket location for pinentry
5221         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
5222         (pinentry--socket-dir): Change the default from /tmp/emacsXXX to
5223         ~/.emacs.d/pinentry.
5224         (pinentry-start): Change the file modes of the socket file to 0700.
5225         This is just for extra safety since the parent directory is already
5226         protected with `server-ensure-safe-dir'.
5228 2016-02-21  Daiki Ueno  <ueno@gnu.org>
5230         Mention how to enable pinentry feature
5232         * etc/NEWS: Mention "gpgconf --reload gpg-agent".
5233         * lisp/net/pinentry.el: Likewise.
5235 2016-02-21  Paul Eggert  <eggert@cs.ucla.edu>
5237         Sync with gnulib
5239         This incorporates:
5240         2016-02-10 stdalign: port to older HP and IBM cc
5241         * doc/misc/texinfo.tex, lib/stdalign.in.h: Copy from gnulib.
5243 2016-02-21  David Engster  <deng@randomsample.de>
5245         Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
5247         * lisp/cedet/semantic/db-mode.el (semanticdb-hooks): Do not put
5248           `semanticdb-save-all-db-idle' into `auto-save-hook'. The latter is
5249           not an idle hook, so it's not appropriate to call it there. It will
5250           already be called in the `semantic-idle-work-core-handler', which
5251           runs when Emacs is actually idle.
5253 2016-02-21  David Engster  <deng@randomsample.de>
5255         Restore point when writing semantic table to disk
5257         * lisp/cedet/semantic/db-file.el (object-write): Wrap call to
5258           `semantic-fetch-tags' in `save-excursion', since it might move point
5259           in current buffer. (Bug #22287)
5261 2016-02-21  Daiki Ueno  <ueno@gnu.org>
5263         Mention pinentry.el in epa manual
5265         * doc/misc/epa.texi (GnuPG version compatibility): New chapter,
5266         describing the differences between three GnuPG branches, and how
5267         to enable pinentry.el.
5268         (Caching Passphrases): Add xref to the compatibility chapter.
5270 2016-02-21  Michael Albinus  <michael.albinus@gmx.de>
5272         Fix Bug#22736
5274         * lisp/filenotify.el (file-notify-callback): Use the proper
5275         descriptor when calling the callback.  (Bug#22736)
5277         * test/automated/file-notify-tests.el
5278         (file-notify--test-event-handler): Deactivate trace.
5279         (file-notify-test08-watched-file-in-watched-dir): Bind
5280         `file-notify--test-tmpfile' temporarily in `dir-callback'.
5282 2016-02-21  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
5284         Grammar fix in doc string
5286         * lisp/custom.el (defgroup): Grammar fix in doc string.
5288 2016-02-20  Daiki Ueno  <ueno@gnu.org>
5290         Naming fix for consistency
5292         * lisp/epg-config.el (epg-find-configuration): Rename from
5293         `epg-configuration-find' to be consistent with other epg-* functions.
5294         Change all callers.
5296 2016-02-20  Daiki Ueno  <ueno@gnu.org>
5298         Prefer customized value for GnuPG executable
5300         * lisp/epg-config.el (epg-configuration-find): Don't check GPG
5301         configuration if it is already set with custom.  (Bug#22747)
5303 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
5305         Fix memory reservation on MS-Windows
5307         * src/w32heap.c (mmap_alloc): Reserve memory in 64KB granular
5308         units.  This avoids leaving gaps in reserved memory regions that
5309         no one can use, since memory reservation must produce 64KB-aligned
5310         addresses.  (Bug#22526)
5312 2016-02-20  Anders Lindgren  <andlind@gmail.com>
5314         Update NextStep readme and add wish list.
5316         * nextstep/README: Rewritten from scratch. New sections on
5317         "History", "Overview of Cocoa and Objective-C", "Guidelines",
5318         "Tracing Support", and "GNUStep". Expanded the "See Also" section.
5319         * nextstep/WISHLIST: New file containing list of issues and ideas
5320         associated with the NS port of Emacs.
5322 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
5324         Report also result in `file-notify--test-event-handler'
5326 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
5328         Improve file-notify-test08-watched-file-in-watched-dir
5330         * test/automated/file-notify-tests.el (file-notify--test-desc2):
5331         New variable.
5332         (file-notify--test-cleanup): Use it.
5333         (file-notify--test-event-handler): Enable trace.
5334         (file-notify-test08-watched-file-in-watched-dir): Tag it as
5335         :expensive-test.  Rewrite callbacks to use
5336         `file-notify--test-event-handler'.  Read events in loop.  Check
5337         `file-notify--test-results'.
5338         (file-notify-test08-watched-file-in-watched-dir): Fix docstring.
5340 2016-02-20  Stephen Berman  <stephen.berman@gmx.net>
5342         Fix todo-mode item date editing bugs
5344         * lisp/calendar/todo-mode.el (todo-edit-item--header): Prevent out of
5345         range error by making sure the value of the numerical month date
5346         component cannot be nil.  Prevent wrong type error on trying to edit
5347         day number in February by making sure numerical instead of string
5348         value of the year component is passed to todo-read-date.
5349         (todo-read-date): When using the numerical month date component make
5350         sure to use `*' for an arbitrary month instead of its numerical value.
5352 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
5354         Fix "[:upper:]" for non-ASCII characters
5356         * src/regex.c (re_match_2_internal): Support [:upper:] and
5357         [:lower:] for non-ASCII characters.  (Bug#18150)
5359 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
5361         Allow customising the article mode cursor behavior
5363         * doc/misc/gnus.texi (HTML): Mention gnus-article-show-cursor.
5365         * lisp/gnus/gnus-art.el (gnus-article-show-cursor): New variable.
5366         (gnus-article-mode): Use it.
5368 2016-02-20  Ari Roponen  <ari.roponen@gmail.com>
5370         Use pop-to-buffer-same-window in woman.el
5372         * lisp/woman.el (woman-really-find-file): Work around going to
5373         the wrong buffer by using `pop-to-buffer-same-window' (bug#22332).
5374         (WoMan-find-buffer): Ditto.
5376 2016-02-20  Tassilo Horn  <tsdh@gnu.org>
5378         New filenotify test for bug#22736
5380         * test/automated/file-notify-tests.el
5381         (file-notify-test08-watched-file-in-watched-dir):
5382         (file-notify--test-desc1): New filenotify test for bug#22736
5384 2016-02-20  Marcin Borkowski  <mbork@mbork.pl>
5386         Report critical battery errors
5388         * lisp/battery.el (battery-pmset): Report critical battery
5389         errors (bug#18157).
5391 2016-02-19  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
5393         Make eww message toggling message clearer
5395         * lisp/net/eww.el (eww-toggle-fonts): Make the message
5396         clearer.
5398 2016-02-19  Mark Oteiza  <mvoteiza@udel.edu>
5400         * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
5402 2016-02-18  Martin Rudalics  <rudalics@gmx.at>
5404         Fix bugs in window resizing code
5406         * lisp/window.el (adjust-window-trailing-edge): Fix mismatched
5407         parenthesis.
5408         (shrink-window, enlarge-window): Fix bug#22723 where windows
5409         with preserved size would not get resized.  Also now signal an
5410         error when the window cannot be shrunk or enlarged as requested.
5412 2016-02-17  Eli Zaretskii  <eliz@gnu.org>
5414         Fix decoding DOS EOL in a unibyte buffer
5416         * src/coding.c (decode_eol): Loop over bytes, not characters.
5417         (Bug#5251)
5419 2016-02-17  Alan Mackenzie  <acm@muc.de>
5421         Correct c-parse-state cache manipulation error.
5423         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache-1): Correct a
5424         comparison bound.  Amend comments.
5426 2016-02-17  Daiki Ueno  <ueno@gnu.org>
5428         Take advantage of new GnuPG version check function
5430         * lisp/emacs-lisp/package.el (epg-configuration-find): Declare.
5431         (package-refresh-contents): Use `epg-configuration-find' to check if EPG
5432         is usable.
5434 2016-02-17  Daiki Ueno  <ueno@gnu.org>
5436         Make GnuPG version check robuster
5438         We changed the default gpg program to "gpg2" from "gpg" in the commit
5439         f93d669a16bd3cb3f43f0c8cfd22fe18b627a6a1.  However, there are two
5440         maintained branches (2.0 and 2.1) and Emacs doesn't work well with 2.0
5441         series.  Check the actual version of "gpg2" at run time, and properly
5442         divert to "gpg" if necessary.
5443         * lisp/epg-config.el: Require 'cl-lib for `cl-destructuring-bind'.
5444         (epg-config--program-alist): New variable.
5445         (epg--configurations): New variable.
5446         (epg-configuration-find): New function.
5447         (epg-config--make-gpg-configuration): New function.
5448         (epg-config--make-gpgsm-configuration): New function.
5449         (epg-configuration): Mark as obsolete.
5450         * lisp/epg.el (epg-context): Use `epg-configuration-find'.
5452 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
5454         Fix x-load-color-file pointer signedness
5456         * src/xfaces.c (Fx_load_color_file) [!HAVE_X_WINDOWS]:
5457         For sscanf and int *, use %d, not %u.
5458         Problem found on Ubuntu 15.10 x32, which lacks X support.
5460 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
5462         * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
5464 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
5466         Follow convention for greek letter constants.
5468         * lisp/calc/calc-units.el (math-standard-units):
5469         Add "sigma" and alias σ to it.
5471 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
5473         Add Stefan-Boltzmann constant to calc units table.
5475         * lisp/calc/calc-units.el (math-standard-units):
5476         Add Stefan-Boltzmann constant.
5478 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
5480         * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
5482 2016-02-16  Glenn Morris  <rgm@gnu.org>
5484         Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
5486         * lisp/emacs-lisp/cl-generic.el (cl--generic-dispatchers):
5487         Prefill with relevant elements for term/xterm.
5489 2016-02-16  Tassilo Horn  <tsdh@gnu.org>
5491         Fix soffice UserInstallation-URL for Windows
5493         * lisp/doc-view.el (doc-view-odf->pdf-converter-soffice): Fix
5494         UserInstallation-URL when calling soffice on Windows.
5496 2016-02-16  Lars Ingebrigtsen  <larsi@gnus.org>
5498         Fix display of <pre> elements
5500         * lisp/net/eww.el (eww-display-html): Remove CRLF before
5501         parsing so that <pre> elements don't render with ^M at the end
5502         of the lines.
5504 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5506         Minor fixes in global-auto-composition-mode
5508         * lisp/emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name):
5509         Produce prettier names of globalized minor modes.
5510         * lisp/composite.el (global-auto-composition-mode): Make it a
5511         globalized mode.  (Bug#22682)
5513 2016-02-15  Alan Mackenzie  <acm@muc.de>
5515         Allow arithmetic operators inside C++ template constructs.
5517         Fixes debbugs #22486.  This corrects the previous patch with this message
5518         which was empty.
5520         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
5521         variable.
5522         (c-<>-notable-chars-re): New language variable.
5524         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
5525         c-<>-notable-chars-re in place of the former fixed string in searching for
5526         places to stop and examine.
5527         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
5528         multichar operator in place of the former c->-op-without->-cont-regexp.
5529         Add code to skip forwards over a balanced parenthesized expression.
5531 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5533         Avoid crashes in semi-malformed 'condition-case'
5535         * src/eval.c (internal_lisp_condition_case): Treat a handler
5536         '(nil)' as if it were '(nil nil)'.  (Bug#22675)
5538 2016-02-15  Alan Mackenzie  <acm@muc.de>
5540         Allow arithmetic operators inside C++ template constructs.
5542         Fixes debbugs #22486.
5544         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
5545         variable.
5546         (c-<>-notable-chars-re): New language variable.
5548         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
5549         c-<>-notable-chars-re in place of the former fixed string in searching for
5550         places to stop and examine.
5551         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
5552         multichar operator in place of the former c->-op-without->-cont-regexp.
5553         Add code to skip forwards over a balanced parenthesized expression.
5555 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5557         Fix regression with 'recent-keys' and keyboard macros
5559         * src/keyboard.c (record_char): Don't record in 'recent_keys'
5560         events that come from executing keyboard macros.  (Bug#22674)
5562 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5564         Fix wording in a doc-view.el comment
5566         * lisp/doc-view.el (doc-view--current-cache-dir): Don't use
5567         "illegal" for something that is not against the law.
5569 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5571         CONTRIBUTE cleanups and updates
5573         * CONTRIBUTE: Mention URLs and info nodes more consistently,
5574         avoiding possibly-confusing punctuation adjacent to a URL, and
5575         giving full shell commands for 'info'.  Start with a brief but
5576         complete how-to, for people who want to get started right away.
5577         Then briefly discuss how to join the development process in the
5578         typical order.  Omit needless words.  Update some of the
5579         now-obsolete file names, info node names, and quoting styles.
5580         Better document emacs-NN branches and how they are merged.
5581         * admin/notes/git-workflow: Change emacs-24 to emacs-25,
5582         and trunk to master.  This file still needs work.
5584 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
5586         Port USE_STACK_LISP_OBJECTS fix to Clang
5588         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false for Clang.
5589         Recent versions of Clang claim to be GCC 4.2.1 but do not have
5590         the GCC bug.
5592 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
5594         Port to x86 GCC 4.3.1 and earlier
5596         This tries to port to x86 FreeBSD 9, where Emacs dumps core (Bug#22065).
5597         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false
5598         for GCC 4.3.1 and earlier.
5600 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
5602         Fix point movement under 'scroll-conservatively'
5604         * src/xdisp.c (redisplay_window): Correct a typo in computing the
5605         effective number of text lines in a window.  (Bug#22637)
5607 2016-02-14  Thomas Plass  <thomas.plass@arcor.de>
5609         Replace colon in file name (not legal on Windows)
5611         * lisp/doc-view.el (doc-view--current-cache-dir): Replace colon in file
5612         name (not legal on Windows). [tiny change]
5614 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
5616         Fix a typo in edt.texi
5618         * doc/misc/edt.texi: Fix a typo in an email address.  Reported by
5619         "Herbert J. Skuhra" <herbert@mailbox.org>.
5621 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
5623         Make 'mmap_realloc' on MS-Windows more reliable
5625         * src/w32heap.c (mmap_alloc): If reserving memory succeeds, but
5626         committing fails, return NULL.  Don't call GetLastError twice for
5627         the same API error.
5628         (mmap_realloc): Zero out MEMORY_BASIC_INFORMATION structures
5629         before calling VirtualQuery, to avoid using garbled values if the
5630         call fails.  If committing more pages from the same block fails,
5631         fall back on mmap_alloc + CopyMemory.  Enhance debugging printouts
5632         if the call to VirtualAlloc to commit more pages fails.
5633         (Bug#22526)
5635 2016-02-14  Oscar Fuentes  <ofv@wanadoo.es>
5637         Grep alias `all' shall not match parent directory
5639         * lisp/progmodes/grep.el (grep-files-aliases): Don't match parent
5640           directory for `all'. Fixes bug#22577
5642 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
5644         Bump version to 25.0.91
5646         * README:
5647         * configure.ac:
5648         * msdos/sed2v2.inp: Bump version to 25.0.91.
5650 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
5652         * etc/AUTHORS: Update the AUTHORS file
5654 2016-02-13  Glenn Morris  <rgm@gnu.org>
5656         * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
5658 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
5660         Index tilde characters in names of backup files
5662         * doc/emacs/files.texi (Backup Names): Improve indexing.
5663         (Bug#22625)
5665 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
5667         Document deprecation of hi-lock-mode's 'C-x w' bindings
5669         * doc/emacs/display.texi (Highlight Interactively): Deprecate the
5670         "C-x w" bindings of hi-lock-mode.
5672         * etc/NEWS: Mark the deprecation entry as documented.
5674 2016-02-13  Stefan Monnier  <monnier@iro.umontreal.ca>
5676         Announce that the `C-x w' bindings are deprecated
5678 2016-02-13  Paul Eggert  <eggert@cs.ucla.edu>
5680         Suppress GNUstep hardening
5682         Fedora 23 normally hardens GNUstep applications, which causes
5683         ‘./configure --with-ns’ to break Emacs’s funky way of undumping.
5684         Fix this by eliding the hardening options (Bug#22518).
5685         * src/Makefile.in (LIBS_GNUSTEP): Omit options like
5686         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-ld’.
5687         (GNU_OBJC_CFLAGS): Omit options like
5688         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1’.
5690 2016-02-12  Eli Zaretskii  <eliz@gnu.org>
5692         Fix redisplay after a large insertion
5694         * src/xdisp.c (redisplay_internal): Don't accept the results of
5695         "optimization 3" if the cursor ends up in a partially visible
5696         glyph row.  (Bug22637)
5698 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
5700         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
5702         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
5704                 * lisp/gnus/nnimap.el (nnimap-change-group): Revert last
5705                 change.  (Bug#22634)
5707 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
5709         * lib-src/make-docfile.c: Include stdarg.h.
5711 2016-02-11  Alan Mackenzie  <acm@muc.de>
5713         Extend gpm-mouse-mode's doc string and doc to point out limitations.
5715         * lisp/t-mouse.el (gpm-mouse-mode): Extend doc string to indicate the
5716         inability to transfer text between Emacs and other programs which use GPM.
5718         * doc/emacs/frames.texi (Text-Only Mouse): Note the inability to transfer text
5719         between Emacs and other progrmas which use GPM.
5721 2016-02-11  Eli Zaretskii  <eliz@gnu.org>
5723         Revert "Backport: * lisp/isearch.el: Turn char-folding off by default"
5725         * lisp/isearch.el: Turn char-folding back oon by default.
5727         This reverts commit 12c50e82c9b432b2fc31f8fb2215f43ceea80822.
5729 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
5731         Revert "Support integer image rotation and respect EXIF rotations"
5733         This reverts commit 0f600496050bf435f55dc81056e06fcd45992dc8.
5735         This change does not work on Fedora.
5737 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
5739         Revert "Document EXIF image rotation"
5741         This reverts commit 10b8ed27ec91ff52f93eb0297dcc3abb214931aa.
5743         This change does not work on Fedora, for instance.
5745 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
5747         Document OS X LANG default
5749         * doc/emacs/cmdargs.texi (General Variables):
5750         Document OS X Language and Region system preference.
5751         Suggested by Alan Third.
5753 2016-02-11  Alan Third  <alan@idiocy.org>
5755         Set locale when run from OS X GUI
5757         * src/emacs.c (main): Call ns_init_locale.
5758         * src/nsterm.m (ns_init_locale): Get locale from OS and set LANG.
5759         * src/nsterm.h: Include ns_init_locale.
5761 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
5763         make-docfile cleanup for I/O, etc.
5765         * lib-src/make-docfile.c (progname, generate_globals, num_globals)
5766         (num_globals_allocated, globals): Now static.
5767         (generate_globals, struct rcsoc_state, read_c_string_or_comment):
5768         (write_c_args, scan_c_stream, search_lisp_doc_at_eol, scan_lisp_file):
5769         Use bool for boolean.
5770         (verror): New function.
5771         (fatal, error): Use it.  API is now like printf.  All callers changed.
5772         (main): Remove err_count local that was always 0.
5773         (main, scan_c_stream, scan_lisp_file): Check for I/O error.
5774         (scan_file, scan_c_file, scan_c_stream, scan_lisp_file):
5775         Return void, not 0.
5776         (put_char, scan_keyword_or_put_char, scan_c_file): Use char for byte.
5777         (scan_keyword_or_put_char): Check for missing ( and unexpected EOF.
5778         (close_emacs_globals): Use ptrdiff_t for index, not int.
5779         (scan_c_file, scan_lisp_file): Exit with failure if file cannot be
5780         opened, rather than diagnosing but exiting with status 0.
5781         (search_lisp_doc_at_eol): Don't worry about ungetc of EOF; it's
5782         portable now.
5784 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
5786         Memory-management cleanup in make-docfile
5788         I compiled it with -fsanitize=address and fixed the leaks it detected.
5789         Also, I changed it to prefer signed to unsigned integer types,
5790         and to check for integer overflow.
5791         * lib-src/make-docfile.c:
5792         Include <stddef.h>, <stdint.h>, <intprops.h>, <min-max.h>.
5793         (memory_exhausted): New function.
5794         (xmalloc, xrealloc): Use it.
5795         (xmalloc, xrealloc, scan_file, struct rcsoc_state, write_c_args)
5796         (uncompiled, scan_lisp_file):
5797         Prefer signed integer types to unsigned.
5798         (xstrdup): Remove.  All uses removed.
5799         (num_globals, num_globals_allocated, write_globals, scan_c_stream):
5800         Use ptrdiff_t, not int, for indexes that in theory could exceed INT_MAX.
5801         (add_global): Use const to pacify --enable-gcc-warnings.
5802         Make a copy here, rather than relying on strdup calls later.
5803         (add_global, write_globals, scan_c_stream):
5804         Avoid integer overflow when calculating sizes.
5805         (write_globals, scan_c_stream, scan_lisp_file): Avoid memory leak.
5806         (scan_c_stream): Check for add_global failure.
5808 2016-02-10  Kevin Gallagher  <Kevin.Gallagher@boeing.com>
5810         Kevin Gallagher has new email address
5812         * lisp/emulation/edt.el:
5813         * lisp/emulation/edt-lk201.el:
5814         * lisp/emulation/edt-mapper.el:
5815         * lisp/emulation/edt-pc.el:
5816         * lisp/emulation/edt-vt100.el:
5817         * etc/edt-user.el:
5818         * doc/misc/edt.texi: Update Kevin Gallagher's email address.
5820 2016-02-10  Eli Zaretskii  <eliz@gnu.org>
5822         Improve doc strings of 'forward/backward-word-strictly'
5824         * lisp/simple.el (backward-word): Refer to 'backward-word-strictly'
5825         in the doc string.  Suggested by Glenn Morris <rgm@gnu.org>.
5826         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
5827         Mention 'subword-mode' in the doc strings.
5829         * src/syntax.c (Fforward_word): Refer to 'forward-word-strictly'
5830         in the doc string.  (Bug#22560)
5832 2016-02-10  Michael Albinus  <michael.albinus@gmx.de>
5834         Describe Makefile test targets in test/README
5836         * CONTRIBUTE: Move Makefile test targets to test/README.
5838         * Makefile.in:
5839         * test/README: Describe Makefile test targets.
5841 2016-02-10  Artur Malabarba  <bruce.connor.am@gmail.com>
5843         Backport: * lisp/isearch.el: Turn char-folding off by default
5845         (search-default-mode): Set default value to nil.
5847 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
5849         Document EXIF image rotation
5851         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
5853 2016-02-10  Dima Kogan  <dima@secretsauce.net>
5855         Support integer image rotation and respect EXIF rotations
5857         * src/image.c (imagemagick_load_image): Allow integer rotations in
5858         addition to floating point rotations (bug#22591).
5859         * src/image.c (imagemagick_load_image): Images that have an
5860         orientation given in EXIF and have no explicit :rotation tag are now
5861         pre-rotated.  All information such as width/height is reported for the
5862         rotated image.
5864 2016-02-10  Matthew Carter  <m@ahungry.com>
5866         Quote table names for postgres listings (sql-mode)
5868         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
5869           unquoted table names to the completion list.
5871 2016-02-10  Juri Linkov  <juri@linkov.net>
5873         * lisp/replace.el (replace-match-maybe-edit): Make arg `backward' optional.
5875         Doc fix.
5876         (replace-search, replace-highlight): Make arg `backward' optional.
5877         (Bug#18388)
5879 2016-02-10  Juri Linkov  <juri@linkov.net>
5881         * lisp/simple.el (next-line-or-history-element): Reset temporary-goal-column.
5883         (previous-line-or-history-element): Reset temporary-goal-column.
5884         Use end-of-visual-line instead of line-end-position.  (Bug#22544)
5886 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
5888         Suppress ACL ops if configured with --disable-acl
5890         Without this patch, some ACL operations were suppressed, but not all.
5891         * src/fileio.c [!USE_ACL]: Do not include sys/acl.h.
5892         (Ffile_acl, Fset_file_acl) [!USE_ACL]: Return nil in this case.
5894 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
5896         Mention web bugs
5898         * doc/misc/emacs-mime.texi (Display Customization):
5899         Mention web bugs in the mm-html-blocked-images section.
5901 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
5903         Make mm-html-blocked-images default to "" again
5905         * lisp/gnus/mm-decode.el (mm-html-blocked-images):
5906         Default to "" that blocks all external images.
5908         * doc/misc/emacs-mime.texi (Display Customization):
5909         Mention that mm-html-blocked-images defaults to "".
5911 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
5913         Minor alignas cleanup
5915         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
5916         over from the old way of doing things, before Bug#20862 was fixed.
5918 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
5920         Add lmalloc commentary and tweak laligned
5922         * src/alloc.c (laligned): Help compiler in a tiny way by putting
5923         the more-commonly-failing disjunct first.
5925 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
5927         Clarify documentation of key binding conventions
5929         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
5930         "punctuation characters" are reserved after "C-c".  (Bug#22604)
5932 2016-02-09  Oscar Fuentes  <ofv@wanadoo.es>
5934         * etc/NEWS: mention the `vc-faces' customization group
5936 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
5938         Sync with gnulib
5940         This incorporates:
5941         2016-02-09 stdalign: port to clang 3.7.0
5942         2016-02-06 misc: port better to gcc -fsanitize=address
5943         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
5944         Copy from gnulib.
5946 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
5948         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
5950 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
5952         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
5954         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
5955         (mm-html-blocked-images): Default to nil.
5957         * doc/misc/emacs-mime.texi (Display Customization): Mention that
5958         mm-html-inhibit-images and mm-html-blocked-images default to nil.
5960         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
5961         mm-html-blocked-images.
5963 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
5965         Increase success rate of fallback lmalloc
5967         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
5968         larger and larger sizes, to increase the probability that
5969         the allocator will return a Lisp-aligned pointer.
5971 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
5973         Make backgrounds extend to the end of the lines in shr
5975         * lisp/net/shr.el (shr-face-background): Faces can also be on
5976         the form `(:background "#fff)' (bug#22547).
5978 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
5980         Make the `R' command get the correct relative <img>s
5982         * lisp/net/eww.el (eww-readable): Preserve the base URL so
5983         that image expansions are fetched from the right place (bug#22605).
5985         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
5987         Backport:
5989 2016-02-09  Mike Kupfer  <m.kupfer@acm.org>
5991         Fix typos in emacs-mime.texi and gnus.texi
5993         * doc/misc/emacs-mime.texi (Display Customization):
5994         * doc/misc/gnus.texi (HTML): Fix typo.
5996 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
5998         * doc/misc/emacs-mime.texi (Display Customization):
5999         Doc fix for mm-html-inhibit-images.
6001 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6003         Fix message-cross-post-followup-to group names
6005         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
6006         insert group names like "nntp+foo:zot", because those aren't valid.
6008 2016-02-09  David Edmondson  <dme@dme.org>
6010         Compare recipient and keys case-insensitively
6012         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
6013         recipient address with that from a key, do so in a case insensitive
6014         manner (bug#22603).
6016 2016-02-08  Glenn Morris  <rgm@gnu.org>
6018         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
6020 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
6022         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
6024         * doc/misc/emacs-mime.texi (Display Customization):
6025         Remove mm-inline-text-html-with-images; add documentations for
6026         mm-html-inhibit-images and mm-html-blocked-images.
6028         * lisp/gnus/gnus-art.el (gnus-article-show-images):
6029         No need to bind mm-inline-text-html-with-images.
6030         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
6031         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
6032         bind mm-html-inhibit-images and mm-html-blocked-images.
6033         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
6034         (gnus-mm-display-part, gnus-mime-display-single)
6035         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
6037         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
6038         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
6039         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
6040         mm-html-inhibit-images and mm-html-blocked-images respectively
6041         instead of gnus-inhibit-images and gnus-blocked-images.
6043         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
6044         instead of mm-inline-text-html-with-images.
6046 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
6048         Port to FreeBSD 11-CURRENT i386
6050         Problem reported by Herbert J. Skuhra in:
6051         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
6052         Instead of trying
6053         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
6054         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
6055         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
6056         (MALLOC_IS_GC_ALIGNED): New macro.
6057         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
6058         No longer needed now that alloc.c uses lmalloc and lrealloc.
6060 2016-02-08  Michael Albinus  <michael.albinus@gmx.de>
6062         Some fixes in file-notify-tests.el
6064         * test/automated/file-notify-tests.el
6065         (file-notify--test-with-events-check)
6066         (file-notify--test-with-events-explainer): New defuns.
6067         (file-notify--test-with-events): Use it.
6068         (file-notify-test07-backup): Fix docstring.  Some of the
6069         backends fire two `changed' events.  Backup by rename doesn't
6070         work for kqueue.
6072 2016-02-07  Michael Albinus  <michael.albinus@gmx.de>
6074         Fix Bug#22557
6076         * lisp/filenotify.el (file-notify-callback): Do not send a
6077         `stopped' event in case of backup by renaming.  (Bug#22557)
6079         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
6080         all targets but check and check-maybe.
6082         * test/automated/file-notify-tests.el
6083         (file-notify--test-read-event-timeout): New defconst.
6084         (file-notify--deftest-remote, file-notify--wait-for-events)
6085         (file-notify-test02-events)
6086         (file-notify-test04-file-validity)
6087         (file-notify-test06-many-events): Use it.
6088         (file-notify--test-cleanup): Make it more robust.  Delete also
6089         backup file.
6090         (file-notify-test07-backup): New test.
6092 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
6094         Fix test for dladdr
6096         Problem reported by Andreas Schwab in:
6097         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
6098         * configure.ac (dladdr): Link with LIBMODULES when checking for
6099         this function.
6101 2016-02-07  Andreas Schwab  <schwab@linux-m68k.org>
6103         Fix gnus-group-get-new-news-this-group on group with closed server
6105         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
6106         method and pass to nnimap-open-server.
6108 2016-02-07  Artur Malabarba  <bruce.connor.am@gmail.com>
6110         * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
6112         While tabs in code are mostly fine because the Emacs sources have a
6113         .dir-locals file specifying tab-width, the same is not true of tabs in
6114         code examples inside docstrings.  The docstring is printed on a *Help*
6115         buffer, which can be created on any directory and won't necessarily have
6116         the same tab-width set.
6118 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
6120         Don't inloop gnus-uu-mark-thread on the last thread
6122         * lisp/gnus/gnus-uu.el (gnus-uu-mark-thread): Don't infloop on the
6123         final thread in the summary buffer (bug#16666).
6125 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
6127         Display non-ASCII group names better in prompts
6129         * lisp/gnus/gnus-sum.el (gnus-articles-to-read): To decode the
6130         group name, we have to do that before we remove the prefix.
6132 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
6134         Default to gpg2 instead of gpg
6136         * lisp/epg-config.el (epg-gpg-program): Prefer gpg2 over gpg, if
6137         it exists.  This fixes many problems with using the GPG
6138         authentication agent.
6140 2016-02-06  David Edmondson  <dme@dme.org>
6142         src/process.c Correctly convert AF_INET6 addresses
6144         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
6145         converted to a list of 16 bit quantities by
6146         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
6147         same scheme rather than expecting a (longer) list of 8 bit
6148         quantities.
6150         Backport:
6152         (cherry picked from commit 55ce3c30d617c38eb086d5ad4ffbd881c20c559c)
6154 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
6156         * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
6158 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
6160         * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
6162         (menu-bar-search-options-menu): New variable
6164 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
6166         * lisp/isearch.el (search-default-mode)
6168         (isearch-regexp-function): Improve docstrings.
6170 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
6172         * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
6174         (search-default-mode): New variable.
6175         (isearch-mode, isearch-define-mode-toggle)
6176         (isearch--describe-regexp-mode): Update accordingly.
6177         * lisp/menu-bar.el (nonincremental-search-forward): Update accordingly.
6178         * etc/NEWS: Update accordingly.
6179         * doc/emacs/search.texi: Update accordingly.
6181 2016-02-06  Oscar Fuentes  <ofv@wanadoo.es>
6183         Use monitor's resolution for positioning tooltips
6185         * src/xfns.c (compute_tip_xy): Use the resolution of the monitor where
6186           the mouse pointer is to avoid placing the tooltip over the border of
6187           the monitor on multi-head displays. Fixes bug#22549.
6189 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
6191         Fix file-notify-test on MS-Windows
6193         * test/automated/file-notify-tests.el (file-notify--test-timeout):
6194         Reduce w32notify timeout to 10 sec.
6195         (file-notify-test06-many-events): Call read-event after each
6196         rename, to keep the w32notify backend happy in batch mode.
6197         (Bug#22534)
6199 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
6201         Fix issues found by auditing w32notify code
6203         * src/w32inevt.c (handle_file_notifications): Count the number of
6204         events to be returned.
6205         * src/w32notify.c (send_notifications): Don't copy to the file
6206         notification buffer more than it can hold.  (Bug#22534)
6208 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
6210         Extend etags Ruby support for accessors
6212         * lib-src/etags.c (Ruby_functions): Support accessors defined with
6213         parentheses.  (Bug#22563)
6215         * test/etags/ruby-src/test1.ru (A::B): Add tests for accessors
6216         defined with parentheses.
6217         * test/etags/ETAGS.good_1:
6218         * test/etags/ETAGS.good_2:
6219         * test/etags/ETAGS.good_3:
6220         * test/etags/ETAGS.good_4:
6221         * test/etags/ETAGS.good_5:
6222         * test/etags/ETAGS.good_6:
6223         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
6225 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
6227         Update publicsuffix.txt.
6229         * etc/publicsuffix.txt: Updated from
6230         https://publicsuffix.org/list/public_suffix_list.dat.
6232 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
6234         Ensure that Gnus dribble handling allows removing entries
6236         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Ensure that each
6237         entry is on a single line.
6239 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
6241         Be consistent when using encoded strings in nnimap data
6243         * lisp/gnus/nnimap.el (nnimap-encode-gnus-group): New function
6244         (nnimap-request-list): Use it.
6245         (nnimap-request-newgroups): Ditto.
6247 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
6249         Display the decoded Gnus group name
6251         * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Use the
6252         decoded group name in the message.
6254 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
6256         Use completion-ignore-case instead of defining command
6258         * lisp/erc/erc.el (erc-mode): Set completion-ignore-case so
6259         that we get case-insensitive completion.
6260         (erc-completion-at-point): Remove.
6262 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
6264         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
6266 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
6268         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
6270         Reduce the number of iterations to 250 in case of w32notify.
6272 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
6274         Fix problems caused by new implementation of sub-word mode
6276         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
6277         New functions.
6278         (word-move-empty-char-table): New variable.
6280         * etc/NEWS: Mention 'forward-word-strictly' and
6281         'backward-word-strictly'.
6283         * doc/lispref/positions.texi (Word Motion): Document
6284         'find-word-boundary-function-table', 'forward-word-strictly', and
6285         'backward-word-strictly'.  (Bug#22560)
6287         * src/syntax.c (syms_of_syntax)
6288         <find-word-boundary-function-table>: Doc fix.
6290         * lisp/wdired.el (wdired-xcase-word):
6291         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
6292         (texinfo-copy-section-title, texinfo-start-menu-description)
6293         (texinfo-copy-menu-title, texinfo-specific-section-type)
6294         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
6295         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
6296         (texinfo-insert-@end):
6297         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
6298         (texinfo-anchor, texinfo-multitable-widths)
6299         (texinfo-multitable-item):
6300         * lisp/textmodes/tex-mode.el (latex-env-before-change):
6301         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
6302         * lisp/skeleton.el (skeleton-insert):
6303         * lisp/simple.el (count-words):
6304         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
6305         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
6306         (vhdl-update-sensitivity-list, vhdl-template-block)
6307         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
6308         (vhdl-template-default-indent, vhdl-template-for-loop)
6309         (vhdl-template-if-then-use, vhdl-template-bare-loop)
6310         (vhdl-template-nature, vhdl-template-procedural)
6311         (vhdl-template-process, vhdl-template-selected-signal-asst)
6312         (vhdl-template-type, vhdl-template-variable)
6313         (vhdl-template-while-loop, vhdl-beginning-of-block)
6314         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
6315         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
6316         (verilog-forward-sexp, verilog-beg-of-statement)
6317         (verilog-set-auto-endcomments, verilog-backward-token)
6318         (verilog-do-indent):
6319         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
6320         (vera-indent-block-closing):
6321         * lisp/progmodes/simula.el (simula-context)
6322         (simula-backward-up-level, simula-forward-down-level)
6323         (simula-previous-statement, simula-next-statement)
6324         (simula-skip-comment-backward, simula-calculate-indent)
6325         (simula-find-if, simula-electric-keyword):
6326         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
6327         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
6328         (ruby-smie--forward-token, ruby-smie--backward-token)
6329         (ruby-singleton-class-p, ruby-calculate-indent)
6330         (ruby-forward-sexp, ruby-backward-sexp):
6331         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
6332         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
6333         (perl-syntax-propertize-special-constructs)
6334         (perl-backward-to-start-of-continued-exp):
6335         * lisp/progmodes/pascal.el (pascal-indent-declaration):
6336         * lisp/progmodes/octave.el (octave-function-file-p):
6337         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
6338         * lisp/progmodes/js.el (js--forward-function-decl):
6339         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
6340         (idlwave-beginning-of-block, idlwave-end-of-block)
6341         (idlwave-block-jump-out, idlwave-determine-class):
6342         * lisp/progmodes/icon.el (icon-is-continuation-line)
6343         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
6344         * lisp/progmodes/hideif.el (hide-ifdef-define):
6345         * lisp/progmodes/f90.el (f90-change-keywords):
6346         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
6347         (cperl-linefeed, cperl-electric-terminator)
6348         (cperl-find-pods-heres, cperl-fix-line-spacing)
6349         (cperl-invert-if-unless):
6350         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
6351         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
6352         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
6353         (ada-adjust-case-skeleton, ada-create-case-exception)
6354         (ada-create-case-exception-substring)
6355         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
6356         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
6357         (ada-get-indent-if, ada-get-indent-block-start)
6358         (ada-get-indent-loop, ada-get-indent-type)
6359         (ada-search-prev-end-stmt, ada-check-defun-name)
6360         (ada-goto-decl-start, ada-goto-matching-start)
6361         (ada-goto-matching-end, ada-looking-at-semi-or)
6362         (ada-looking-at-semi-private, ada-in-paramlist-p)
6363         (ada-search-ignore-complex-boolean, ada-move-to-start)
6364         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
6365         * lisp/net/quickurl.el (quickurl-grab-url):
6366         * lisp/mail/sendmail.el (mail-do-fcc):
6367         * lisp/mail/rmail.el (rmail-resend):
6368         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
6369         * lisp/mail/mail-extr.el (mail-extract-address-components):
6370         * lisp/json.el (json-read-keyword):
6371         * lisp/files.el (insert-directory):
6372         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
6373         * lisp/completion.el (symbol-under-point, symbol-before-point)
6374         (symbol-before-point-for-complete, next-cdabbrev)
6375         (add-completions-from-c-buffer):
6376         * lisp/cedet/semantic/texi.el (semantic-up-context)
6377         (semantic-beginning-of-context):
6378         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
6379         use 'forward-word-strictly' and 'backward-word-strictly' instead
6380         of 'forward-word' and 'backward-word'.
6382 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
6384         Fix doc string of tls-program
6386         * lisp/net/tls.el (tls-program): Document the %t parameter (bug#22559).
6388 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
6390         Restore window conf in nsm
6392         * lisp/net/nsm.el (nsm-query-user): Restore the window configuration.
6394         Backport:
6396 2016-02-05  Mark Oteiza  <mvoteiza@udel.edu>
6398         * etc/NEWS: Document new mpc.el features
6400 2016-02-04  Leo Liu  <sdl.web@gmail.com>
6402         * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
6404 2016-02-04  Alan Mackenzie  <acm@muc.de>
6406         Correctly fontify C++ initializations which "look like" functions.
6408         Fixes bug#7579.
6410         lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
6411         parameter to enable handling of "anonymous" declarators in declarations.
6413         lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
6414         whether a "(" opens a parameter list of a function, or an initialization of a
6415         variable.
6417 2016-02-04  Ulf Jasper  <ulf.jasper@web.de>
6419         Improve newsticker-treeview-selection-face
6421         * lisp/net/newst-treeview.el (newsticker-treeview-selection-face): Improve
6422         readability for dark background.
6424 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
6426         Minor fix in tagging Ruby accessors by etags
6428         * lib-src/etags.c (Ruby_functions): Don't tag accessors whose
6429         names are not literal symbols.  (Bug#22241)
6431 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
6433         Spelling fixes
6435 2016-02-04  Dmitry Gutov  <dgutov@yandex.ru>
6437         Remove 'def X' from the example
6439         * test/etags/ruby-src/test1.ru (A::B): Remove 'def X'
6440         (http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00167.html).
6441         * test/etags/CTAGS.good:
6442         * test/etags/ETAGS.good_1:
6443         * test/etags/ETAGS.good_2:
6444         * test/etags/ETAGS.good_3:
6445         * test/etags/ETAGS.good_4:
6446         * test/etags/ETAGS.good_5:
6447         * test/etags/ETAGS.good_6: Adjust accordingly.
6449 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
6451         Allow sending empty hidden values in eww
6453         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
6454         values (bug#22388).
6456         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
6458         Backport:
6460 2016-02-04  David Edmondson  <dme@dme.org>
6462         Make erc work better when encountering unknown prefix chars
6464         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
6465         instead of erroring out on unknown prefix chars (bug#22380).
6467 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
6469         Make erc completion case-insensitive again
6471         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
6472         case-insensitive again (bug#11360).
6474 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
6476         Make complection in erc use consistent casing
6478         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
6479         case in the complection consistent (bug#18509).
6481 2016-02-04  Francis Litterio  <flitterio@gmail.com>
6483         Make /QUIT in erc more robust
6485         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
6486         issuing /QUIT to disconnected servers (bug#22099).
6488 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
6490         Make tracking faces in Emacs work more reliably
6492         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
6493         faces to avoid later ambiguity (bug#22424).
6495 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
6497         Make shr not bug out on images on non-graphical displays
6499         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
6500         images on non-graphical displays (bug#22327).
6502 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
6504         Fix bookmark display widths
6506         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
6507         preparing it so that the widths are computed correctly (bug#22328).
6509 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
6511         Fix typo in eww-make-unique-file-name
6513         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
6514         actually work.
6516 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
6518         Make it possible to TAB to input fields
6520         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
6521         input fields (bug#22540).
6523 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
6525         Insert complete alt texts when images are disabled
6527         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
6528         the complete alt/title string (bug#22293).
6530 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
6532         Allow eww text fields to grow
6534         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
6535         grow when typing in stuff that's longer than the original width.
6537 2016-02-03  Dima Kogan  <dima@secretsauce.net>
6539         Make erc work when subword-mode is switched on
6541         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
6542         (erc-bounds-of-word-at-point): New functions to do word-based
6543         things when subword-mode is switched on.
6545         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
6546         (bug#17558).
6548 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
6550         Fix IMAP doc example
6552         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
6554 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
6556         Quoting fixes in doc strings and diagnostics
6558         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
6559         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
6560         (mml-smime-get-ldap-cert):
6561         Follow user style preference when quoting diagnostics.
6563 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
6565         Fix warning message in hack-local-variables
6567         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
6568         the original buffer name in the warning message.  (Bug#21681)
6570 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
6572         Etags: yet another improvement in Ruby tags
6574         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
6575         Ruby accessor definitions.  (Bug#22241)
6577         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
6578         accessors and multiline definitions.
6579         * test/etags/ETAGS.good_1:
6580         * test/etags/ETAGS.good_2:
6581         * test/etags/ETAGS.good_3:
6582         * test/etags/ETAGS.good_4:
6583         * test/etags/ETAGS.good_5:
6584         * test/etags/ETAGS.good_6:
6585         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
6587 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
6589         Fix x-popup-menu on TTYs without a mouse
6591         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
6592         for the TTY case without a mouse.  (Bug#22538)
6594 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
6596         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
6598 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
6600         Use pop-to-buffer-same-window in eww
6602         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
6603         switch-to-buffer (bug#22244).
6605 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
6607         * autogen.sh: Revert all recent changes.
6609 2016-02-02  Glenn Morris  <rgm@gnu.org>
6611         * make-dist: Updates related to nt/.
6613         * make-dist: Add modules/.
6615         * make-dist: Update for super-special file that can't live in etc/.
6617 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
6619         Fix failure to compile ns-win.el in parallel builds
6621         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
6622         dependency on $(lispsource)/international/charprop.el.
6623         (Bug#22501)
6625 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
6627         Fix names of tags generated for Ruby accessors
6629         * lib-src/etags.c (Ruby_functions): Don't include the leading
6630         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
6632         * test/etags/ETAGS.good_1:
6633         * test/etags/ETAGS.good_2:
6634         * test/etags/ETAGS.good_3:
6635         * test/etags/ETAGS.good_4:
6636         * test/etags/ETAGS.good_5:
6637         * test/etags/ETAGS.good_6:
6638         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
6640 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
6642         Fix file-name recognition in 'etags'
6644         * lib-src/etags.c (get_language_from_filename): If FILE includes a
6645         leading directory, compare only its basename to the known file
6646         names in lang_names[].
6648         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
6649         renaming.
6650         * test/etags/ETAGS.good_1:
6651         * test/etags/ETAGS.good_2:
6652         * test/etags/ETAGS.good_3:
6653         * test/etags/ETAGS.good_4:
6654         * test/etags/ETAGS.good_5:
6655         * test/etags/ETAGS.good_6:
6656         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
6657         to the results in Makefile due to the above etags.c fix.
6659 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
6661         Change Ruby file names and extensions recognized by 'etags'
6663         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
6664         of Ruby files.
6665         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
6666         <lang_names>: Add Ruby_filenames to the Ruby entry.
6667         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
6668         (Bug#22241)
6670 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
6672         More improvements for Ruby support in 'etags'
6674         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
6675         alias_method.  Identify constants even if the assignment is not
6676         followed by whitespace.  (Bug#22241)
6678         * test/etags/ruby-src/test1.ru: Add tests for constants,
6679         accessors, and alias_method.
6680         * test/etags/ETAGS.good_1:
6681         * test/etags/ETAGS.good_2:
6682         * test/etags/ETAGS.good_3:
6683         * test/etags/ETAGS.good_4:
6684         * test/etags/ETAGS.good_5:
6685         * test/etags/ETAGS.good_6:
6686         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
6688 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
6690         Add --git-config option to autogen.sh
6692         * autogen.sh: New options --git-config, --help.
6693         (git_config): New shell var.  Alter function to respect this var.
6695 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
6697         Fix editing undo changes in eww fields
6699         * eww.el (eww-tag-form): Don't overwrite initial form data in text
6700         fields.
6701         (eww-process-text-input): Make `M-t' at the end of text fields work
6702         better (bug#19085).
6704 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
6706         Allow the user more control of popping up the eww window
6708         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
6709         Michael Heerdegen) (bug#22244).
6711 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
6713         Make eww-browse-url with new-window parameter work again
6715         * eww.el (eww-browse-url): Stay in the same buffer if we're
6716         already in a eww mode buffer so that eww-browse-url with a
6717         new-window parameter works (bug#22244).
6719 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
6721         Clean up eww code slightly
6723         * eww.el (eww-browse-url): Clean up code slightly.
6725 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
6727         Don't insert nil faces in shr
6729         * shr.el (shr-insert-table): Don't add nil faces, because that
6730         will show up in *Messages* as "Invalid face reference: nil [32
6731         times]".
6733 2016-02-01  Glenn Morris  <rgm@gnu.org>
6735         Improve the custom type of some user options.
6737         * lisp/autoinsert.el (auto-insert-alist):
6738         * lisp/replace.el (query-replace-from-to-separator):
6739         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
6740         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
6741         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
6742         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
6743         (prolog-mode-specificators, prolog-determinism-specificators)
6744         (prolog-directives, prolog-program-name, prolog-program-switches)
6745         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
6746         (prolog-prompt-regexp): Improve custom type.
6748 2016-02-01  Glenn Morris  <rgm@gnu.org>
6750         Mark some risky calendar variables.
6752         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
6753         Remove risky setting for deleted obsolete alias.
6754         (calendar-chinese-standard-time-zone-name)
6755         (calendar-chinese-daylight-saving-start)
6756         (calendar-chinese-daylight-saving-end):
6757         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
6758         (calendar-european-date-display-form)
6759         (calendar-american-date-display-form, calendar-date-display-form):
6760         * lisp/calendar/diary-lib.el (diary-remind-message)
6761         (diary-header-line-format):
6762         * lisp/calendar/solar.el (calendar-time-display-form)
6763         (calendar-location-name): Mark as risky.
6765 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
6767         Highlight two additional SCSS keywords
6769         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
6770         identifiers on the form !foo.
6771         (scss-bang-ids): New defconst holding SCSS identifiers on the form
6772         !foo.
6773         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
6774         `font-lock-builtin-face'.
6776         * test/indent/css-mode.css: Add bang rule test case.
6778         * test/indent/scss-mode.scss: Add test cases for the introduced bang
6779         rules.
6781 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
6783         Recommend enabling integrity-checking in git
6785         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
6787         This is related to the autogen.sh changes made by Paul Eggert in
6788         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
6789         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
6790         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
6791         "Recommend these .gitconfig settings for git integrity." at
6792         https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
6794 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
6796         Some corrections in Elisp manual
6798         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
6799         argument POSITION.
6800         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
6801         is an option.
6802         * doc/lispref/display.texi (Refresh Screen): Describe optional
6803         argument FRAME of `redraw-frame'.
6804         (Attribute Functions): Describe optional argument CHARACTER of
6805         `face-font'.
6806         (Defining Images): `image-load-path' is an option.
6807         (Beeping): `ring-bell-function' is an option.
6808         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
6809         argument of `set-frame-size' is optional.
6810         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
6811         is optional.
6812         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
6813         `set-transient-map'.
6814         * doc/lispref/minibuf.texi (Text from Minibuffer):
6815         `read-regexp-defaults-function' is an option.
6816         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
6817         * doc/lispref/modes.texi (Mode Line Variables):
6818         `mode-line-position' and `mode-line-modes' are variables, not
6819         options.
6820         * doc/lispref/strings.texi (Creating Strings): The START argument
6821         of `substring' is optional.
6822         * doc/lispref/text.texi (Buffer Contents): Describe optional
6823         argument NO-PROPERTIES of `thing-at-point'.
6824         (User-Level Deletion): Both arguments of
6825         `delete-trailing-whitespace' are optional.
6826         (Margins): Use @key{RET} instead of @kbd{RET}.
6827         * doc/lispref/windows.texi (Display Action Functions): Write
6828         non-@code{nil} instead of non-nil.
6829         (Choosing Window Options): The WINDOW arg of
6830         `split-window-sensibly' is optional.
6831         (Choosing Window Options): Write non-@code{nil} instead of
6832         non-nil.
6833         (Window Start and End): Both args of `window-group-end' are
6834         optional.
6836         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
6837         to POSITION to keep consisteny with doc-string.
6839 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
6841         Chatter when autogen.sh changes Git configuration
6843         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
6845 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
6847         * lisp/org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
6849 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
6851         Omit unnecessary history from Lisp intro
6853         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
6854         (Conclusion): Reword so as not to talk about earlier versions
6855         of Emacs in what should be an intro.
6857 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
6859         * etc/HISTORY: Add some more history, plus git tags.
6861 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
6863         Improve elisp “Security Considerations” doc
6865         * doc/lispref/os.texi (Security Considerations):
6866         Mention call-process and rename-file as opposed to shell commands.
6867         Add some more cross-references.
6869 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
6871         autogen.sh now arranges for git to check hashes
6873         Suggested by Karl Fogel in:
6874         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
6875         * autogen.sh: Do "git config transfer.fsckObjects true".
6877 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
6879         Fix (c & 040) typo in emergency escapes
6881         * src/keyboard.c (handle_interrupt): Fix recently-introduced
6882         typo (040 should have been ~040) that silently suppressed
6883         auto-saves after emergency escapes.  Redo comparison to avoid
6884         similar problems.
6886 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
6888         Fix display of overlay strings with 'display' and 'box' property
6890         * src/xdisp.c (get_next_display_element): Take the box face from
6891         display stack level that comes from a buffer, not an overlay
6892         string.  (Bug#22499)
6894 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
6896         Fix imap-starttls-open
6898         * lisp/net/imap.el (imap-starttls-open): Log imap process
6899         output.  Call imap-parse-greeting.  (Bug#22500)
6901 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
6903         Fix return value of imap-starttls-open
6905         * lisp/net/imap.el (imap-starttls-open): Fix return value.
6907 2016-01-31  John Wiegley  <johnw@newartisans.com>
6909         Correct reference to DARWIN_OS preprocessor symbol
6911         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
6912           not be defined.
6914 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
6916         Spelling fix
6918         Spelling fixes
6920 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
6922         Pacify GCC on C library without glibc API
6924         Without this change, with --enable-gcc-warnings GCC would complain
6925         “error: redundant redeclaration of ‘aligned_alloc’”.
6926         * configure.ac: Simplify aligned_alloc testing.
6927         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
6928         since the simplified configure.ac no longer checks for that.
6929         Don’t declare if HAVE_ALIGNED_ALLOC.
6930         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
6932 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
6934         Backport: * lisp/files.el: Remove support for extra .dir-locals file
6936         (dir-locals-file-2, dir-locals--all-files): Remove.
6937         (dir-locals-collect-variables, dir-locals-file, dir-locals-find-file)
6938         (dir-locals-read-from-file, hack-dir-local-variables): Revert changes.
6940         * lisp/files-x.el (modify-dir-local-variable): Revert changes.
6942         * lisp/help-fns.el (describe-variable): Revert changes.
6944         * doc/emacs/custom.texi (Directory Variables): Revert changes.
6946         * etc/NEWS: Revert changes.
6948 2016-01-30  Glenn Morris  <rgm@gnu.org>
6950         * lisp/net/browse-url.el (browse-url-default-browser):
6951         Lower priority of non-free Chrome.
6953 2016-01-30  Glenn Morris  <rgm@gnu.org>
6955         Improve the custom type of some user options.
6957         * lisp/desktop.el (desktop-minor-mode-table):
6958         * lisp/man.el (Man-frame-parameters):
6959         * lisp/midnight.el (midnight-delay):
6960         * lisp/speedbar.el (speedbar-select-frame-method):
6961         * lisp/tooltip.el (tooltip-frame-parameters):
6962         * lisp/tree-widget.el (tree-widget-space-width):
6963         * lisp/type-break.el (type-break-keystroke-threshold):
6964         * lisp/woman.el (woman-imenu-generic-expression):
6965         * lisp/cedet/ede.el (ede-debug-program-function):
6966         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
6967         * lisp/emulation/viper-keym.el (viper-toggle-key):
6968         * lisp/erc/erc-networks.el (erc-server-alist):
6969         * lisp/gnus/message.el (message-deletable-headers, message-signature):
6970         * lisp/mail/mailalias.el (mail-directory-stream):
6971         * lisp/play/tetris.el (tetris-x-colors):
6972         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
6974 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
6976         Highlight CSS variables with variable name face
6978         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
6979         (css--font-lock-keywords): Highlight variables in
6980         `font-lock-variable-name-face'.
6982 2016-01-30  Glenn Morris  <rgm@gnu.org>
6984         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
6986 2016-01-30  Glenn Morris  <rgm@gnu.org>
6988         Mark some user options that can get evalled as risky.
6990         * lisp/allout.el (allout-title):
6991         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
6992         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
6993         * lisp/progmodes/gud.el (gud-tooltip-display):
6994         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
6995         Mark as risky.
6997 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
6999         Disable DebPrint in sys_read on MS-Windows
7001         * src/w32.c (sys_read): Disable a debugging print that is normal
7002         when non-blocking reads are retried.
7004 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
7006         ;Fix ChangeLog entry
7008 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
7010         Fix typos in Introduction to Emacs Lisp manual
7012         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
7013         (kill-new function, Digression into C)
7014         (Complete forward-sentence, Divide and Conquer, Find a File)
7015         (lengths-list-many-files, Columns of a graph, defcustom)
7016         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
7017         <dbastos@toledo.com>.
7019 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
7021         Bump version to 25.0.90
7023         * README:
7024         * configure.ac:
7025         * msdos/sed2v2.inp: Bump version to 25.0.90.
7027 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
7029         * etc/AUTHORS: Update the AUTHORS file
7031 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
7033         Bump version to 25.0.90
7035         * README:
7036         * configure.ac:
7037         * msdos/sed2v2.inp: Bump version to 25.0.90.
7039 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
7041         * etc/AUTHORS: Update the AUTHORS file
7043 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
7045         authors.el updates
7047         * admin/authors.el (authors-renamed-files-alist): Additions.
7049 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
7051         Make it possible to run make change-history on emacs-25
7053         * Makefile.in: Check if the current branch is emacs-25 instead of
7054           master.
7056 2016-01-30  lu4nx  <lx@shellcodes.org>
7058         Support Go language in 'etags'
7060         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
7061         <Go_help>: New help.
7062         <Go_suffixes>: New variable.
7063         (Go_functions): New function.
7064         <lang_names>: Add entry for Go.  (Bug#22370)
7066         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
7067         * doc/man/etags.1: Mention Go support.
7069         * etc/NEWS: Mention Go support.
7071         * test/etags/go-src/test.go:
7072         * test/etags/go-src/test1.go: New test files.
7073         * test/etags/Makefile (GOSRC): New variable.
7074         (SRCS): Add $(GOSRC).
7075         * test/etags/ETAGS.good_1:
7076         * test/etags/ETAGS.good_2:
7077         * test/etags/ETAGS.good_3:
7078         * test/etags/ETAGS.good_4:
7079         * test/etags/ETAGS.good_5:
7080         * test/etags/ETAGS.good_6:
7081         * test/etags/CTAGS.good: Adapt to addition of Go tests.
7083 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
7085         Improve Ruby support in 'etags'
7087         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
7088         singleton classes.  Remove class qualifiers from tags generated
7089         for method and constant names.  (Bug#22241)
7091         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
7092         are tagged by etags in Ruby.
7094         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
7096         * test/etags/ruby-src/test1.ru: Add more tests.
7097         * test/etags/ETAGS.good_1:
7098         * test/etags/ETAGS.good_2:
7099         * test/etags/ETAGS.good_3:
7100         * test/etags/ETAGS.good_4:
7101         * test/etags/ETAGS.good_5:
7102         * test/etags/ETAGS.good_6:
7103         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
7104         tests.
7106 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
7108         Adjust etags test results to changes in copyright years
7110         * test/etags/CTAGS.good:
7111         * test/etags/ETAGS.good_1:
7112         * test/etags/ETAGS.good_2:
7113         * test/etags/ETAGS.good_3:
7114         * test/etags/ETAGS.good_4:
7115         * test/etags/ETAGS.good_5:
7116         * test/etags/ETAGS.good_6: Adjust to shift in characters and
7117         in line numbers.
7119 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
7121         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
7123         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
7125 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
7127         Make it possible to run make change-history on emacs-25
7129         * Makefile.in: Check if the current branch is emacs-25 instead of
7130           master.
7132 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
7134         Don't fiddle with DEFAULT
7136         * lisp/progmodes/project.el (project--completing-read-strict):
7137         Don't change DEFAULT, whether is has any matches in
7138         COLLECTION, or not.
7140 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
7142         Document xwidget commands and functions
7144         * doc/lispref/display.texi (Xwidgets): New section, describes some
7145         of the xwidget primitives.
7146         * doc/lispref/display.texi (Display): Update the chapter menu.
7147         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
7148         * doc/emacs/emacs.texi (Top): Update the master menu to include
7149         the xwidget node.
7151 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
7153         Build fix for shr.el
7155         * shr.el (seq): Require.
7157 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
7159         Improve project-find-file yet again!
7161         * lisp/progmodes/project.el (project--completing-read-strict):
7162         New function.
7163         (project-find-file-in): Use it.
7164         (project-file-completion-table): Move the default
7165         implementation inside the cl-defgeneric form.
7166         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
7168 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
7170         Don't pass DIR to 'hg status'
7172         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
7173         Don't pass DIR to 'hg status' (bug#22481).
7175 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
7177         Fix typo in previous commits
7179         * lisp/progmodes/project.el (project-find-file-in):
7180         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
7181         commit.
7183 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
7185         Improve project-find-file
7187         * lisp/progmodes/project.el (project-file-completion-table): New.
7188         (project-find-file, project-or-external-find-file): Default to filename
7189         at point.
7190         (project-file-completion-table): New, split out from
7191         project--find-file-in.
7192         (project-find-file-in): Renamed from project--find-file-in, use
7193         project-file-completion-table.
7195         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
7196         (xref--find-ignores-arguments): Add doc string.
7198 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
7200         Implement vc-mtn-find-ignore-file, fix some doc strings
7202         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
7204         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
7206         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
7208         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
7210 2016-01-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
7212         Correct a whole bunch of bugs coming with renamed cell relocation.
7214         This is the same change as commit on master branch. See
7215         http://git.savannah.gnu.org/cgit/emacs.git/commit/?id=badcd38aa86ed7973f2be2743c405710973a0bdd
7217         * lisp/ses.el (ses-localvars): rename variable
7218         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
7219         and adjust the comment about it.
7220         (ses-plist-delq): new defun.
7221         (ses--ses-buffer-list): new defvar.
7222         (ses--unbind-cell-name): new defun.
7223         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
7224         (ses-relocate-formula): Undo change of
7225         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
7226         preventing relocation for named cell --- now doing this is delegated
7227         to function `ses-relocate-symbol'.
7228         (ses-relocate-range): In docstring, undo change of
7229         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
7230         lower case as it is not a variable.
7231         (ses-relocate-all): Cell name relocation : 1) check that cell is a
7232         renamed cell by testing `ses-cell' property to :ses-named, rather than
7233         comparing name to corresponding standard name. Set rowcol of renamed
7234         cell into the hashmap --- `ses-cell' property must not be used for
7235         that as the same name can be used for different locations in different
7236         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
7237         `local-variable-p' to check if cell name is already in use in this
7238         sheet or needs initialization.
7239         (ses-relocate-all): Cell value relocation : 1) like for name
7240         relocation use the `ses-cell' property rather than comparing actual
7241         name to corresponding standard name. 2) Correct bug introduced in
7242         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
7243         made the other way round than the intention --- ie value relocation
7244         was disabled for standard cell, not for renamed cell as was the
7245         intention.
7246         (ses-relocate-all): Add loop for unbinding deleted renamed cells
7247         names.
7248         (ses-killbuffer-hook): new defun.
7249         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
7250         kill buffer hook, plus pushing current buffer if new in list.
7251         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
7252         into `ses--in-killing-named-cell-list'.
7253         (ses-rename-cell): Remove update of variable
7254         `ses--renamed-cell-symb-list', this variable is renamed to
7255         `ses--in-killing-named-cell-list', and its setting is done in
7256         functions `ses-delete-row' and , `ses-delete-column' now.
7257         (ses-rename-cell): Make cell new name a buffer local variable.
7258         (ses-rename-cell): Change correction of
7259         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
7260         computation of the range over which `cursor-intangible' property was
7261         to be updated. This correction was ok for non spilling cells, but not
7262         for cells spilling over following blank cells. Simply use
7263         `next-single-property-change' rather than computing the end column
7264         from column widths.
7266 2016-01-29  Andreas Schwab  <schwab@linux-m68k.org>
7268         Re-enable checks in member, memql, delete to complain about non-lists
7270         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
7272 2016-01-29  Martin Rudalics  <rudalics@gmx.at>
7274         Minor doc(-string) tweaks
7276         * lisp/window.el (window-in-direction): Fix doc-string typo.
7277         * doc/lispref/frames.texi (Frame Font): Mention canonical
7278         character width/height.
7279         * doc/lispref/windows.texi (Windows and Frames): Clarify
7280         handling of minibuffer window for `window-in-direction'.
7281         (Window Sizes): Minor tweaks in descriptions of
7282         `window-max-chars-per-line', `window-min-width' and
7283         `window-min-size'.
7284         (Deleting Windows): Minor tweak in `delete-window' description.
7285         (Selecting Windows): Clarify window use time description.
7286         (Cyclic Window Ordering): Minor tweak.
7287         (Switching Buffers): Clarify description of
7288         `switch-to-buffer-in-dedicated-window'.
7290 2016-01-29  Eli Zaretskii  <eliz@gnu.org>
7292         Minor improvements to 'pcase' documentation
7294         * doc/lispref/control.texi (Pattern matching case statement):
7295         Improve the documentation of 'pcase' per comments.  See two
7296         discussion threads on emacs-devel@gnu.org for the details:
7297         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01335.html
7298         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01336.html.
7300 2016-01-29  Glenn Morris  <rgm@gnu.org>
7302         Don't use eval to quieten prolog.el compilation.
7304         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
7305         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
7307 2016-01-29  Glenn Morris  <rgm@gnu.org>
7309         Mark some risky prolog variables.
7311         * lisp/progmodes/prolog.el (prolog-system-version)
7312         (prolog-keywords, prolog-types, prolog-mode-specificators)
7313         (prolog-determinism-specificators, prolog-directives)
7314         (prolog-program-name, prolog-program-switches)
7315         (prolog-consult-string, prolog-compile-string)
7316         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
7317         Mark anything processed by prolog-find-value-by-system as risky.
7319 2016-01-28  Glenn Morris  <rgm@gnu.org>
7321         * lisp/custom.el (defcustom): Doc fix.
7323         * doc/lispref/customize.texi (Variable Definitions):
7324         Defcustom should always have a type.
7326 2016-01-28  Glenn Morris  <rgm@gnu.org>
7328         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
7329         Fix :type.
7331         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
7333 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
7335         Fix Bug#22452
7337         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
7338         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
7339         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
7340         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
7341         Mark it as connected.
7343         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
7344         connection property "connected" is set.  (Bug#22452)
7346 2016-01-27  Glenn Morris  <rgm@gnu.org>
7348         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
7350         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
7351         if not compiled with xwidgets.
7353 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
7355         C-u C-x = example doc fix
7357         * doc/emacs/mule.texi (International Chars):
7358         Adjust example to match current behavior of C-u C-x =.
7360 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
7362         malloc.h hygiene
7364         This attempts to future-proof Emacs a bit against possible glibc
7365         changes, by having Emacs use <malloc.h> declarations rather than
7366         coding them up by hand.  Problem noted by Florian Weimer in:
7367         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
7368         Implement this mainly by moving malloc.h-related functions from
7369         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
7370         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
7371         New function.
7372         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
7373         (alloc_unexec_pre, alloc_unexec_post): New functions.
7374         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
7375         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
7376         (__malloc_initialize_hook): Use it.
7377         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
7378         Move here from ...
7379         * src/emacs.c: ... here.
7380         (malloc_get_state, malloc_set_state): Remove extern decls.
7381         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
7382         All uses changed to similarly-named new function.
7383         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
7384         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
7385         New decls.
7387 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
7389         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
7391 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
7393         Remove never-set var handle_user_signal_hook
7395         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
7396         Remove never-set var.  All uses removed.
7398 2016-01-26  K. Handa  <handa@gnu.org>
7400         Backport:fix previous change of src/ftfont.c (ftfont_shape_by_flt)
7402         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
7403         second glyph only when there are enough glyphs.
7405         (cherry picked from commit 9835757013569673854b692ccbb58bfb3c3ed1f7)
7407 2016-01-26  K. Handa  <handa@gnu.org>
7409         support rendering of wider range of combinging characters by ftfont backend
7411         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
7412         supports rendering of combining characters, call
7413         font-shape-gstring.
7415         * src/font.c (Ffont_get): Handle `combining-capability' property.
7416         (syms_of_font): New symbol ":combining-capability'.
7418         * src/font.h (struct font_driver): New member combining_capability.
7420         * src/ftfont.c: Include "category.h".
7421         (ftfont_driver): Initialize combining_capability to
7422         ftfont_combining_capability.
7423         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
7424         FLT in advance.
7425         (ftfont_combining_capability): New function.
7427         (cherry picked from commit 536f48e9a2251b9e654ea974bd90ff2f40218753)
7429 2016-01-26  Anders Lindgren  <andlind@gmail.com>
7431         Fixed NextStep fullscreen issue (bug#22468)
7433         When in fullscreen mode, `[screen visibleFrame]' sometimes
7434         includes, sometimes excludes the menu bar. This could cause
7435         a frame to be placed too low when in fullscreen mode.
7437         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
7438         (constrain_frame_rect): New parameter, isFullscreen, when true don't
7439         query the height of the menu bar.
7440         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
7441         `constrain_frame_rect'.
7442         ([EmacsView initFrameFromEmacs:]): Trace.
7443         ([EmacsView isFullscreen]): Trace.
7444         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
7445         state to `constrain_frame_rect'.
7447 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
7449         * lisp/files.el: Use a fixed file name for the second dir-locals file
7451         (dir-locals-file): Revert to its original fixed value.
7452         (dir-locals-file-2): New const.
7453         (dir-locals--all-files): Don't use `file-name-all-completions'.
7454         Instead, just check for the 2 dir-locals files and return a list
7455         of the ones that exit (if any).
7457         * etc/NEWS: Document the change.
7459         * doc/emacs/custom.texi (Directory Variables): Document the change.
7461         * doc/lispref/variables.texi (Directory Local Variables): Update
7462         accordingly.
7464 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
7466         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
7468         Change a variable name to be more meaningful, and reorder some of
7469         the code with no change in behaviour.
7471 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
7473         * lisp/files.el (dir-locals-find-file): Refactor return values
7475         Returning a cache remains unchanged, but the case of returning a
7476         file (or pattern) is now changed to return the contaning
7477         directory.
7479         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
7480         and make obsolete.
7481         (dir-locals-read-from-dir): Simplify accordingly.
7482         (hack-dir-local-variables): Simplify accordingly and rename a
7483         variable.
7485 2016-01-26  Glenn Morris  <rgm@gnu.org>
7487         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
7488         Declare.
7490         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
7492         * configure.ac (--with-cairo): Say it's experimental.
7494         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
7495         Rename using American spelling.  Update all uses.
7497 2016-01-26  Glenn Morris  <rgm@gnu.org>
7499         Yet more xwidget doc fixes.
7501         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
7502         (xwidget-insert, xwidget-webkit-browse-url)
7503         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
7504         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
7505         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
7506         (xwidget-webkit-show-id-element)
7507         (xwidget-webkit-show-id-or-named-element)
7508         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
7509         (xwidget-webkit-execute-script-rv)
7510         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
7511         (xwidget-put):  Doc fixes.
7512         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
7513         (xwidget-webkit-show-id-element)
7514         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
7516 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
7518         * lisp/gnus/gnus-art.el (gnus-blocked-images):
7519         Add explicit nil choice and tags.
7521 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
7523         Spelling fixes
7525 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
7527         (font-lock-ensure-function): Fix bug#22399
7529         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
7530         font-lock-mode is not enabled (bug#22399).
7532 2016-01-25  Alan Mackenzie  <acm@muc.de>
7534         Expunge "allow" + infinitive from source and doc, part 2.
7536         Do the same for "permit", "enable", "prevent", and (where appropriate)
7537         "require".
7539         doc/misc/reftex.texi:
7540         doc/misc/url.texi:
7541         lib/get-permissions.c:
7542         lib/strftime.c:
7543         lisp/org/org-element.el:
7544         lisp/org/org-mobile.el:
7545         lisp/textmodes/reftex-vars.el:
7546         src/bidi.c:
7547         src/emacs.c:
7548         src/xdisp.c:
7549         test/etags/c-src/emacs/src/lisp.h:
7551         Expunge the likes of "This allows to do something" from the above files.
7553 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
7555         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
7557         `special-mode' is already read-only.
7559 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
7561         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
7563 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
7565         Port "$@" to OpenIndiana ksh93
7567         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
7568         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
7569         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
7570         bug in long-dead shells, so remove the workaround.
7571         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
7572         Use plain "$@" rather than ${1+"$@"}.
7574 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
7576         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
7578 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
7580         Improve wording for SMB support
7582         * doc/misc/tramp.texi (External methods): Improve and modernize
7583         wording for discussion of smbclient.  There is no longer any
7584         need to mention the laundry list of old MS Windows implementations
7585         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
7587 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
7589         Merge from gnulib
7591         This incorporates:
7592         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
7593         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
7594         2016-01-15 detect utimes() correctly on OS/2 kLIBC
7595         2016-01-15 openat_proc_name: port to OS/2 kLIBC
7596         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
7597         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
7598         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
7599         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
7600         2016-01-14 sig2str: list all signals on FreeBSD >= 7
7601         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
7602         2016-01-12 mktime: rename macro to avoid glibc clash
7603         2016-01-12 Port "$@" to OpenIndiana ksh93
7604         2016-01-12 Port Universal Time settings to strict POSIX
7605         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
7606         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
7607         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
7608         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
7609         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
7610         * m4/fcntl.m4, m4/utimes.m4:
7611         Copy from gnulib.
7612         * m4/gnulib-comp.m4: Regenerate.
7614 2016-01-24  Alan Mackenzie  <acm@muc.de>
7616         Expunge "allow" + infinitive without direct object from source and doc.
7618         Do the same for "permit", "enable", and "prevent".
7620         * doc/emacs/mule.texi:
7621         * doc/lispref/control.texi:
7622         * doc/lispref/display.texi:
7623         * doc/lispref/frames.texi:
7624         * doc/lispref/functions.texi:
7625         * doc/lispref/nonascii.texi:
7626         * doc/lispref/streams.texi:
7627         * doc/lispref/windows.texi:
7628         * doc/misc/dbus.texi:
7629         * doc/misc/eww.texi:
7630         * doc/misc/flymake.texi:
7631         * doc/misc/octave-mode.texi:
7632         * doc/misc/org.texi:
7633         * doc/misc/reftex.texi:
7634         * doc/misc/tramp.texi:
7635         * doc/misc/wisent.texi:
7636         * etc/NEWS:
7637         * lisp/autorevert.el:
7638         * lisp/cedet/mode-local.el:
7639         * lisp/cedet/semantic/senator.el:
7640         * lisp/cedet/semantic/wisent.el:
7641         * lisp/dos-fns.el:
7642         * lisp/frameset.el:
7643         * lisp/gnus/gnus-agent.el:
7644         * lisp/gnus/mm-util.el:
7645         * lisp/international/characters.el:
7646         * lisp/ldefs-boot.el:
7647         * lisp/mail/mailclient.el:
7648         * lisp/man.el:
7649         * lisp/mh-e/mh-search.el:
7650         * lisp/net/tramp-cmds.el:
7651         * lisp/net/tramp-gvfs.el:
7652         * lisp/org/org-crypt.el:
7653         * lisp/org/org-element.el:
7654         * lisp/org/org-feed.el:
7655         * lisp/org/org.el:
7656         * lisp/org/ox-ascii.el:
7657         * lisp/org/ox-icalendar.el:
7658         * lisp/org/ox-publish.el:
7659         * lisp/org/ox.el:
7660         * lisp/play/gamegrid.el:
7661         * lisp/play/gomoku.el:
7662         * lisp/progmodes/antlr-mode.el:
7663         * lisp/progmodes/python.el:
7664         * lisp/progmodes/vhdl-mode.el:
7665         * lisp/strokes.el:
7666         * lisp/textmodes/ispell.el:
7667         * lisp/tree-widget.el:
7668         * lisp/vc/pcvs.el:
7669         * lisp/window.el:
7670         * src/lisp.h:
7671         * src/w32.c:
7672         * src/w32heap.c:
7673         * src/w32term.c:
7674         * src/window.c:
7675         * src/xfaces.c:
7677         Replace solecisms like "This allow to do something" with a correct
7678         alternative, such as "This allow you to do something", "This allows
7679         something to be done" or "This allows the doing of something".
7681 2016-01-24  l3thal  <kwhite@gnu.org>
7683         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
7685 2016-01-24  Kelvin White  <kwhite@gnu.org>
7687         Add NEWS entry for asynchronous reconnect in ERC
7689 2016-01-24  l3thal  <kwhite@gnu.org>
7691         Add NEWS entry for asynchronous reconnect in ERC
7693 2016-01-24  Kelvin White  <kwhite@gnu.org>
7695         browse-url.el: Add 'google-chrome' to supported browsers.
7697 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
7699         Port Tramp manual to latest Texinfo
7701         Otherwise, 'make pdf' did not work (Bug#22416).
7702         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
7703         (trampfn): Specialize to the case where METHOD is nonempty.
7704         The 2nd argument is now user@host, not 2nd user and 3rd host args.
7705         All uses changed.
7706         (trampf): New macro.
7708 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
7710         * eww.el (eww-render): Protect against empty content-types.
7712 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
7714         authors.el updates
7716         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
7717           Additions.
7719 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
7721         Rename xref-query-replace to xref-query-replace-in-results
7723         * lisp/progmodes/xref.el(xref-query-replace):
7724         Rename to xref-query-replace-in-results.
7725         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
7727         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
7728         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
7729         * doc/emacs/dired.texi (Operating on Files):
7730         * doc/emacs/maintaining.texi (Xref Commands)
7731         (Identifier Search, Identifier Search): Update accordingly.
7733 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
7735         Update cl-defgeneric and cl-defmethod docstrings
7737         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
7738         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
7739         (cl-defmethod): Mention that multiple dispatch arguments are
7740         allowed.  Document supported types.  (Bug#22336)
7742 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
7744         Comment out next-error-function integration in xref
7746         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
7747         Comment out next-error-function integration
7748         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
7750 2016-01-23  John Wiegley  <johnw@newartisans.com>
7752         Correct a use of "which" in intro.texi
7754 2016-01-23  Alan Mackenzie  <acm@muc.de>
7756         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
7758         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
7759         context of case labels (including "default") more rigorously.
7760         (c-guess-basic-syntax CASE 15): Consequential amendment.
7762         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
7764 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
7766         Don't operate on menu bar of nonexistent frame
7768         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
7769         is valid before redisplaying its menu. Fixes bug#22438.
7771 2016-01-23  Anders Lindgren  <andlind@gmail.com>
7773         Unbreak the GNUstep build.
7775         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
7776         predefined "caution" image. Add trace.
7777         (x_set_window_size): Remove unused variables `cols' and `rows'.
7778         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
7779         GNUstep is used.
7780         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
7781         ([EmacsWindow zoom:]): Remove unused variable `f'.
7783 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
7784             John Wiegley  <johnw@gnu.org>
7785             Michael Heerdegen  <michael_heerdegen@web.de>
7787         Improve documentation of 'pcase'
7789         * doc/lispref/control.texi (Pattern matching case statement):
7790         Reorganize, expand, and improve wording.
7792         * etc/NEWS: Mention that 'pcase' changes are documented.
7794 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
7796         * etc/NEWS: Say that Cairo is experimental.
7798 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
7800         Report error for PNG under Cairo
7802         * src/image.c (lookup_rgb_color): Signal a file error instead
7803         of dumping core when mishandling an image.
7805 2016-01-23  Arash Esbati  <esbati@gmx.de>
7807         Delete a spurious backquote (tiny change)
7809         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
7810         spurious backquote which raises an error with emacs 25.
7812 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
7814         Pacify --enable-gcc-warnings --with-cairo
7816         Problem reported by Alexander Kuleshov in:
7817         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
7818         * src/gtkutil.c (xg_get_page_setup):
7819         Use switch rather than if-then-else.
7820         * src/image.c (COLOR_TABLE_SUPPORT):
7821         Define directly rather than via #define and optional later #undef.
7822         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
7823         Crash when the pixel is undefined, as there is a genuine bug
7824         here (Bug#22442).
7825         * src/image.c (tiff_load, gif_load, svg_load_image)
7826         (x_kill_gs_process) [USE_CAIRO]:
7827         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
7828         Omit unused locals, or move them to where they’re needed.
7829         (x_clear_area1): Now ATTRIBUTE_UNUSED.
7831 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
7833         Update documentation for Dired search and replace
7835         * doc/emacs/dired.texi (Operating on Files): Update descriptions
7836         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
7837         'dired-do-find-regexp-and-replace'.
7839         * etc/NEWS: Mention xref-related changes in Dired.
7841 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
7843         Port recent xdisp.c fix to picky C compilers
7845         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
7846         putting #if inside the arguments to a standard function, which
7847         the C standard says has undefined behavior.
7849 2016-01-22  Alan Mackenzie  <acm@muc.de>
7851         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
7853         * lisp/progmodes/cc-engine.el (c-forward-declarator): New function.
7854         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
7855         contained in the preceding arg list.
7857         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Use the new function
7858         `c-forward-declarator' in place of inline code.
7860 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
7862         Fix the build with --enable-checking=glyphs
7864         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
7865         build without xwidget support.
7867 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
7869         Document cl-generic.el
7871         * doc/lispref/functions.texi (Generic Functions): New section.
7872         (Bug#22336)
7873         (Functions): Update the chapter menu.
7874         * doc/lispref/elisp.texi: Update the master menu.
7876 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
7878         xwidgets style cleanup
7880         Adjust the newly-added Xwidgets code so that it uses a more-typical
7881         Emacs style.  This should not affect behavior, except that in
7882         a few places it adds runtime checks that Lisp arguments are of
7883         the proper type, and in one place it uses more-precise arithmetic.
7884         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
7885         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
7886         Include xwidget.h unconditionally.
7887         * src/buffer.c (Fkill_buffer):
7888         * src/dispnew.c (update_window):
7889         * src/emacs.c (main):
7890         * src/print.c (print_object):
7891         * src/window.c (Fdelete_window_internal):
7892         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
7893         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
7894         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
7895         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
7896         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
7897         Call xwidget functions and macros without worrying about
7898         HAVE_XWIDGETS when the code is a no-op on non-xwidget
7899         platforms.
7900         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
7901         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
7902         (struct it.xwidget):
7903         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
7904         Always define.
7905         * src/emacsgtkfixed.h: Omit unnecessary comment.
7906         * src/keyboard.c: Fix spacing.
7907         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
7908         Define to be a no-op if not HAVE_XWIDGETS.
7909         * src/xwidget.c: Include xwidget.h first (after config.h)
7910         to make sure that it can stand by itself.
7911         (Fmake_xwidget, Fxwidget_webkit_execute_script):
7912         Fix typo in doc string.
7913         (Fmake_xwidget): Check type of args.
7914         (Fmake_xwidget, offscreen_damage_event)
7915         (webkit_document_load_finished_cb, webkit_download_cb)
7916         (webkit_new_window_policy_decision_requested_cb)
7917         (webkit_navigation_policy_decision_requested_cb)
7918         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
7919         (xwidget_osr_event_set_embedder, xwidget_init_view):
7920         Omit unnecessary casts.
7921         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
7922         (xwidget_show_view, xwidget_hide_view)
7923         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
7924         (xwidget_touched):
7925         * src/xwidget.h (struct xwidget.kill_without_query)
7926         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
7927         Use bool for boolean.
7928         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
7929         Simplify by using list functions.
7930         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
7931         (Fxwidget_resize): Check type of integer args
7932         before doing any work.  Check that they are nonnegative.
7933         (Fxwidget_set_adjustment): Check type of integer arg.
7934         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
7935         Simplify.  Use double, not float.
7936         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
7937         (valid_xwidget_spec_p): Simplify.
7938         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
7939         * src/xwidget.h: Include lisp.h first, so that includers do
7940         not need to worry about doing that before including this file.
7941         Make this .h file safe to include even on non-HAVE_XWIDGETS
7942         configurations, to simplify the includers.
7943         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
7944         (xwidget_end_redisplay, lookup_xwidget)
7945         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
7946         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
7947         (struct glyph_matrix, struct glyph_string, struct xwidget)
7948         (struct xwidget_view, struct window):
7949         New forward or incomplete decls, so that includers need not
7950         assume the corresponding .h files are already included, or that
7951         HAVE_XWIDGETS is defined.
7952         (struct xwidget_type, xwidget_from_id): Remove; unused.
7954 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
7956         Backport kqueue integration from master
7958         * configure.ac (--with-file-notification): Add kqueue.
7959         (top): Remove special test for "${HAVE_NS}" and
7960         ${with_file_notification}, this is handled inside gfilenotify
7961         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
7962         instead of library specific variables.  Add error message for
7963         gfile on Nextstep.
7965         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
7966         Fix some glitches in the example.
7968         * etc/NEWS: Mention kqueue.
7970         * lisp/filenotify.el (file-notify--library)
7971         (file-notify-descriptors, file-notify-callback)
7972         (file-notify-add-watch, file-notify-rm-watch)
7973         (file-notify-valid-p): Add kqueue support.
7974         (file-notify--rm-descriptor): Remove WHAT arg.
7976         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
7978         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
7980         * src/inotify.c (inotifyevent_to_event): Extract file name from
7981         watch_object if the event doesn't provide it.
7982         (Finotify_add_watch): Add file name to watch_object.
7984         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
7986         * src/kqueue.c: New file.
7988         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
7990         * test/automated/file-notify-tests.el
7991         (file-notify--test-expected-events): Remove.
7992         (file-notify--test-cleanup): Do not set that variable.
7993         (file-notify--test-timeout) Use different timeouts for
7994         different libraries.
7995         (file-notify--test-library): New defun.
7996         (file-notify--test-event-test): Make stronger checks.
7997         (file-notify--test-with-events): EVENTS can also be a list of
7998         lists.  Flush outstanding events before running the body.
7999         Make timeout heuristically depend on the number of events.
8000         (file-notify-test01-add-watch, file-notify-test02-events)
8001         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
8002         Rewrite in order to call file monitors but directory monitors.
8003         (file-notify-test02-events, file-notify-test04-file-validity): Do
8004         not skip cygwin tests.  Add additional test for file creation.
8005         Adapt expected result for different backends.
8006         (file-notify-test03-autorevert): Some of the tests don't work for
8007         w32notify.
8008         (file-notify-test06-many-events): New test.
8010 2016-01-22  John Wiegley  <johnw@newartisans.com>
8012         Further corrections to the pcase docstring
8014 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
8016         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
8018 2016-01-22  Stephen Leake  <stephen_leake@stephe-leake.org>
8020         In xref-collect-references, force backends to respect the 'dir' arg
8022         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
8023         to use `default-directory'.
8025 2016-01-22  John Wiegley  <johnw@newartisans.com>
8027         Minor correction to pcase docstring
8029 2016-01-22  John Wiegley  <johnw@newartisans.com>
8031         Write a new docstring for the pcase macro
8033         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
8035 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
8037         Avoid byte-compiler warning in todo-mode (bug#21953)
8039         * lisp/calendar/todo-mode.el (todo-convert-legacy-files): Add limit argument
8040         to looking-back to comply with advertised-calling-convention.
8042 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
8044         Fix desktop support in todo-mode and doc-view (bug#22377)
8046         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
8047         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
8049         * lisp/calendar/todo-mode.el (todo-modes-set-2):
8050         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
8052 2016-01-21  Paul Eggert  <eggert@cs.ucla.edu>
8054         No need to configure gobject-introspection
8056         It wasn’t needed for the recently-installed xwidget_mvp code; see:
8057         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
8058         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
8059         (HAVE_GIR):
8060         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
8061         Remove.  All uses removed.
8062         * configure.ac (emacs_config_features): Don’t worry about GIR.
8064 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
8066         Don’t export C symbols not used elsewhere
8068         These were recently added, mostly as part of xwidget code.
8069         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
8070         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
8071         Now static functions here, not macros in emacsgtkfixed.h.
8072         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
8073         Remove.  All uses replaced by definiens.
8074         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
8075         Remove; these are now static functions in emacsgtkfixed.c.
8076         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
8077         Remove; unused.
8078         (emacs_fixed_get_type): Remove decl; no longer extern.
8079         * src/xwidget.c (offscreen_damage_event)
8080         (webkit_mime_type_policy_typedecision_requested_cb)
8081         (webkit_new_window_policy_decision_requested_cb)
8082         (webkit_navigation_policy_decision_requested_cb)
8083         (xwidget_spec_value, xwidget_view_lookup)
8084         (xwidget_start_redisplay, xwidget_touch):
8085         Now static.
8086         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
8087         Remove decls.
8089 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
8091         Support squiggly heredocs in ruby-mode
8093         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
8094         Support squiggly heredocs added in Ruby 2.3.
8096         * test/indent/ruby.rb: Add squiggly example.
8098 2016-01-20  Glenn Morris  <rgm@gnu.org>
8100         * configure.ac (emacs_config_features): Remove WEBKIT.
8102 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
8104         Port to platforms with gtk3 but not webkitgtk3
8106         I ran into this problem on my Fedora 23 installation;
8107         Emacs configured but did not build when --with-xwidgets was specified.
8108         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
8109         (DOES_XWIDGETS_USE_GIR): New var.
8110         If --with-xwidgets is specified, report an error if not
8111         doable, to be consistent with the other --with options.
8112         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
8113         not work at all without webkitgtk3.  Simplify use of
8114         EMACS_CHECK_MODULES.  Output message about gobject
8115         introspection only if xwidgets are used.
8116         * etc/NEWS: Users need webkitgtk3, not merely webkit.
8117         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
8118         since this file is no longer compiled if webkitgtk3 is not available.
8120 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
8122         Fix doc string of 'isearch-search-fun-function'
8124         * lisp/isearch.el (isearch-search-fun-function)
8125         (isearch-search-string): Doc fixes.  (Bug#22411)
8127 2016-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>
8129         * lisp/xwidget.el: Nitpicks
8131         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
8132         Use with-current-buffer rather than save-excursion + set-buffer.
8134 2016-01-20  Glenn Morris  <rgm@gnu.org>
8136         Don't hard-code 1 as point-min.
8138         * lisp/image-mode.el (image-display-size):
8139         * lisp/xwidget.el (xwidget-webkit-last-session)
8140         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
8142 2016-01-20  Glenn Morris  <rgm@gnu.org>
8144         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
8146 2016-01-20  Glenn Morris  <rgm@gnu.org>
8148         Trivial doc copyedits.
8150         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
8151         (Fxwidget_webkit_get_title, Fxwidget_resize)
8152         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
8153         (Fxwidget_info, Fxwidget_view_lookup)
8154         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
8156 2016-01-20  Glenn Morris  <rgm@gnu.org>
8158         Avoid advising image-display-size for xwidgets.
8160         * lisp/xwidget.el (xwidget-image-display-size): Remove.
8161         (image-display-size): Remove advice.
8162         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
8163         (image-display-size): Incorporate xwidget code directly.
8165 2016-01-20  Glenn Morris  <rgm@gnu.org>
8167         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
8169         * lisp/xwidget.el (window-configuration-change-hook)
8170         (kill-buffer-query-functions): Only modify these hooks if
8171         compiled with xwidget support.
8173 2016-01-20  Glenn Morris  <rgm@gnu.org>
8175         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
8177 2016-01-19  Glenn Morris  <rgm@gnu.org>
8179         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
8181         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
8183         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
8185 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
8187         * lisp/gnus/nnir.el (nnir-request-update-mark):
8188         Default to the original mark.
8189         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
8190         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
8192 2016-01-19  Glenn Morris  <rgm@gnu.org>
8194         * lisp/xwidget.el (report-xwidget-bug): Remove.
8196         (top-level): No longer require reporter.
8198 2016-01-19  Joakim Verona  <joakim@verona.se>
8199             Grégoire Jadi  <daimrod@gmail.com>
8201         Support for the new Xwidget feature.
8203         * configure.ac:
8204         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
8205         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
8206         * src/xdisp.c:
8207         (handle_display_spec, handle_single_display_spec, push_it)
8208         (pop_it, set_iterator_to_next, dump_glyph)
8209         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
8210         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
8211         (produce_xwidget_glyph, x_produce_glyphs)
8212         (get_window_cursor_type):
8213         * src/window.c (Fdelete_window_internal):
8214         * src/termhooks.h (e):
8215         * src/print.c (print_object):
8216         * src/lisp.h (ptrdiff_t):
8217         * src/keyboard.c (kbd_buffer_get_event, make_lispy_event)
8218         (syms_of_keyboard):
8219         * src/emacs.c (main):
8220         * src/dispnew.c (update_window, scrolling_window):
8221         * src/dispextern.h (g, i):
8222         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
8223         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
8224         * src/keyboard.c (kbd_buffer_get_event):
8225         * src/emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
8226         (emacs_fixed_class_init): Add case for an xwidget view.
8228         * src/xwidget.c, src/xwidget.h, lisp/xwidget.el: New files for xwidgets
8231         Various improvements to the Xwidget feature.
8232         * src/xwidget.c:
8233         * src/emacsgtkfixed.c:
8234         * lisp/xwidget.el:
8236 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
8238         Improve documentation of 'alist-get'
8240         * doc/lispref/variables.texi (Setting Generalized Variables): Add
8241         'alist-get' to the list of functions that can appear in PLACE
8242         argument of 'setf'.
8244 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
8246         Minor copyedits of doc/emacs/maintaining.texi
8248         * doc/emacs/maintaining.texi (List Identifiers): More accurate
8249         description of "C-M-i" wrt tags tables.
8250         (Tags Tables): Move the definition of "tag" to a footnote.
8252 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
8254         Unbreak the Cygwin-w32 build
8256         * src/w32fns.c (globals_of_w32fns): Move the initialization of
8257         resetstkoflw into a part that isn't compiled on Cygwin.
8258         (Bug#22403)
8260 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8262         * shr.el (shr-table-body): Allow tables to have text children.
8264 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
8266         Cope with multiple overlapping faces.
8268         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
8269           left.
8270           (hfy-face-resolve-face): Handle font specification as well as font
8271           name. Documentation update. (Bug#21990)
8273 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
8275         Fix spurious escapes in describe-input-method
8277         Problem reported by Vincent Belaïche (Bug#22309).
8278         * lisp/international/mule-cmds.el (describe-language-environment):
8279         * lisp/international/quail.el (quail-help):
8280         Apply substitute-command-keys to doc strings before displaying them.
8282 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
8284         Minor improvements to (random t) documentation
8286         * doc/lispref/numbers.texi (Random Numbers):
8287         * src/fns.c (Frandom):
8288         Omit unnecessary details about randomness fallback.
8289         Say that it is a fallback.
8291 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
8293         Rename methods in Ruby etags example file
8295         * test/etags/ruby-src/test.rb: Rename the example methods to
8296         correspond to the common terminology used in Ruby.
8297         * test/etags/CTAGS.good:
8298         * test/etags/ETAGS.good_1:
8299         * test/etags/ETAGS.good_2:
8300         * test/etags/ETAGS.good_3:
8301         * test/etags/ETAGS.good_4:
8302         * test/etags/ETAGS.good_5:
8303         * test/etags/ETAGS.good_6: Adjust accordingly.
8305 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
8307         Propertize backtick in 'def `(abc)' as symbol constituent
8309         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
8310         Propertize backtick in 'def `(abc)' as symbol constituent.
8311         (ruby-syntax-propertize-function):
8312         Rename to ruby-syntax-propertize.
8314 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
8316         Fix scrolling under scroll-preserve-screen-position on TTY
8318         * src/window.c (window_scroll_line_based): When setting point to
8319         preserve screen coordinates, don't let cursor enter either of the
8320         two scroll margins.  (Bug#22395)
8322 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8324         Fix shr table rendering of nested tables
8326         * shr.el (shr-table-body): Don't include all tbodies in nested
8327         tables in the levels above.
8329 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
8331         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
8333 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
8335         Add xref-based replacements for Dired search commands
8337         * lisp/dired-aux.el (dired-do-find-regexp)
8338         (dired-do-find-regexp-and-replace): New commands.
8339         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
8341         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
8342         `Q' to the new commands.
8344         * lisp/progmodes/xref.el (xref-query-replace)
8345         (xref-collect-matches): Add progress reporters.
8346         (xref--find-ignores-arguments): Return nil for zero ignores.
8347         (xref--show-xrefs): Add an optional argument.
8348         (xref-collect-matches): Drop the assert.  'find' accepts a
8349         regular file in place of directory argument, too.
8351 2016-01-18  Alan Mackenzie  <acm@muc.de>
8353         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
8355 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
8357         Improve user documentation of Xref
8359         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
8360         (Looking Up Identifiers, Identifier Search, List Identifiers):
8361         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
8362         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
8363         for the details.
8365 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
8367         Fix scrolling under scroll-preserve-screen-position and margins
8369         * src/window.c (window_scroll_pixel_based): When setting point to
8370         preserve screen coordinates, don't let cursor enter either of the
8371         two scroll margins.  Fix incorrect usage of
8372         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
8373         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
8375 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
8377         Unbreak the MS-Windows build
8379         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
8380         WINDOWSNT, to avoid link failure.  (Bug#22202)
8382 2016-01-18  Alan Mackenzie  <acm@muc.de>
8384         Desktop: protect users against inadvertant upgrading of desktop file.
8386         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
8388         * etc/NEWS: Add an entry about upgrading a desktop file.
8390         * lisp/desktop.el (desktop-file-version): Amend doc string.
8391         (desktop-native-file-version, desktop-io-file-version): new variables.
8392         (desktop-clear): Set desktop-io-file-version to nil.
8393         (desktop-buffer-info): make the presence of the last item on the list
8394         conditional on (>= desktop-io-file-version 208).
8395         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
8396         Amend the doc string.  Add code to determine the output file version.
8397         (desktop-create-buffer): Set desktop-io-file-version to the input file's
8398         version.
8400 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
8402         Initialize GnuTLS before calling gnutls_rnd
8404         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
8405         Don’t set gnutls_global_initialized if gnutls_global_init fails.
8406         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
8407         if 2.12 or later, which has gnutls_rnd.
8408         (emacs_gnutls_global_init, gnutls_rnd): New fallback
8409         placeholder macros if before 2.12.
8410         (init_random): Initialize gnutls globals before trying to
8411         use gnutls_rnd.
8413 2016-01-18  Andreas Schwab  <schwab@linux-m68k.org>
8415         Don't use GnuTLS before it is initialized
8417                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
8419 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
8421         Port cleanup attribute to OpenBSD
8423         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
8424         sprintf, and this messes up 'configure' when it tests for the cleanup
8425         attribute.  Work around the problem by using __has_attribute directly.
8426         Problem reported by Joakim Jalap (Bug#22385).
8427         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
8428         * m4/ax_gcc_var_attribute.m4: Remove.
8429         * src/conf_post.h (__has_attribute): Provide a substitute, for
8430         non-GCC or older GCC compilers.  All uses changed to assume
8431         the substitute.  Check for the cleanup attribute.
8432         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
8434 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
8436         Prefer GnuTLS when acquiring random seed
8438         This attempts to improve on the fix for Bug#22202.
8439         * configure.ac (HAVE_DEV_URANDOM): Remove.
8440         Check /dev/urandom existence at run time, not at build time,
8441         since the device could exist in the former but not the latter.
8442         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
8443         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
8444         (random_seed): New typedef.
8445         (set_random_seed): New static function.
8446         (seed_random): Use them.
8447         (init_random): Use random_seed instead of uintmax_t, so as to
8448         not consume more entropy than needed.  Prefer gnutls_rnd if it
8449         works; this avoids a redundant open of /dev/urandom on
8450         GNU/Linux with modern GnuTLS.
8452 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8454         Improve documentation of dynamic modules
8456         * doc/lispref/loading.texi (How Programs Do Loading): Update the
8457         description of searching for files in 'load' when Emacs was built
8458         with support for dynamic modules.
8460 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8462         * INSTALL: Document --with-modules.
8464 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8466         Document 'function-put'
8468         * doc/lispref/symbols.texi (Symbol Plists): Document
8469         'function-put'.  Update documentation of 'function-get'.
8471 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8473         Document 'funcall-interactively'
8475         * doc/lispref/commands.texi (Interactive Call): Document
8476         'funcall-interactively'.
8477         * doc/lispref/functions.texi (Calling Functions): Mention
8478         'funcall-interactively' and provide a cross-reference.
8480 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8482         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
8484         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
8486 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8488         Document renaming of selection-related functions
8490         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
8491         functions into the corresponding "gui-*" functions.  Make the
8492         description slightly less X-centric.
8494 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8496         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
8498 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8500         Document 'define-inline'
8502         * doc/lispref/functions.texi (Defining Functions): Document
8503         'define-inline' and related macros.
8505         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
8507 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
8509         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
8511         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
8513 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
8515         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
8517         instead of manually writing a dir-locals file.
8519 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
8521         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
8523         (dir-locals-file)
8524         * lisp/files-x.el (modify-dir-local-variable)
8525         * lisp/dos-fns.el (dosified-file-name)
8526         * lisp/help-fns.el (describe-variable): Change accordingly.
8528 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
8530         Fix incompatbilities with MS-Windows 2000 and older
8532         * src/w32.c <multiByteToWideCharFlags>: New global variable.
8533         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
8534         Use it instead of the literal MB_ERR_INVALID_CHARS.
8535         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
8536         appropriate for the underlying OS version.  For details, see
8537         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
8538         * src/w32.h: Declare multiByteToWideCharFlags.
8539         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
8540         (add_tray_notification): Use multiByteToWideCharFlags instead of
8541         the literal MB_ERR_INVALID_CHARS.
8542         (_resetstkoflw_proc): New typedef.
8543         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
8544         pointer, as this function is absent in msvcrt.dll shipped with W2K
8545         and older systems.
8547 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8549         Mention in PROBLEMS an issue with MS-Windows NT4
8551         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
8552         on Windows NT4.  For the details, see
8553         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
8555 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
8557         Ensure 8-byte aligned memory allocation on MS-Windows 9X
8559         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
8560         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
8561         (malloc_after_dump_9x, realloc_after_dump_9x)
8562         (free_after_dump_9x): New functions.  (Bug#22379)  See also
8563         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
8564         for more details about the original problem.
8566         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
8567         (free_after_dump_9x): Add prototypes.
8569 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8571         Fix tests for active region in hideif.el
8573         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
8574         'use-region-p' to test whether to operate on region, instead of
8575         testing 'mark-active'.
8577 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
8579         Fix interactive specs in some hideif.el commands
8581         * lisp/progmodes/hideif.el (hif-evaluate-macro)
8582         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
8583         in commands that should only act on the region if it's active.
8585 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
8587         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
8589 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
8591         Enable test selector from command line
8593         * test/automated/Makefile.in: Change variable manipulation to avoid
8594           over-writing selector.
8596 2016-01-15  Alan Mackenzie  <acm@muc.de>
8598         Don't confuse "::" with ":" when trying to parse member initializers.
8600         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
8601         more robustly for ":" token when searching backwards for it.
8603         * lisp/progmodes/cc-langs.el (c-:$-multichar-token-regexp): New language
8604         variable.
8606 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
8608         Ensure positive number of glyphs for margins of positive width
8610         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
8611         positive value when a non-zero width of the marginal area was
8612         requested.  (Bug#22356)
8614 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
8616         Fix crashes when mini-window has non-zero margins
8618         * src/window.c (resize_frame_windows): Use 'new_size' to set
8619         minibuffer window's 'total_cols' value, as 'size' might be in
8620         pixels.  (Bug#22356)
8622 2016-01-15  Alan Mackenzie  <acm@muc.de>
8624         In comment-dwim with style `extra-line', respect indent-tabs-mode.
8626         This fixes bug #22369.
8628         * lisp/newcomment.el (comment-make-bol-ws): New function.
8629         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
8631 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
8633         Make 'random' seeds cryptographically secure if possible
8635         * configure.ac: Check for "/dev/urandom".
8637         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
8638         for the seed from "/dev/urandom".
8639         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
8640         * src/fns.c (Frandom): Update the doc string to indicate that
8641         system entropy is used when available.
8642         * src/w32.c: Include wincrypt.h.
8643         (w32_init_crypt_random, w32_init_random): New functions, use the
8644         CryptGenRandom API.
8645         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
8646         * src/w32.h (w32_init_random): Add prototype.
8648         * doc/lispref/numbers.texi (Random Numbers): Document more details
8649         about 't' as the argument to 'random'.
8651         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
8652         strong seed if possible.
8654         (Bug#22202)
8656 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
8658         Unhide the --no-line-directive option to 'etags'
8660         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
8661         option.  (Bug#22306)
8663         * doc/man/etags.1: Document the --no-line-directive option.
8665 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
8667         Fix picture-mode wrt double-width characters
8669         * lisp/textmodes/picture.el (picture-insert): Check the width of
8670         the character being replaced, not just that of the replacement.
8671         (Bug#1808)
8673 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
8675         Honor docstring of gnus-group-get-new-news
8677         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
8678         but non-numeric, unconditionally consider all groups to need updating.
8680 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
8682         Disallow parenthesis in non-pseudo CSS selectors
8684         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
8685         parenthesis in selectors except for in the function notation that
8686         might appear right after a pseudo-class.
8687         * test/indent/scss-mode.scss: Add a test for it.
8689 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
8691         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
8693 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
8695         check-maybe shall run only default tests
8697         * test/automated/Makefile.in (check, check-expensive): Depend on
8698         mostlyclean.
8699         (check-maybe): Re-run only default tests.
8700         (check-doit): Use code of check-maybe.
8701         (mostlyclean): Move *.log files away.
8703 2016-01-14  Mark Oteiza  <mvoteiza@udel.edu>
8705         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
8707 2016-01-14  Dmitry Gutov  <dgutov@yandex.ru>
8709         Un-obsolete tags-loop-continue
8711         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
8712         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
8714 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8716         Document obsoletion of 'intangible' and 'point-entered/left'
8718         * doc/lispref/text.texi (Special Properties): Document the new
8719         properties 'cursor-intangible' and 'cursor-sensor-functions'.
8720         Document the obsolete status of 'intangible', 'pointer-left',
8721         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
8722         * doc/lispref/display.texi (Overlay Properties): Document that
8723         'intangible' overlay property is obsolete.
8725         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
8727 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8729         Updater documentation of 'looking-back'
8731         * doc/lispref/searching.texi (Regexp Search): Update documentation
8732         of 'looking-back'.  Fix markup.
8734 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8736         Document 'pre-redisplay-functions'
8738         * doc/lispref/hooks.texi (Standard Hooks):
8739         * doc/lispref/display.texi (Forcing Redisplay): Document
8740         'pre-redisplay-functions'.
8742 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8744         Document the new deafault value of 'load-read-function'
8746         * doc/lispref/loading.texi (How Programs Do Loading): Document the
8747         change in the default value of 'load-read-function'.
8749 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8751         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
8753         * doc/lispref/nonascii.texi (Text Representations): Document
8754         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
8756 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
8758         Document the new prefix-command hooks
8760         * doc/lispref/hooks.texi (Standard Hooks): Document
8761         `prefix-command-echo-keystrokes-functions' and
8762         `prefix-command-preserve-state-hook'.
8764 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
8766         Fix one more misuse of time-stamp-time-zone
8768         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
8769         than the unportable "GMT" for time zone.
8771 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
8773         Fix NNTP NEWGROUPS off-by-a-few-hours bug
8775         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
8776         in Universal Time, since we’re telling the server “GMT”.
8778 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
8780         Update publicsuffix.txt from upstream
8782         * etc/publicsuffix.txt: Update from
8783         https://publicsuffix.org/list/effective_tld_names.dat
8784         dated 2016-01-12 11:52:01 UTC.
8786 2016-01-13  Glenn Morris  <rgm@gnu.org>
8788         Fix some declarations.
8790         * lisp/descr-text.el (internal-char-font):
8791         * lisp/cedet/mode-local.el (xref-item-location):
8792         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
8793         (epg-sub-key-capability, epg-sub-key-validity):
8794         * lisp/international/mule-util.el (internal-char-font):
8795         Fix declarations.
8797 2016-01-13  Glenn Morris  <rgm@gnu.org>
8799         Fix some custom types.
8801         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
8802         * lisp/gnus/gnus.el (gnus-valid-select-methods):
8803         * lisp/mail/rmail.el (rmail-get-coding-function):
8804         * lisp/net/newst-treeview.el (newsticker-groups-filename):
8805         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
8806         * lisp/textmodes/tildify.el (tildify-space-predicates):
8807         * lisp/url/url-tramp.el (url-tramp-protocols):
8808         Fix custom types.
8810 2016-01-13  Glenn Morris  <rgm@gnu.org>
8812         Add some missing version tags.
8814         * lisp/electric.el (electric-quote-comment)
8815         (electric-quote-string, electric-quote-paragraph):
8816         * lisp/epg-config.el (epg-gpgconf-program):
8817         * lisp/rect.el (rectangle-preview):
8818         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
8819         * lisp/emacs-lisp/package.el (package-selected-packages)
8820         (package-hidden-regexps):
8821         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
8822         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
8823         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
8824         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
8825         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
8826         (mml-smime-sign-with-sender, mml2015-always-trust)
8827         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
8828         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
8829         (browse-url-conkeror-arguments):
8830         * lisp/net/newst-reader.el (newsticker-download-logos):
8831         * lisp/progmodes/gud.el (gud-guiler-command-name):
8832         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
8833         * lisp/progmodes/project.el (project-vc):
8834         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
8835         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
8836         (python-shell-completion-native-disabled-interpreters)
8837         (python-shell-completion-native-enable)
8838         (python-shell-completion-native-output-timeout)
8839         (python-shell-completion-native-try-output-timeout):
8840         * lisp/progmodes/xref.el (xref):
8841         * lisp/term/screen.el (xterm-screen-extra-capabilities):
8842         * lisp/term/xterm.el (xterm-max-cut-length):
8843         Add missing version tags.
8845 2016-01-13  Glenn Morris  <rgm@gnu.org>
8847         * test/automated/core-elisp-tests.el
8848         (core-elisp-tests-1-defvar-in-let): Add a custom type.
8850 2016-01-13  Glenn Morris  <rgm@gnu.org>
8852         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
8854         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
8856 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
8858         Merge from gnulib
8860         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
8861         It also updates to the latest version of texinfo.tex.
8862         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
8863         * build-aux/update-copyright, doc/misc/texinfo.tex:
8864         Update from gnulib.
8866 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8868         Update documentation of 'process-running-child-p'
8870         * doc/lispref/processes.texi (Input to Processes): Document the
8871         changes in return value of 'process-running-child-p'.
8873 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8875         Update documentation of 'deactivate-mark'.
8877         * doc/lispref/markers.texi (The Mark): Document that
8878         'deactivate-mark' is now buffer-local when set.
8880 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8882         Update documentation of 'completion-table-dynamic'
8884         * doc/lispref/minibuf.texi (Programmed Completion): Document the
8885         new optional argument to 'completion-table-dynamic'.
8887 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8889         Document changes in 'read-buffer' and 'read-buffer-function'
8891         * doc/lispref/minibuf.texi (High-Level Completion): Document the
8892         4th argument to 'read-buffer' and 'read-buffer-function'.
8894 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
8896         Fix time-stamp-time-zone bugs introduced in July
8898         This fixes a bug introduced when the July changes to
8899         format-time-string installed, as the changes were not
8900         correctly handled in this module (Bug#22302).
8901         Also, document time stamp time zones.
8902         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
8903         (time-stamp--format): New private function.
8904         (time-stamp-string, time-stamp-string-preprocess)
8905         (time-stamp-do-number): Use it.
8906         * doc/emacs/files.texi (Time Stamps): Mention time zones.
8907         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
8909 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8911         Make piping to subprocesses more robust on MS-Windows
8913         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
8914         buffer can hold.  Don't return -1 if something has been written to
8915         the pipe.  Zero out 'errno' before calling '_write', to avoid
8916         returning a stale value.  (Bug#22344)
8917         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
8918         * src/w32.c (pipe2): Use it to request a user-defined size for the
8919         pipe being created.
8921         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
8923         * doc/emacs/msdos.texi (Windows Processes): Document
8924         'w32-pipe-buffer-size'.
8926 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
8928         test/automated/vc-hg.el: Support out-of-tree build
8930         * test/automated/vc-hg.el
8931         (vc-hg-annotate-extract-revision-at-line-with-filename)
8932         (vc-hg-annotate-extract-revision-at-line-with-both):
8933         Don't refer to source-directory.
8934         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
8936 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
8938         Minor change in tramp-tests.el
8940         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
8941         Use `dired-uncache' instead of a Tramp internal function.
8943 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
8945         * etc/HELLO: Add Armenian and Mongolian greetings.
8947         (Bug#22346)
8949 2016-01-11  Alan Mackenzie  <acm@muc.de>
8951         Java Mode: Fontify identifiers in the presence of annotations.
8953         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
8954         Don't move point when the defun fails.
8955         (c-forward-decl-or-cast-1): Correct a usage of match data.
8957         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
8958         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
8959         removed variable.
8961         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
8963 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
8965         Avoid an infloop when we run out of memory
8967         * src/alloc.c (garbage_collect_1): Don't bother saving and
8968         restoring the echo-area message if we are GC'ing after running out
8969         of memory.  This avoids an infloop due to repeated attempts to
8970         allocate memory for the cons cell needed to save the message,
8971         which signals the memory-full error, which attempts to save the
8972         echo-area message, which signals memory-full again, etc.
8974 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
8976         Avoid unnecessary failures of auto-saving after fatal error
8978         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
8979         the benefit of FAT volumes if we are called as part of shutting
8980         down due to a fatal error, which probably means we are trying to
8981         auto-save the session.
8982         * src/lread.c (check_obarray): Don't bother making the obarray
8983         valid if we are shutting down due to a fatal error.  This avoids
8984         interfering with auto-saving the crashed session.
8986 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
8988         Simplify HAVE_MODULES use in mark_maybe_pointer
8990         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
8991         so that later code can use 'if' rather than '#ifdef'.
8992         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
8993         always working.
8995 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
8997         Revert attempt to use 'noexcept' in typedef
8999         This use of 'noexcept' runs afoul of the C++11 standard.
9000         Problem reported by Philipp Stephani in:
9001         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
9002         * src/emacs-module.c (emacs_finalizer_function):
9003         Move this typedef here ...
9004         * src/emacs-module.h: ... from here, and use only the C
9005         version of the typedef.  The typedef is now private since it
9006         is never used in the .h file now and anyway it seemed to be
9007         causing more confusion than it cured.
9008         (make_user_ptr, get_user_finalizer, set_user_finalizer):
9009         Open-code the type instead.
9011 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
9013         Update documentation of 'indirect-function'
9015         * doc/lispref/eval.texi (Function Indirection): Update the
9016         documentation of 'indirect-function'.
9018 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
9020         Update documentation for obsoleting 'syntax-begin-function'
9022         * doc/lispref/syntax.texi (Position Parse): Undocument
9023         'syntax-begin-function' that is now obsolete.
9025 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
9027         Document new features if Eshell
9029         * doc/misc/eshell.texi (Input/Output): Document the new
9030         '#<bufname>' syntax.
9031         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
9032         Disable "Key Index" generation, as there are no @kindex entries in
9033         this manual.
9035 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
9037         Handle too long commands in Tramp
9039         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
9040         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
9041         order to not exceed shell command line limit.
9043         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
9044         (tramp--test-utf8): Include Arabic file name, again.
9046 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
9048         * .gitattributes: *.cur and *.pif are binary files too.
9050 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
9052         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
9054 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
9056         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
9058         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
9059         within $(...).
9060         * test/indent/shell.sh: Add corresponding test.
9062 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
9064         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
9066         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
9067         cast to Lisp_Object.
9069 2016-01-10  Dmitry Gutov  <dgutov@yandex.ru>
9071         Use short date for 'hg annotate', and output the author
9073         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
9074         Change '-d' to '-dq'.  (Bug#21805)
9075         (vc-hg-annotate-switches): Default to "-u" "--follow".
9076         (vc-hg-annotate-re): Update to recognize the short date format
9077         and the optional username.
9078         (vc-hg-annotate-time)
9079         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
9081         * test/automated/vc-hg.el: New file.
9083 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
9085         Spelling fix
9087 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
9089         Document user-level functions in project.el
9091         * lisp/progmodes/project.el (project-find-file)
9092         (project-or-external-find-file): Add doc strings.
9094 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
9096         Document the user-level features of the Xref package
9098         * doc/emacs/maintaining.texi (Maintaining): Add a list of
9099         described features.
9100         (Xref): New section, made out of thoroughly rewritten "Tags"
9101         section.
9102         (Find Identifiers, Looking Up Identifiers, Xref Commands)
9103         (Identifier Search, List Identifiers): New subsections,
9104         incorporating the old tags commands and the new xref commands.
9105         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
9106         Section and subsections demoted to a lower level.
9107         * doc/emacs/search.texi (Search):
9108         * doc/emacs/windows.texi (Pop Up Window):
9109         * doc/emacs/frames.texi (Creating Frames):
9110         * doc/emacs/programs.texi (Imenu, Symbol Completion):
9111         * doc/emacs/building.texi (Grep Searching):
9112         * doc/emacs/dired.texi (Operating on Files):
9113         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
9115 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
9117         * doc/lispref/loading.texi: Add `define-type' entry for load-history
9119         * doc/lispref/loading.texi (Where Defined): Remove incorrect
9120         cl-defmethod description, and add missing define-type entry.
9122 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
9124         Improve doc strings and prompts in xref.el
9126         * lisp/progmodes/xref.el (xref-backend-functions)
9127         (xref-find-definitions): Doc fixes.
9128         (xref-query-replace): Doc fix.  Improve prompts for arguments.
9130 2016-01-09  Alan Mackenzie  <acm@muc.de>
9132         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
9134         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
9135         `font-lock-extend-regions-wholelines' from
9136         `font-lock-extend-region-functions' rather than setting the latter to
9137         nil.
9139 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
9141         Fix coding system for Tramp on OS X.
9143         * lisp/net/tramp-compat.el: Require ucs-normalize.
9145         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
9146         Set coding system to `utf-8-hfs' for Mac OS X.
9148         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
9149         Flush directory properties when needed.
9150         (tramp--test-utf8): Include Chinese file name, again.
9152 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
9154         Update 'load-history' docs
9156         * doc/lispref/loading.texi (Where Defined): Update the list of
9157         forms in 'load-history' by adding the forms created for the
9158         'cl-generic' generics.  (Bug#21422)
9160 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
9162         Fix (error ...) error
9164         Problem reported by Glenn Morris in:
9165         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
9166         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
9167         introduced in my Aug 28 change, where I got confused by the
9168         two meanings of (error ...).
9170 2016-01-08  Alan Mackenzie  <acm@muc.de>
9172         Correctly analyze brace arguments in templated C++ function declarations.
9174         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
9175         POS and LIMIT parameters, like the other c-go-list-* functions have.
9177         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
9178         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
9179         followed by template specifiers.
9181 2016-01-08  Glenn Morris  <rgm@gnu.org>
9183         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
9185         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
9187 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
9189         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
9191 2016-01-08  Alan Mackenzie  <acm@muc.de>
9193         Respect fontification region calculated by major mode.  Fixes bug #22316.
9195         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
9196         fontification region has been calculated by a function on
9197         font-lock-extend-after-change-region-function use this region rather than
9198         changing the end position to somewhere else.
9200 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
9202         Improve documentation of Delete Selection mode
9204         * lisp/delsel.el (delete-selection-mode)
9205         (delete-selection-helper): Update and expand the doc strings.
9206         (Bug#22296)
9208         * doc/emacs/mark.texi (Using Region): Document the behavior of
9209         delete commands in Delete Selection mode.  (Bug#22296)
9211         * doc/lispref/markers.texi (The Mark): Document how to add the
9212         support for Delete Selection mode to Lisp programs. (Bug#22296)
9214 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
9216         Fix two project-find-file issues
9218         * lisp/progmodes/project.el (project--value-in-dir):
9219         Temporarily set enable-local-variables to :all.
9220         (project-find-file, project-or-external-find-file):
9221         All autoloads.
9222         (project--find-file-in): Require xref.
9224 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
9226         Clarify doc string of 'dired-current-directory'
9228         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
9229         the return value might not end in a slash when called with the
9230         optional argument non-nil.  (Bug#6273)
9232 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
9234         Use the face of preceding text for displaying the ellipsis
9236         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
9237         text in it->saved_face_id for displaying the ellipsis, and ignore
9238         the face, if any, of the invisible text.  (Bug#22320)
9240 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
9242         Suppress Chinese file name test for OSX in tramp-tests.el
9244         * test/automated/tramp-tests.el (tramp--test-utf8):
9245         Remove instrumentation.  Suppress Chinese file name test for OSX.
9247 2016-01-08  Glenn Morris  <rgm@gnu.org>
9249         * admin/admin.el (set-version): Also handle the NEWS file.
9251 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
9253         apropos-library: Skip obvious duplicates; don't error on generics
9255         * lisp/apropos.el (apropos-library): Skip "was an autoload"
9256         entries, to avoid obvious duplicates.  For each cl-defmethod
9257         entry, take just its function symbol (bug#21422).
9259 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
9261         Add project-find-file and project-or-external-find-file
9263         * lisp/minibuffer.el (completion-category-defaults):
9264         Add `project-file' category.
9266         * lisp/progmodes/project.el (project-find-file)
9267         (project-or-external-find-file): New commands.
9268         (project--find-file-in): New private function.
9270         * lisp/progmodes/xref.el (xref-collect-matches): Use
9271         `expand-file-name' on DIR, to expand the tildes.
9272         (xref--find-ignores-arguments): Extract from
9273         `xref--rgrep-command'.
9275 2016-01-07  Leo Liu  <sdl.web@gmail.com>
9277         Add defvar-local to lisp-imenu-generic-expression
9279         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
9280           defvar-local.
9282 2016-01-07  Leo Liu  <sdl.web@gmail.com>
9284         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
9286         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
9287           Don't declare (indent 1).
9289 2016-01-07  Glenn Morris  <rgm@gnu.org>
9291         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
9293 2016-01-07  Glenn Morris  <rgm@gnu.org>
9295         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
9297         Avoid specifying the length of a time object (it has not been "2"
9298         for some time).
9300 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
9302         Properly encode/decode base64Binary data in SOAP
9304                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
9305                 base64Binary value as utf-8.
9306                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
9308 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
9310         Obey coding-system-for-write when writing stdout/stderr in batch
9312         * src/print.c (printchar_to_stream):
9313         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
9314         a non-nil value, use it to encode output in preference to
9315         locale-coding-system.  See the discussions in
9316         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
9317         for the details.
9319         * doc/lispref/os.texi (Terminal Output): Document how to send
9320         non-ASCII text via 'send-string-to-terminal'.
9321         (Batch Mode): Document how text written to standard streams is
9322         encoded.  Fix inaccuracy regarding which output streams are used
9323         by output functions in batch mode.
9325 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
9327         * doc/misc/efaq.texi (Packages that do not come with Emacs):
9328         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
9329         <chenggao@royau.me> in
9330         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
9332 2016-01-06  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
9334         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
9336         Fix backslash.  (Bug#22224)
9338 2016-01-06  Federico Beffa  <beffa@ieee.org>  (tiny change)
9340         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
9342         Make it actually work.  (Bug#22265)
9344 2016-01-05  Alan Mackenzie  <acm@muc.de>
9346         Remove function wrongly on AWK Mode value of context fontification hook.
9348         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
9349         swap order of entries so that awk's entry isn't superseded by the default.
9351         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
9352         to handle nil value of c-before-context-fontification-functions.
9354 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
9356         * src/buffer.c: Stick with ASCII in doc string.
9358 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
9360         Reword transient-mark-mode doc string
9362         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
9363         The value 'lambda (literally) can be interpreted as (quote lambda),
9364         which is not intended here; we want just the lambda symbol.
9366 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
9368         Update doc string of 'selective-display'
9370         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
9371         using it with the value of 't' is obsolete.  (Bug#1092)
9373 2016-01-05  Alan Mackenzie  <acm@muc.de>
9375         Make C++ buffers writeable when writing their initial text properties.
9377         This is a correction to yesterday's CC Mode patch.
9379         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
9380         c-save-buffer-state around the function rather than a mere `let'.
9382 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
9384         Additional changes for "make check-expensive"
9386         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
9387         Explain make target `check-expensive'.
9389         * etc/NEWS: Mention new make target `check-expensive'.
9391         * test/automated/Makefile.in (check-doit): New target.
9392         (check, check-expensive): Use it.
9394 2016-01-04  Alan Mackenzie  <acm@muc.de>
9396         Apply text properties for <, > in new after-change function (C++ Java Modes).
9398         These are category/syntax-table properties to give < and > paren syntax.
9399         Also apply certain `c-type' text properties to the insides of <..> constructs
9400         to ensure that identifiers contained by them get fontified.  This patch fixes
9401         bug #681.
9403         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
9404         after-change action.
9406         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
9407         change region to include <s and >s which might not be already marked as
9408         parens, rather than just when paren text properties are removed.
9409         (c-restore-<>-properties): New after-change function, which applies text
9410         properties marking < and > with paren syntax.
9412         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
9413         properties are applied to the interiors of <...> constructs, to ensure
9414         fontification of identifiers there.
9416         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
9417         c-restore-<>-properties to this list for C++ and Java.
9419         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
9420         c-before-font-lock-functions, exclude c-restore-<>-properties from the
9421         functions invoked.
9422         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
9423         to allow modification by before-change functions.
9424         (c-after-change): Amend c-new-END here, rather than initializing it and
9425         c-new-BEG.
9427 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
9429         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
9431 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
9433         Introduce check-expensive tests.
9435         * Makefile.in (check-expensive):
9436         * test/automated/Makefile.in (check-expensive): New target.
9438         * test/automated/auto-revert-tests.el
9439         (auto-revert-test01-auto-revert-several-files):
9440         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
9441         * test/automated/tramp-tests.el (tramp-test26-process-file)
9442         (tramp-test27-start-file-process, tramp-test28-shell-command)
9443         (tramp-test29-vc-registered)
9444         (tramp-test31-special-characters-with-stat)
9445         (tramp-test31-special-characters-with-perl)
9446         (tramp-test31-special-characters-with-ls)
9447         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
9448         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
9449         (tramp-test35-unload): Tag the tests as :expensive-test.
9451 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
9453         shr-tag-video bug fix
9455         * shr.el (shr-tag-video): Protect against the `poster' being
9456         empty.
9458 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
9460         Minor fixes in tramp-tests.el
9462         * test/automated/tramp-tests.el (tramp-test26-process-file):
9463         Move point properly.
9464         (tramp-test29-vc-registered): Work with relative file names.
9466 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
9468         Ensure redisplay when 'truncate-lines' is set
9470         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
9471         (Bug#22303)
9473 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
9475         Fix a doc string of 'transient-mark-mode'
9477         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
9478         "lambda" in doc string from becoming a link to lambda expressions.
9480 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
9482         MS-Windows followup to latest gnulib update
9484         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
9486 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
9488         Spelling fix
9490 2016-01-04  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
9492         Do secure signed Bcc handling
9494         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
9495         (bug#18718).
9497 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
9499         Avoid stdio in SIGINT handler
9501         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
9502         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
9503         * lib/ignore-value.h: New file, from gnulib.
9504         * src/keyboard.c: Include it.
9505         (write_stdout, read_stdin): New functions.
9506         (handle_interrupt): Use them instead of printf and getchar,
9507         and avoid fflush when handling signals.
9509 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
9511         * doc/misc/texinfo.tex: Revert unwanted copyright change.
9513 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
9515         * lisp/align.el (align): Simplify a lambda
9517         * lisp/align.el (align): Fix arg order in call to `align-region'
9519 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
9521         Fix compilation next-error in buffers with selective-display
9523         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
9524         function.
9525         (compilation-internal-error-properties)
9526         (compilation-next-error-function, compilation-set-window): Use
9527         it.  (Bug#1092)
9529 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
9531         * lisp/net/nsm.el (nsm-check-protocol): Fix typo in the message.
9533 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
9535         Add SHA1 warnings for high network security settings
9537         * lisp/net/nsm.el (nsm-check-protocol): When using high security, warn
9538         about SHA1 certificates, which are now believed to be open to
9539         spoofing.
9541 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
9543         Refactor mml-smime.el, mml1991.el, mml2015.el
9545         (Maybe this is the last merge from Gnus git to Emacs git)
9547         Cf. discussion on ding mailing list, messages in
9548         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
9549         Common code from the three files mml-smime.el, mml1991.el, and
9550         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
9551         to gnus-util.el.
9553         The code is supported by test cases with necessary test keys.
9555         Documentation in message.texi is updated.
9557         * doc/misc/message.texi (Security, Using S/MIME):
9558         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
9559         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
9560         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
9562         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
9563         New functions.
9565         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
9566         (epa--select-keys): Autoload.
9567         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
9568         (mml-secure-openpgp-signers): New user option;
9569         make mml1991-signers and mml2015-signers obsolete aliases to it.
9570         (mml-secure-smime-signers): New user option;
9571         make mml-smime-signers an obsolete alias to it.
9572         (mml-secure-openpgp-encrypt-to-self): New user option;
9573         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
9574         aliases to it.
9575         (mml-secure-smime-encrypt-to-self): New user option;
9576         make mml-smime-encrypt-to-self an obsolete alias to it.
9577         (mml-secure-openpgp-sign-with-sender): New user option;
9578         make mml2015-sign-with-sender an obsolete alias to it.
9579         (mml-secure-smime-sign-with-sender): New user option;
9580         make mml-smime-sign-with-sender an obsolete alias to it.
9581         (mml-secure-openpgp-always-trust): New user option;
9582         make mml2015-always-trust an obsolete alias to it.
9583         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
9584         New user options.
9585         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
9586         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
9587         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
9588         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
9589         (mml-secure-passphrase-callback, mml-secure-check-user-id)
9590         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
9591         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
9592         (mml-secure-fingerprint, mml-secure-filter-keys)
9593         (mml-secure-normalize-cust-name, mml-secure-select-keys)
9594         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
9595         (mml-secure-self-recipients, mml-secure-recipients)
9596         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
9598         * lisp/gnus/mml-smime.el: Require epg;
9599         refactor declaration and autoloading of epg functions.
9600         (mml-smime-use): Doc fix.
9601         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
9602         Obsolete.
9603         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
9604         Use format instead of gnus-format-message.
9605         (mml-smime-epg-secret-key-id-list): Remove variable.
9606         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
9607         (mml-smime-epg-find-usable-secret-key): Remove functions.
9608         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
9610         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
9611         (mml1991-passphrase-cache-expiry): Obsolete.
9612         (mml1991-epg-secret-key-id-list): Remove variable.
9613         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
9614         (mml1991-epg-find-usable-secret-key): Remove functions.
9615         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
9617         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
9618         (mml2015-passphrase-cache-expiry): Obsolete.
9619         (mml2015-epg-secret-key-id-list): Remove variable.
9620         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
9621         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
9622         (mml2015-epg-find-usable-secret-key): Remove functions.
9623         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
9624         (mml2015-epg-encrypt): Refactor.
9626 2016-01-02  Glenn Morris  <rgm@gnu.org>
9628         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
9630         Explicitly ignore case.  (Bug#22262)
9632 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
9634         (semantic-symref-derive-find-filepatterns): Return a list
9636         * lisp/cedet/semantic/symref/grep.el
9637         (semantic-symref-derive-find-filepatterns): Return a list.
9638         (semantic-symref-perform-search): Quote the result here once and for all.
9640 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
9642         Fix xref-find-references on MS-Windows
9644         * lisp/cedet/semantic/symref/grep.el
9645         (semantic-symref-derive-find-filepatterns): Use
9646         'shell-quote-argument' instead of manually quoting in a way that
9647         only works with Posix shells.  (Bug#22289)
9649 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
9651         Document new features of tildify-mode
9653         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
9654         (tildify-mode): Spelling fixes in doc strings.
9656         * etc/NEWS: Reformat the tildify-mode entry.
9658 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
9660         Document new features of Whitespace mode
9662         * doc/emacs/display.texi (Useless Whitespace): Document
9663         'whitespace-toggle-options' and the new 'big-indent' style.
9664         Document 'whitespace-big-indent-regexp'.  Document the Global
9665         Whitespace mode.
9667 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
9669         Improve documentation of new Hide-IfDef features
9671         * etc/NEWS: Expand and reword Hide-IfDef section.
9673 2016-01-02  Leo Liu  <sdl.web@gmail.com>
9675         Fix regression in font-locking cl-assert and cl-check-type
9677         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
9678           el-errs-re.
9680 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
9682         Spelling and grammar fixes
9684 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
9686         Fix copyright years by hand
9688         These are dates that admin/update-copyright did not update, or
9689         updated incorrectly.
9691 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
9693         Update copyright year to 2016
9695         Run admin/update-copyright.
9697 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
9699         Merge from gnulib
9701         This mostly just updates copyright dates of gnulib files.
9702         It also updates to the latest version of texinfo.tex.
9704 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
9706         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
9708 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
9710         Port chart.el methods to cl-generic.
9712         cl-call-next-method cannot be used inside EIEIO's defmethod.
9713         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
9714         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
9715         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
9716         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
9717         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
9718         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
9720 2015-12-31  Brian Burns  <bburns.km@gmail.com>
9722         Add nt/INSTALL.W64 build instructions
9724         * nt/INSTALL.W64: New file.
9725         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
9727 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
9729         Add new input method 'programmer-dvorak'
9731         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
9732         input method.
9734         * etc/NEWS: Mention it.
9736 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
9738         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
9740         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
9741         original M-TAB binding in a buffer-local variable.
9742         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
9743         if that is recorded, when point is in a place where flyspell
9744         should not be active (e.g., because the user turned on
9745         'flyspell-prog-mode').  (Bug#18533)
9747 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
9749         Fix EWW rendering of long RTL lines
9751         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
9752         of the selected window before filling its lines.  (Bug#22250)
9754 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
9756         fix  bug#21054
9758         * lisp/ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
9760 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9762         Clean up cairo printing code
9764         * src/gtkutil.c (xg_get_page_setup): Use listn.
9765         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
9766         decode_window_system_frame and FRAME_VISIBLE_P.
9767         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
9768         of Fdisplay.
9769         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
9770         instead of Fdisplay.  Temporarily unblock_input around QUIT.
9772 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9774         Move variables to inner loop, preparing for Mac port merge
9776         * src/keyboard.c (command_loop_1): Move variables `cmd',
9777         `keybuf', and `i' to inner loop.
9779 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9781         Add handle_user_signal_hook
9783         * src/keyboard.h (handle_user_signal_hook): New declaration.
9784         * src/keyboard.c (handle_user_signal_hook): New variable.
9785         (handle_user_signal): Call it.
9787 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9789         Avoid writing to purespace
9791         * src/alloc.c (Fmake_string): Don't write to empty string contents.
9792         (allocate_vector): Don't write to empty vector size.
9793         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
9794         Don't call unnecessary XSETCAR or XSETCDR.
9795         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
9796         write to empty string size_byte.
9798 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9800         Remove unused variable
9802         * lisp/international/mule-cmds.el: Remove unused variable
9803         `mac-system-coding-system'.
9805 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9807         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
9809 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9811         Use posix_openpt instead of openpty on Darwin
9813         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
9814         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
9815         Darwin-specific definitions.  Use posix_openpt instead.
9817 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
9819         Document support for ':documentation' in Lisp mode
9821         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
9822         (lisp-string-after-doc-keyword-p)
9823         (lisp-font-lock-syntactic-face-function): Add doc strings.
9825 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
9827         Document new features of TeX mode
9829         * doc/emacs/text.texi (TeX Print): Document
9830         'tex-print-file-extension'.
9831         * doc/emacs/programs.texi (Misc for Programs): Document support
9832         for Prettify Symbols mode in TeX mode.
9834 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
9836         Clarify docs of hscroll in RTL text
9838         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
9839         meaning of a window's horizontal scroll amount for RTL paragraphs.
9841 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
9843         Fix rendering of HTML pages that use character composition
9845         * src/indent.c (Fvertical_motion): Fix the case when point starts
9846         in the middle of a composition, as in shr-vertical-motion.
9847         (Bug#22250)
9849 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
9851         Avoid some compiler warnings in w32.c
9853         * src/w32.c (codepage_for_filenames, crlf_to_lf)
9854         (ansi_encode_filename, socket_to_fd, sys_write)
9855         (check_windows_init_file): Avoid compiler warnings about
9856         differences in pointer signedness.
9858 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
9860         Undo ill-advised change
9862         * lisp/progmodes/xref.el (xref-collect-matches): Undo
9863         ill-advised change.  The hits come in the order that `find'
9864         produces them in, which isn't alphabetical.
9866 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
9868         Unbreak completion in python-mode buffers
9870         * lisp/progmodes/python.el (python-shell-completion-at-point):
9871         Unbreak in python-mode buffers.
9873 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
9875         Fix typos in CC Mode manual
9877         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
9878         typos.  (Bug#22267)
9880 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
9882         Avoid assertion violations in compact_font_cache_entry
9884         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
9885         avoid assertion violation in ASIZE.  (Bug#22263)
9887 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
9889         Fix filling text with bidirectional characters in shr.el
9891         * lisp/net/shr.el (shr-insert-document): Bind
9892         bidi-display-reordering to nil while filling lines.  This is
9893         required for when a line includes characters whose bidi
9894         directionality is opposite to the base paragraph direction,
9895         because columns are counted in the logical order.  (Bug#22250)
9897 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
9899         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
9901 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
9903         Sync with Tramp 2.2.13
9905         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
9907         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
9908         Use `tramp-compat-funcall'.
9910         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
9911         Make `split-string' call compatible with older Emacsen.
9913         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
9915 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
9917         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
9919 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
9921         Mention that tls.el is secure by default, and will fail
9923 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
9925         Make tls.el use trustfiles by default
9927         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
9928         (open-tls-stream): Insert the trustfile by looking at
9929         `gnutls-trustfiles'.
9931 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
9933         Refactor out gnutls-trustfiles
9935         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
9937 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
9939         Remove --insecure from gnutls-cli invocation
9941         * tls.el (tls-program): Default to using secure TLS
9942         connections (bug#19284).
9944 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
9946         Spelling fix
9948 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
9950         Port report-emacs-bug to deterministic builds
9952         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
9953         recent "built on" change to deterministic builds where
9954         emacs-build-system will be nil.  See:
9955         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
9957 2015-12-29  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
9959         Fix URL auth error message
9961         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
9962         message more correct (bug#20069).
9964 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
9966         shr link traversal fixup
9968         * shr.el (shr-next-link): Don't bug out on adjacent links.
9970         Backport:
9972         (cherry picked from commit 1efc5f8b09273c359683ce13be95fb5df7a84311)
9974 2015-12-28  Tom Tromey  <tom@tromey.com>
9976         set :safe on css-indent-offset
9978         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
9980 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
9982         * eww.el (eww-mode): Remove superfluous bidi reset.
9984 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
9986         Make chunked encoding trailer detection more compliant
9988         * lisp/url/url-http.el
9989         (url-http-chunked-encoding-after-change-function): Make
9990         trailer detection more compliant (bug#16345).
9992 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
9994         Fix Bug#10873 in `report-emacs-bug'
9996         * lisp/mail/emacsbug.el (report-emacs-bug): If
9997         `report-emacs-bug-no-explanations' is nil, make sure we can show
9998         mail and warnings buffer on this frame (Bug#10873).
10000 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
10002         Always reset the bidi direction
10004         * eww.el (eww-display-html): Always reset the bidi direction
10005         to `left-to-right' (bug#22257).
10007 2015-12-28  Alan Mackenzie  <acm@muc.de>
10009         Allow line comments ending with escaped NL to be continued to the next line.
10011         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
10013         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
10014         (forw-comment, back-comment): On encountering an end of comment character,
10015         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
10017         * doc/lispref/syntax.texi (Control Parsing): Describe
10018         `comment-end-can-be-escaped'.
10020         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
10022         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
10024 2015-12-28  Dmitry Gutov  <dgutov@yandex.ru>
10026         Rename project-library-roots to project-external-roots
10028         * lisp/progmodes/project.el (project-library-roots): Rename to
10029         project-external-roots.
10030         (project-library-roots-function): Rename to
10031         project-vc-external-roots-function.  Only use it in the VC
10032         backend, for now.  Update project-external-roots accordingly.
10033         (project-vc-library-roots): Remove.
10034         (project-or-libraries-find-regexp):
10035         Rename to project-or-external-find-regexp.
10037         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
10038         Rename to elisp-load-path-roots.
10040         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
10041         an anonymous function for the default value of
10042         project-vc-external-roots-function.
10044 2015-12-27  Deniz Dogan  <deniz@dogan.se>
10046         Clear erc user list upon disconnection
10048         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
10049         lists upon disconnection.  This prevents invalid channel
10050         user lists when reconnecting (bug#10947).
10052 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
10054         Don't bug out in erc after waking from sleep
10056         * lisp/erc/erc-backend.el (erc-server-send-ping): If the server has
10057         closed connection, this may already have been detected and
10058         `erc-server-last-received-time' has been set to nil (bug#13608).
10060 2015-12-27  David Edmondson  <dme@dme.org>
10062         Proxy error in erc with multiple clients
10064         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
10065         generated when multiple IRC clients talk to a single IRC proxy
10066         (bug#19034).
10068         Backport:
10070         (cherry picked from commit 507e98a54d1aa37823c64993d6b59257a82fe8f4)
10072 2015-12-27  Dima Kogan  <dima@secretsauce.net>
10074         Ensure that we don't have several timers in erc
10076         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
10077         for existing timers in the alist before adding new ones.  If a
10078         timer already exists, it is cancelled and
10079         overwritten. (bug#19292).
10081 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
10083         Fix mml-sec build warnings
10085         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
10086         (bug#18718).
10088         Backport:
10090         (cherry picked from commit 3603097f62f5f4aa5451716e9ac380161f6829e2)
10092 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
10094         Don't insert erc logs at the end
10096         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
10097         at the start of the buffer, not at the end (bug#20496).
10099 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
10101         (eww-setup-buffer): Restore left-to-right defaults
10103         * eww.el (eww-setup-buffer): Restore left-to-right defaults.
10105         Backport:
10107         (cherry picked from commit 96c874b96b617c124d500a94de761a61f2a08685)
10109 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
10111         Don't join erc channels doubly
10113         * lisp/erc/erc-join.el (erc-autojoin-channels): Don't join channels
10114         more than once (if you have several nicks) (bug#20695).
10116 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
10118         Avoid leaving "ghost" of mouse pointer on MS-Windows
10120         * src/w32term.c (frame_set_mouse_pixel_position):
10121         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
10122         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
10123         * src/w32term.c (frame_set_mouse_pixel_position): Include
10124         w32common.h.
10126 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
10128         Fix auth source lookups from erc with port numbers
10130         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
10131         numbers (bug#20541).
10133 2015-12-27  Fran Litterio  <flitterio@gmail.com>
10135         Run erc-kill-channel-hook always on exit
10137         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
10138         when erc-kill-queries-on-quit is set (bug#21187).
10140 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
10142         Spelling fix
10144         * test/automated/url-parse-tests.el:
10145         (url-generic-parse-url/same-document-reference):
10146         Rename from url-generic-parse-url/same-decument-reference.
10148 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
10150         Reword initial *scratch* for brevity, appearance
10152         * lisp/startup.el (initial-scratch-message):
10153         Reword to avoid apostrophes, and to make it shorter.
10154         See the thread starting in:
10155         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
10157 2015-12-26  Leo Liu  <sdl.web@gmail.com>
10159         Add ert-deftest to lisp-mode.el
10161         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression,
10162           lisp-el-font-lock-keywords-1): Add ert-deftest.
10164 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
10166         Mark imap changes as not needing doc changes
10168         * lisp/net/imap.el (imap-ssl-open): Remove
10170 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
10172         Use built-in encryption in imap.el
10174         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
10175         (imap-starttls-open): Use open-network-stream instead of starttls.el.
10176         (imap-tls-open): Use open-network-stream instead of tls.el.
10178 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10180         Don't try using /bin/sh in artist.el on MS-Windows
10182         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
10183         New function.
10184         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
10185         (Bug#20167)
10187 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
10189         Always define gmalloc etc. in src/gmalloc.c
10191         This is a work-around to prevent the compiler from using semantic
10192         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
10193         with -O2 replaces most of calloc's definition by a call to calloc;
10194         see Bug#22085.
10195         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
10196         (aligned_alloc, free): Do not undef.  Instead, define these as
10197         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
10199 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10201         Fix documentation of browse-url browser-related functions
10203         * lisp/net/browse-url.el (browse-url)
10204         (browse-url-default-browser, browse-url-default-windows-browser)
10205         (browse-url-default-macosx-browser, browse-url-chromium)
10206         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
10207         and NEW-WINDOW arguments in these functions.  (Bug#19421)
10209 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
10211         Propagate Bug#14412 fix to backtrace_eval_unrewind
10213         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
10214         becomes accurate again. This shouldn’t affect behavior.
10215         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
10217 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10219         Don't produce non-ASCII characters in *scratch*
10221         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
10222         avoid producing non-ASCII characters in the *scratch* buffer's
10223         commentary.
10225 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10227         Document changes in 'compare-windows'
10229         * lisp/vc/compare-w.el (compare-windows-removed)
10230         (compare-windows-added): Doc fix.
10232         * doc/emacs/files.texi (Comparing Files): Document the changes in
10233         window selection by 'compare-windows'.
10235 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10237         Document 'vc-annotate-background-mode'
10239         * doc/emacs/maintaining.texi (Old Revisions): Document
10240         'vc-annotate-background-mode'.
10242 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10244         Document 'vc-region-history'
10246         * doc/emacs/maintaining.texi (VC Change Log): Document
10247         'vc-region-history'.
10249 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10251         Improve documentation of 'vc-push'
10253         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
10254         improve the documentation of 'vc-push'.
10256         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
10258 2015-12-26  Alain Schneble  <a.s@realize.ch>
10260         Include the tests for the URL parsing fixes
10262 2015-12-26  Alain Schneble  <a.s@realize.ch>
10264         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
10266         * test/automated/url-parse-tests.el: Add tests covering url-generic-parse-url.
10267         * test/automated/url-expand-tests.el: Add tests covering url-expand-file-name.
10268         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
10269         information in URL-struct.
10270         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
10271         path and query into nil path and query, respectively.
10272         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
10273         empty path into an absolute ("/") path.
10274         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
10275         fragment-only URIs. Do not just return them unchanged.
10276         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
10277         reference URI should not drop the last segment.
10279         Backport:
10281         (cherry picked from commit b792ecea1715e080ad8e232d3d154b8a25d2edfb)
10283 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10285         Document 'url-user-agent'.
10287         * lisp/url/url-http.el (url-user-agent): Move from here...
10288         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
10289         keep all the URL defcustoms in one place, and also have it defined
10290         whenever the URL library is loaded.
10292         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
10294 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10296         Document protocols supported by URL library via Tramp
10298         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
10299         supported via Tramp.
10300         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
10301         Tramp.
10303 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10305         Document changes in Shell-script mode
10307         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
10308         the 'sh-shell' file-local variable.
10309         (top level): Add an auto-load form to avoid byte-compiler warning
10310         about 'comint-send-string'.
10312 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10314         Fix documentation of 'ses-define-local-printer'
10316         * doc/misc/ses.texi (Printer functions): Fix whitespace between
10317         sentences and punctuation.  Add an index entry for
10318         'ses-define-local-printer'.
10320 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
10322         Document 'ert-summarize-tests-batch-and-exit'
10324         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
10325         'ert-summarize-tests-batch-and-exit'.
10327 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
10329         Avoid assertion violation in unbind_to
10331         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
10332         if we get here with an object that is not a symbol.  (Bug#14412)
10334 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
10336         Don't treat /foo/bar:mumble as ange-ftp address
10338                 * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
10339                 only in the first component.  (bug#5362)
10341 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10343         Follow <meta> redirects in eww
10345         Merge conflict, but I think I resolved it.
10347             Follow meta refresh tags in eww
10349             * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
10351         Backport:
10353 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10355         Allow http://user:pass@foo/ URLs again
10357         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
10358         user/passwords in URLs (bug#19046).
10360         Backport:
10362         (cherry picked from commit b563715a2db265517d5a77f165a42afa1e233fdd)
10364 2015-12-25  Samer Masterson  <samer@samertm.com>
10366         Autoload url-insert-buffer-contents
10368         * lisp/url/url-handlers.el: Add autoload cookie so that
10369         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
10371         Backport:
10373         (cherry picked from commit 7a7b5b492ff9929eecd90c4564db6fbf3b192323)
10375 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
10377         Make sure *scratch* etc. use forward slashes in its default-directory
10379         * lisp/startup.el (normal-top-level): On MS-Windows, convert
10380         backslashes to forward slashes while decoding default-directory
10381         of the initially-created buffers.
10383 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10385         More eww file name coding fixes
10387         * eww.el (eww-decode-url-file-name): Use the base coding
10388         system to check for encodability.
10390         Backport:
10392         (cherry picked from commit a8627008abe4ab339df19b417776da28b3ce0fc7)
10394 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10396         Always save eww history
10398         * eww.el (eww-setup-buffer): Always save history, even when
10399         called from outside the eww buffer (bug#19638).
10401         Backport:
10403         (cherry picked from commit 2a0f18d9b6ce0ccce3d9c4a4a3b5743bae71b41e)
10405 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10407         Default web pages to right-to-left
10409         * eww.el (eww-mode): Most web pages are left-to-right, so make
10410         that the default (bug#19801).
10412         * shr.el (shr-tag-html): Respect "dir" attributes
10413         (left-to-right, right-to-left).
10415         Backport:
10417         (cherry picked from commit 9e089ec8a380ec3758fcf1564c5f86dc92c68c2a)
10419 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10421         Make toggling checkboxes work again
10423         * eww.el (eww-update-field): Make toggling checkboxes work
10424         again (bug#21881).
10426         Backport:
10428         (cherry picked from commit 5e56f606952e5e81b4d3a93ea70e791b74b33041)
10430 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10432         Don't store cookies with empty names
10434         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
10435         cookies with empty names (bug#21936).
10437         Backport:
10439         (cherry picked from commit 9f0fd7cb1aec3eb9e2e0f7b8854c30870286d96c)
10441 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10443         Stop rendering HTML before specdlr exhaustion
10445         Fixes: 22117
10447         * shr.el (shr-descend): Stop rendering before we run out of
10448         specpdl room (bug#22117).
10450         Backport:
10452         (cherry picked from commit 248da292fe46224b0b5a79b632c89cf4de2c2081)
10454 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10456         Use cl-reduce, not reduce.
10458         Backport:
10460         (cherry picked from commit fe4606f93b91ff3d046aee0cf21ecc277af7a786)
10462 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10464         Allow several <tbody> tags in shr
10466         * shr.el (shr-table-body): New function to find the real body
10467         of a table.
10468         (shr-tag-table): Use it to render several <tbody> tags in a
10469         table (bug#22170).
10471         Backport:
10473         (cherry picked from commit cdaf33029d6620073833876d76056045ecfbc7c4)
10475 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10477         Make prettier unique file names in eww
10479         (eww-make-unique-file-name): Make unique file names by making
10480         files like foo(2).jpg instead of foo(1)(2).jpg.
10482         Backport:
10484         (cherry picked from commit edfdd0a6cbdfa9e5e4bd0553e2b489401ca39266)
10486 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10488         Decode hex-encoded URLs before using them as file names
10490         * eww.el (eww-decode-url-file-name): New function.
10491         (eww-download-callback): Use it to decode file names before
10492         saving them.
10494         Backport:
10496         (cherry picked from commit af22a010d87516c2a646572fb27512c03057784f)
10498 2015-12-25  Ashish SHUKLA  <ashish.is@lostca.se>
10500         Add FreeBSD cert bundle
10502         * doc/misc/emacs-gnutls.texi (Help For Users): Document
10503         FreeBSD bundle.
10505         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
10507         Backport:
10509         (cherry picked from commit 60c0f1a18ad88d6dc1a8f4ee5d9d18940eaeb6f7)
10511 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10513         Ignore invalid SVG images
10515         * shr.el (shr-tag-svg): Ignore SVG images that have no width
10516         or height, because these can't be displayed by ImageMagick,
10517         anyway.
10519         Backport:
10521         (cherry picked from commit 821107d53c2e390240d25c036b99ebbf9b4a93b6)
10523 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
10525         shr table rendering fix
10527         * shr.el (shr-tag-table): Allow rendering body-less tables
10528         that have headers.
10530         Backport:
10532         (cherry picked from commit b05471e42c17e02c56c87d7599ada0c124a5fe09)
10534 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
10536         Restore info about the build host in bug reports
10538         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
10539         which Emacs was built.  This is important information for
10540         investigating bug reports reported by users who don't build their
10541         Emacs.
10543 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
10545         Fix bootstrap broken by changes related to OS X file-name encoding
10547         * lisp/international/ucs-normalize.el (eval-when-compile): Make
10548         sure char-code-property-alist includes elements that allow access
10549         to 'decomposition' and 'canonical-combining-class' Unicode
10550         properties, as compiling ucs-normalize.el requires that.
10551         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
10552         only of charprop.el was already loaded.
10554         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
10555         New order-only dependency.
10557 2015-12-25  Leo Liu  <sdl.web@gmail.com>
10559         * lisp/ido.el (ido-add-virtual-buffers-to-list): Use bookmark-get-filename.
10561 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
10563         Make tramp-test29-vc-registered more robust
10565         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
10566         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
10567         Remove instrumentation.
10569 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10571         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
10573 2015-12-24  Katsumi Yamaoka  <yamaoka@jpl.org>
10575         Fix `gnus-union' so as to behave like `cl-union'
10577         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
10578         Make gnus-union use `equal' to compare items in lists.
10580         * lisp/gnus/gnus-util.el (gnus-union):
10581         Make it behave like cl-union partially.
10583 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
10585         Fix dired.c typo with ptrdiff_t vs Lisp_Object
10587         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
10588         an integer type, fixing a problem introduced in the recent fix for
10589         Bug#22169.
10591 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
10593         Document default process sentinel more prominently
10595         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
10596         defaults for process filter and sentinel.  Provide cross-references.
10597         (Process Information): Provide cross-references to where filters
10598         and sentinels are described.
10599         (Filter Functions): Add an index entry for "default filter".
10600         (Sentinels): Add a few status messages not documented previously.
10601         Resolve the "killed" confusion.  Document and describe the default
10602         sentinel.  (Bug#22220)
10604 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
10606         Fix file-name completion on OS X
10608         * src/dired.c (file_name_completion): Reject false matches due to
10609         file-name-coding-systems that decompose characters when encoding
10610         file names, by comparing decoded file names as well.  (Bug#22169)
10611         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
10613         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
10614         non-nil 'decomposed-characters' property.
10616 2015-12-23  Anders Lindgren  <andlind@gmail.com>
10618         File-name completion of non-ASCII characters on OS X (bug#22169)
10620         The coding system `utf-8-nfd', locally defined in ns-win.el,
10621         didn't provide a :pre-write-conversion method, causing file name
10622         completion of non-ASCII characters to fail.  Solved by using the
10623         `utf-8-hfs' coding system provided by `ucs-normalize'.
10625         * lisp/loadup.el: Load international/ucs-normalize (when building
10626         for ns).
10628         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
10629         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
10630         as the file name coding system.
10632         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
10634 2015-12-23  Tom Tromey  <tom@tromey.com>
10636         Fix bug #18588 by making bug-reference-bug-regexp more lenient
10638         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
10639         "bug NNNN".  (Bug #18588)
10641 2015-12-23  Tom Tromey  <tom@tromey.com>
10643         add some cl-* aliases to lisp-mode imenu
10645         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
10646         cl-defgeneric, and cl-defmethod.
10648 2015-12-22  Tom Tromey  <tom@tromey.com>
10650         Make a variable buffer-local
10652         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
10653         font-lock-syntax-table buffer-local.  (Bug #21627)
10655 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
10657         Fix decoding of text in URLs retrieved by EWW
10659         * lisp/net/eww.el (eww-render): Pass 'charset' to
10660         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
10661         non-nil, to set 'buffer-file-coding-system' of the buffer where we
10662         show the URL.
10663         (eww-display-html, eww-display-raw): Decode the text correctly,
10664         using the charset found in the headers, and defaulting to UTF-8.
10665         If the user told us to use a specific encoding, override the
10666         charset from the headers.  (Bug#22222)
10668 2015-12-22  Alan Mackenzie  <acm@muc.de>
10670         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
10672         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
10673         variable `tmp'.
10674         After a failed search for a matching ">", restore point before continuing.
10676 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
10678         Instrument Tramp tests
10680         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
10681         (tramp--test-utf8): Instrument tests.
10683 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
10685         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
10687         * lisp/simple.el (display-message-or-buffer): Call
10688         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
10689         (Bug#22221).
10691 2015-12-22  Juri Linkov  <juri@linkov.net>
10693         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
10695         (save-places-to-alist, save-place-dired-hook):
10696         Check for dired-subdir-alist.  (Bug#19851)
10698 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
10700         Add FIXME comment re stack overflow and modules
10702 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
10704         Revert some recent emacs-module commentary
10706         Most of the recently-added commentary was incorrect, due to the
10707         possibility of stack overflow.
10709 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
10711         Spelling fix: prefer "cooperate" to "co-operate"
10713 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
10715         Port undo fixes to -fno-common
10717         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
10718         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
10719         (buffer_before_last_command_or_undo):
10720         Declare in keyboard.h, and define in keyboard.c,
10721         instead of assuming the traditional Unix relaxed ref-def linkage.
10723 2015-12-20  Philipp Stephani  <phst@google.com>
10725         Improve commentary for emacs-module.c
10727         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
10728         * src/emacs-module.c (module_non_local_exit_get): Document that we
10729         cannot use the current implementation.
10730         (module_is_not_nil, module_eq): Document assumptions about EQ and
10731         NILP.
10733 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
10735         Suppress test on Mac OS X
10737         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
10738         (tramp--test-utf8): Use it.
10740 2015-12-20  Alan Mackenzie  <acm@muc.de>
10742         Merge branch 'scratch/follow' into emacs-25
10744         This allows Isearch, etc., to work well when Follow Mode is active.
10746 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
10748         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option): Improve check.
10750 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10752         Fix last commit
10754         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
10755         with numeric argument.
10757 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10759         Document new features of Rmail
10761         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
10762         Document new behavior of 'd' and 'C-d' with numeric argument.
10763         (Rmail Display): Document the rendering of HTML MIME parts.
10765 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10767         Improve documentation of new cl-lib functions
10769         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
10770         Fix wording.
10772 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10774         Document the new feature of 'minibuffer-with-setup-hook'
10776         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
10777         added to `minibuffer-setup-hook'.
10779 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10781         Document new features of Font Lock
10783         * doc/lispref/modes.texi (Other Font Lock Variables): Document
10784         'font-lock-flush-function' and 'font-lock-ensure-function'.
10785         (Font Lock Basics): Document the basic fontification functions
10786         referenced in "Other Font Lock Variables".
10788         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
10790 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10792         Document new features of Rectangle mode
10794         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
10795         rectangle-mark-mode.
10797 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10799         Manual followup to last change
10801         * doc/lispref/display.texi (Displaying Messages): Sync with the
10802         doc string.  (Bug#22210)
10804 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10806         Clarify doc string of 'display-message-or-buffer'
10808         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
10809         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
10811 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10813         * doc/emacs/emacs.texi (Top): Update top-level menus.
10815         * doc/lispref/elisp.texi (Top): Update top-level menus.
10817 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10819         Document how to avoid file-local variables that aren't
10821         * doc/emacs/custom.texi (Specifying File Variables): Describe how
10822         to prevent Emacs from interpreting unrelated text as file-local
10823         variables.  (Bug#22166)
10825 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
10827         Fix a typo in eterm-color's termcap entry
10829         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
10830         entry.  (Bug#22184)
10832 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
10834         Allow 'browse-url-emacs' visit non-existent URLs
10836         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
10837         signal an error if VISIT is non-nil, to more faithfully emulate
10838         the behavior of 'insert-file-contents'.  (Bug#22160)
10840 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
10842         Remove SunOS 4.x cruft
10844         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
10845         * lib-src/pop.c [sun]: Remove no-longer-needed include.
10846         * lwlib/xlwmenu.c (SUNSO41): Remove.
10848 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
10850         Merge from gnulib
10852         This mostly commentary fixes.
10853         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
10854         * lib/gnulib.mk: Regenerate with new gnulib-tool.
10856 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
10858         Minor fixes in Tramp
10860         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
10861         Reorder ls arguments.
10863         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
10865 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
10867         Make tramp a built-in package
10869         * lisp/finder.el (finder-compile-keywords): Update
10870         `package--builtins' also when Version: keyword is available.
10872         * lisp/net/trampver.el: Add Version: keyword.
10873         (tramp-version): Change it to "2.2.13.25.1", in order to be
10874         compatible with `version-to-list'.
10876 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
10878         * etc/tutorials/TUTORIAL.it: Update and fix typos.
10880 2015-12-18  Alan Mackenzie  <acm@muc.de>
10882         Rename `recenter-group' to `recenter-window-group'
10884         * doc/lispref/windows.texi (Textual Scrolling)
10885         * lisp/window.el (top level, recenter-group)
10886         * lisp/follow.el (follow-mode)
10887         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
10888         `recenter-window-group' and `recenter-group-function' to
10889         `recenter-window-group-function'.
10891 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
10893         Fix vertical-motion in tabulated-list mode
10895         * src/indent.c (Fvertical_motion): When moving from line beginning
10896         to point under line truncation, assume overshoot by one line only
10897         if point actually lies beyond the window's right margin.
10898         (Bug#22194)
10900 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
10902         Don't have help functions call x-display-pixel-width/-height on ttys
10904         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
10905         Don't call x-display-pixel-width/-height on ttys.
10907 2015-12-18  Dmitry Gutov  <dgutov@yandex.ru>
10909         Use 'hg id' in vc-hg-previous-revision
10911         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
10912         Use 'hg id' to retrieve it (bug#22032).
10914 2015-12-17  Alan Mackenzie  <acm@muc.de>
10916         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
10918 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
10920         Fix a typo in the Emacs manual
10922         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
10923         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
10925 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
10927         Fix parsing netrc entries with ports
10929         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
10930         make a list out of 't'.  (Bug#22188)
10932         * test/automated/auth-source-tests.el
10933         (auth-source-test-netrc-parse-entry): New test.
10935 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
10937         Fix typo in Doug Lea malloc configure log
10939         * configure.ac (emacs_cv_var_doug_lea_malloc):
10940         Fix typo that confused the log output of 'configure'.
10942 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
10944         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
10946 2015-12-16  Alan Mackenzie  <acm@muc.de>
10948         * etc/NEWS: Move entry on pcase to correct section
10950         (Accidentally omitted from previous commit)
10952 2015-12-16  Alan Mackenzie  <acm@muc.de>
10954         Add documentation for changes to Show Paren mode.
10956         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
10958         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
10959         options, including the new show-paren-when-point-inside-paren and
10960         show-paren-when-point-in-periphery.
10962         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
10963         Move an entry on pcase to the Lisp Changes section.
10965 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
10967         Document Eldoc changes
10969         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
10971 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
10973         Fix invocation of Python and Guile interpreters from gdb-mi
10975         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
10976         commands for interactive Python and Guile interpreters.
10977         (gdb-send): Recognize various ways of exiting from Python and
10978         Guile interpreters and returning to GDB.  For details, see
10979         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
10980         and http://stackoverflow.com/questions/31514741.
10982 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
10984         Remove attempt to use C11 threads
10986         C11 threads are not needed for Emacs now, and their use is causing
10987         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
10988         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
10989         * configure.ac: Do not check for C11 threads. Remove unnecessary
10990         fiddling with CPPFLAGS when configuring pthreads.
10991         * src/emacs-module.c (main_thread, check_main_thread)
10992         (module_init): Do not worry about C11 threads.
10994 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
10996         Set utf8 encoding with stty in Tramp
10998         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
10999         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
11000         encoding with stty.
11002 2015-12-15  Alan Mackenzie  <acm@muc.de>
11004         Tidy up documentation associated with window groups.
11006         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
11007         Groups".  Correct example function to `window-group-start'.
11008         (Window Start and End, Textual scrolling): Point to the new anchor.  State
11009         that (most of) the args in window group functions have the same meaning as for
11010         the corresponding window primitives.
11012         * doc/lispref/positions.texi (Screen Lines).  Same as above.
11014 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
11016         Complete last commit
11018         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11019         Move uname check up.  Handle Mac OS X eol encoding.
11021 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
11023         Handle Mac OS X eol encoding in Tramp
11025         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11026         Handle Mac OS X eol encoding.
11028 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11030         Fix variable name typo in compute_tip_xy
11032         * src/w32fns.c (compute_tip_xy):
11033         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
11034         when `right' is integer.
11036 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>
11038         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
11040 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
11042         Revert "Fix rx matcher overflow without limiting"
11044         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
11046 2015-12-14  Alan Mackenzie  <acm@muc.de>
11048         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
11050         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
11051         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
11053 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
11055         Fix rx matcher overflow without limiting
11057         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
11058         change to the regexp without imposing a limit on the length of the
11059         options.
11061 2015-12-14  Alan Mackenzie  <acm@muc.de>
11063         Enhance ispell-skip-region-alist by generating part of it at runtime.
11065         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
11066         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
11067         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
11068         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
11069         Include the result of ispell--make-filename-or-URL-re in regexps.
11071 2015-12-14  Glenn Morris  <rgm@gnu.org>
11073         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
11075 2015-12-14  Alan Mackenzie  <acm@muc.de>
11077         Replace GROUP argument in six window primitives by new functions.
11079         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
11080         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
11081         from description of six window functions.  Add in description of new functions
11082         window-group-start, window-group-end, set-window-group-start,
11083         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
11084         together with the six variables indirecting to the pertinent group
11085         functions.
11087         * src/window.c
11088         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
11089         applies to these two files, which added the GROUP argument to six window
11090         primitives.
11092         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
11093         functions.
11095         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
11096         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
11097         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
11098         to window primitives (e.g. window-start) with a GROUP argument by calls to
11099         new functions (e.g. window-group-start).
11101         * lisp/ispell.el (ispell-command-loop): Replace call to
11102         pos-visible-in-window-p with pos-visible-in-window-group-p.
11104         * lisp/window.el (window-group-start, window-group-end)
11105         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
11106         (selected-window-group, move-to-window-group-line): New functions.
11107         (window-group-start-function, window-group-end-function)
11108         (set-window-group-start-function, recenter-group-function)
11109         (pos-visible-in-window-group-p-function, selected-window-group-function)
11110         (move-to-window-group-line-function): New variables.
11112 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
11114         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
11116 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
11118         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
11120 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
11122         Improve regex to not trigger stack overflow
11124         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
11125         order not to trigger a stack overflow in regex matcher with unbalanced
11126         brackets (bug#22146).
11128 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
11130         Fix visiting files with raw-text
11132         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
11133         when some stuff was actually read.  (Bug#22162)
11135 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
11137         Fix regex matching keyval labels
11139         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
11140         matching keyval labels.
11142 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
11144         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
11146         ... in case of Tramp.  (Bug#20821)
11148 2015-12-13  Paul Eggert  <eggert@cs.ucla.edu>
11150         Fix performance regression with gcc -O0
11152         This fixes the smaller performance hit that I noted in:
11153         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
11154         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
11155         * src/puresize.h (puresize_h_PURE_P)
11156         (puresize_h_CHECK_IMPURE):
11157         New macros, with the old contents of the functions.
11158         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
11159         * src/puresize.h (PURE_P, CHECK_IMPURE):
11160         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
11161         * src/conf_post.h (ATTRIBUTE_UNUSED):
11162         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
11164 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
11166         * lisp/emacs-lisp/package.el (package-unpack): Security check
11168         Check that we received the package we were offered.
11170 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
11172         * lisp/emacs-lisp/package.el (package--compile): Don't activate
11174         `package-unpack' takes care of all activations now (other than
11175         `package-initialize).  `package--compile' now only compiles.
11177 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11179         Document the new bindings of <UP> and <DOWN> in the minibuffer
11181         * doc/emacs/mini.texi (Minibuffer History): Describe the new
11182         bindings of <UP> and <DOWN> in the minibuffer.
11184 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11186         Document new features of Ido
11188         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
11190 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
11192         Fix frame height calculations with added menu bar on Windows (Bug#22105)
11194         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
11195         when simultaneously specifying multiple parameters for
11196         `modify-frame-parameters' that all may change the frame's size.
11197         * src/w32fns.c (x_set_menu_bar_lines): Don't set
11198         windows_or_buffers_changed here.
11199         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
11200         with third argument false.
11201         * src/w32menu.c (set_frame_menubar): Set
11202         windows_or_buffers_changed here.
11203         * src/w32term.c (x_set_window_size): Determine third argument of
11204         AdjustWindowRect from whether the frame has a menu bar and not
11205         from whether it wants one.
11207 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11209         Document the change in interactive shell mode
11211         * doc/emacs/misc.texi (Interactive Shell): Document that the
11212         '*shell*' buffer by default displays in a new window.
11214 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11216         Document new features of package.el
11218         * doc/emacs/package.texi (Package Menu): Document the 'external'
11219         status and the new menu commands.
11220         (Package Installation): Document archive priorities.
11222         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
11223         (package-menu-hide-low-priority): Doc fix.
11225 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11227         Update and document new features of xterm support
11229         * doc/emacs/frames.texi (Text-Only Mouse): Document that
11230         track-mouse is supported by newer xterm versions.
11232 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11234         Document new features of Prettify Mode
11236         * doc/emacs/programs.texi (Misc for Programs): Document
11237         'prettify-symbols-compose-predicate' and
11238         'prettify-symbols-unprettify-at-point'.
11240         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
11241         (prettify-symbols-default-compose-p)
11242         (prettify-symbols-compose-predicate)
11243         (prettify-symbols--compose-symbol): Doc fixes.
11245 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11247         Document multi-mode indentation facilities
11249         * doc/lispref/text.texi (Mode-Specific Indent): Document
11250         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
11252         * lisp/progmodes/prog-mode.el (prog-indentation-context)
11253         (prog-widen): Doc fixes.
11255 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11257         Document 'vc-refresh-state'
11259         * doc/emacs/maintaining.texi (Version Control): Document
11260         'vc-refresh-state'.
11262         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
11264 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
11266         Fix echo for "C-u"
11268         * src/keyboard.c (command_loop_1): Undo last change.  It caused
11269         duplicate echo of C-u.  (Bug#22107)
11271 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11273         Avoid errors when creating files under SVN in new directory
11275         * lisp/vc/vc-svn.el (vc-svn-registered): Use
11276         file-accessible-directory-p, to avoid cd'ing to a non-existing
11277         directory, which signals an error on some systems.  (Bug#21984)
11278         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
11279         Use declare-function to avoid byte-compiler warnings.
11281 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11283         Improve Lua support in etags
11285         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
11286         "function".
11288         * etc/NEWS: Mention improved Lua support by 'etags'.
11290         * test/etags/lua-src/test.lua (test): Add tests for indented
11291         function definitions.
11292         * test/etags/ETAGS.good_1:
11293         * test/etags/ETAGS.good_2:
11294         * test/etags/ETAGS.good_3:
11295         * test/etags/ETAGS.good_4:
11296         * test/etags/ETAGS.good_5:
11297         * test/etags/ETAGS.good_6:
11298         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
11300 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11302         Fix 'this-command-keys' wrt prefix argument
11304         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
11305         was part of this-command-keys, but not of this-single-command-keys.
11306         (Bug#22107)
11308         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
11309         commentary about the function's return value.
11311 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11313         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
11315 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11317         Improve and document Ruby support in 'etags'
11319         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
11320         (Ruby_functions): Support "module" and overloaded operators.
11321         (Ruby_help): Mention "module".
11323         * test/etags/ruby-src/test.rb:
11324         * test/etags/ruby-src/test1.ru: New files.
11325         * test/etags/Makefile (RBSRC): New tests.
11326         (SRCS): Add ${RBSRC}.
11327         * test/etags/ETAGS.good_1:
11328         * test/etags/ETAGS.good_2:
11329         * test/etags/ETAGS.good_3:
11330         * test/etags/ETAGS.good_4:
11331         * test/etags/ETAGS.good_5:
11332         * test/etags/ETAGS.good_6:
11333         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
11335         * doc/man/etags.1: Mention Ruby support.
11336         * etc/NEWS: Mention Ruby support.
11338 2015-12-11  Xi Lu  <lx@shellcodes.org>
11340         Initial support for Ruby in 'etags'
11342         * lib-src/etags.c <Ruby_suffixes>: New variable.
11343         (lang_names): Add an entry for Ruby.
11344         (Ruby_functions): New function.  (Bug#22116)
11346 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11348         Clarify documentation of 'modify-frame-parameters'
11350         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
11351         PARMs" mean for 'modify-frame-parameters'.
11353         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
11354         PARMs" mean for this function.  (Bug#22104)
11356 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11358         Fix setting buffer unibyte when reading from a device
11360         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
11361         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
11363 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
11365         Clarify documentation of 'values'
11367         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
11368         updated by any evaluation commands in 'lisp-interaction-mode'.
11369         (Bug#22056)
11371 2015-12-11  Anders Lindgren  <andlind@gmail.com>
11373         Fixed subversion vc error when opening file in new directory (bug#21984).
11375         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
11377 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
11379         Yet another fix for when point ends up in invisible text
11381         * src/xdisp.c (redisplay_window): When someone forced
11382         window-start, and honoring that failed to show the cursor, try
11383         moving out of invisible text, before falling back to the middle of
11384         the window.  (Bug#22098)
11386 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
11388         Fix error in Tramp perl script for cygwin
11390         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
11391         error if file doesn't exist.
11393 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11395         Remove font workaround for limited outdated versions
11397         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
11398         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
11400 2015-12-09  Anders Lindgren  <andlind@gmail.com>
11402         Don't add "." to load path (bug#21104)
11404         When configured with --enable-locallisppath=no, which is the
11405         default for OS X, the load-path incorrectly was populated with ".".
11407         * src/lread.c (init_lread): Don't call `decode_env_path' when
11408         PATH_SITELOADSEARCH is empty.
11410 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
11412         * lisp/emacs-lisp/package.el (package--with-response-buffer):
11414         Search for the blank-line in the right buffer.
11416 2015-12-08  Glenn Morris  <rgm@gnu.org>
11418         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
11419         for recent change.
11421 2015-12-08  Glenn Morris  <rgm@gnu.org>
11423         Fix some display-warning usage.
11425         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
11426         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
11427         * lisp/calendar/holidays.el (calendar-holiday-list):
11428         * lisp/mail/rmailout.el (rmail-output-read-file-name):
11429         Fix display-warning usage.
11431 2015-12-08  Glenn Morris  <rgm@gnu.org>
11433         * lisp/calendar/cal-html.el: Require diary-lib.
11435         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
11437 2015-12-08  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11439         Add Obsolete-since header to eudcb-ph.el
11441         * lisp/obsolete/eudcb-ph.el: Add Obsolete-since header.
11443 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
11445         Spelling fixes
11447         * doc/misc/calc.texi (Predefined Units): Use the bland modern
11448         scientific style for spelling the units “ampere” and
11449         “angstrom” rather than the older style “Ampere” and
11450         “Ångstrom”.  The latter spelling was wrong anyway (it should
11451         have been “Ångström”).
11452         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
11453         Fix misspelling of ‘atom’ in code.
11455 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
11457         Improve documentation of kill commands
11459         * lisp/simple.el (region-extract-function, delete-backward-char)
11460         (delete-forward-char, kill-region, copy-region-as-kill)
11461         (kill-ring-save): Better document the optional argument REGION in
11462         the doc strings.  Mention in the doc strings that text put in the
11463         kill-ring can be filtered by 'filter-buffer-substring'.
11465         * doc/lispref/text.texi (Kill Functions): Mention that functions
11466         described in this subsection can filter text they put in the
11467         kill-ring.  Add a cross-reference to "Buffer Contents" and an
11468         index entry.  Document the optional argument 'region' and its
11469         effect.
11470         (Bug#21315)
11472 2015-12-07  Alan Mackenzie  <acm@muc.de>
11474         Further progress making Isearch, Ispell, Replace work with Follow Mode.
11476         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
11477         no longer exists.  Add follow-post-command-hook to  three special purpose
11478         hooks at setup, and remove them at tear down.
11480         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
11481         isearch-lazy-highlight-new-loop.
11482         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
11483         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
11484         it.
11485         (isearch-lazy-highlight-maybe-new-loop): function removed.
11487         * lisp/replace.el: (replace-update-post-hook): New hook variable.
11488         (perform-replace): Add second (nil) argument to looking-back.  Invoke
11489         replace-update-post-hook before calling replace-highlight.
11491         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
11492         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
11493         call of pos-visible-in-window-p.
11494         (ispell-display-buffer): Place *Choices* window at the top of the last window
11495         in a window group.
11497 2015-12-07  Alan Mackenzie  <acm@muc.de>
11499         Amend doc of `mapconcat': it can take sequences, not merely strings.
11501         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
11502         to say that SEPARATOR and the results from FUNCTION may be any character
11503         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
11505 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
11507         Fix an utf8 problem for Tramp on BSD
11509         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11510         Make lax check for utf8.
11511         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
11513 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11515         Make eudcb-ph.el obsolete
11517         * doc/misc/eudc.texi: Bump version to 1.40.0.
11518         Remove PH/QI sections and mentions.
11519         * lisp/obsolete/eudcb-ph.el: Make obsolete.
11520         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
11521         (eudc-ph-bbdb-conversion-alist): Make obsolete.
11522         * etc/NEWS: Mention this.  (Bug#21191)
11524 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
11526         Remove overenthusiastic eassert
11528         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
11529         previous change.  It breaks on MS-Windows --with-wide-int.
11530         Problem reported by Eli Zaretskii in:
11531         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
11533 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
11535         Pacify gcc -Wparentheses
11537         * src/xdisp.c (row_containing_pos): Reparenthesize.
11539 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
11541         Port mod-test to 32-bit Emacs --without-wide-int
11543         * modules/mod-test/test.el (mod-test-sum-test):
11544         Bring back the 2**29 tests, but port them to 32-bit Emacs
11545         --without-wide-int.
11547 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
11549         Fix minor Tramp problems found on BSD
11551         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
11552         trailing slash.  Quote apostrophes.
11553         (tramp-sh-handle-file-truename): Do not append trailing slash in
11554         the "ls" case.
11555         (tramp-get-ls-command-with-w-option): New defun.
11556         (tramp-do-file-attributes-with-ls)
11557         (tramp-do-directory-files-and-attributes-with-stat): Use it.
11559         * test/automated/tramp-tests.el
11560         (tramp-test31-special-characters-with-perl)
11561         (tramp-test31-special-characters-with-ls)
11562         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
11563         Suppress also readlink.
11565 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
11567         Fix cursor display when invisible text is at line beginning
11569         * src/xdisp.c (redisplay_window): When scrolling fails to show
11570         point, prefer using the desired matrix if possible for finding the
11571         fallback glyph row for displaying the cursor.  (Bug#22098)
11572         (row_containing_pos): Exit the loop as soon as we hit the first
11573         disabled glyph row.  Otherwise we risk accessing garbled data and
11574         departing to the no-no land.
11576 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
11578         Improve module interface when WIDE_EMACS_INT
11580         * src/emacs-module.c (plain_values): New constant.
11581         (module_nil): Now a constant.
11582         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
11583         (syms_of_module): Use if, not #ifdef, so that both sides are
11584         checked at compile-time, and so that GCC doesn’t complain
11585         about an unused var in the typical case.  Also, depend on
11586         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
11587         that WIDE_EMACS_INT implies !USE_LSB_TAG.
11588         (value_to_lisp_bits, lisp_to_value_bits): New functions.
11589         Sign-extend integers rather than zero-extending them, as small
11590         negative integers are more likely.
11591         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
11592         functions.
11593         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
11594         (mark_modules): Remove.  All uses removed.
11595         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
11596         to GCALIGNMENT.
11597         (syms_of_module): Check that module_nil converts to Qnil.
11598         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
11599         we prefer signed to unsigned when either will do.
11600         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
11601         a bit better for emacs-module.c.
11603 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
11605         Port mod-test to x86-64 GNU/Linux running 32-bit
11607         * modules/mod-test/test.el (mod-test-sum-test):
11608         Don’t attempt to match descriptions to operating systems.
11609         It didn’t work on Fedora x86-64 running a 32-bit executable,
11610         and it’s not worth the trouble anyway.
11611         Port to 32-bit platforms by removing an assumption about
11612         fixnum widths.
11614 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
11616         Fix auto-revert-tests.el when filenotify isn't used
11618         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
11619         Make it working also when filenotify isn't used.
11621 2015-12-06  Juri Linkov  <juri@linkov.net>
11623         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
11625         Let-bind isearch-regexp-function to nil.  (Bug#22097)
11627 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
11629         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
11631         (package--with-response-buffer): NOERROR and ERROR-FORM only
11632         handle connection errors.
11633         (bad-signature): New error type.
11634         (package--check-signature-content): Use it.
11635         (package--check-signature): Properly distinguish connection errors
11636         from bad-signature errors.  Do the check for
11637         `package-check-signature' `allow-unsigned' here instead of forcing
11638         the callbacks to do it.  Add a new argument, UNWIND.
11639         (package--download-one-archive, package-install-from-archive):
11640         Update usage of `package--check-signature'.
11642 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
11644         Fix Bug#22092.
11646         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
11647           Clean up inconsistent line endings. (Bug#22092)
11648           (icalendar--clean-up-line-endings): New.
11649         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
11650           for Bug#22092.
11652 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
11654         Document 'bookmark-set-no-overwrite'
11656         * doc/emacs/regs.texi (Bookmarks): Document the new command
11657         'bookmark-set-no-overwrite' and its keybinding.
11659 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
11661         Document new binding of 'mouse-buffer-menu'
11663         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
11664         now also on C-F10.
11666 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
11668         Initial documentation of dynamic modules
11670         * doc/lispref/loading.texi (Dynamic Modules): New section with
11671         initial documentation for dynamic modules.
11672         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
11673         detailed menu
11675         * etc/NEWS: Fix typos in dynamic modules' entry.
11677 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
11679         Remove copyright statements from trivial test files
11681 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
11683         Add "Preliminaries" section to etc/DEBUG
11685         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
11686         Most of the content was suggested by Phillip Lord
11687         <phillip.lord@russet.org.uk>.  Remove the section about debugging
11688         with the Visual Studio, as building Emacs with the Microsoft
11689         compilers is no longer supported.  Minor fixes in some other
11690         sections.
11692 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
11694         Improve parsing of version strings
11696         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
11697         (version-to-list): More helpful error messages.
11698         (version-to-list): ".5" is valid (update docstring).  Make
11699         "22.8X3" invalid, as the doc string says.
11701         * test/automated/subr-tests.el (ert-test-version-parsing): New
11702         tests for version string processing.
11704 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
11706         Fix documentation of 'undo' changes
11708         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
11709         English conventions for spelling and whitespace between sentences.
11711         * etc/NEWS: Fix wording and spelling of undo-related entries.
11712         Mark them as documented.
11714 2015-12-05  Glenn Morris  <rgm@gnu.org>
11716         * lisp/net/net-utils.el: Small improvements.
11718         (net-utils--executable-find-sbin): New function.
11719         (ifconfig-program): Check sbin directories.
11720         Fallback to "ip".  (Bug#22091)
11721         (ifconfig-program-options): Check the actual program in use.
11722         (arp-program): Check sbin directories.
11724 2015-12-04  (tiny change) Arash Esbati  <esbati@gmx.de>  (tiny change)
11726         Fix wrong-type-argument integer-or-marker-p nil error
11728         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
11729         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
11731 2015-12-04  Alan Mackenzie  <acm@muc.de>
11733         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
11735         Merge necessitated by a rebase operation.
11737 2015-12-04  Alan Mackenzie  <acm@muc.de>
11739         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
11741 2015-12-04  Alan Mackenzie  <acm@muc.de>
11743         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
11745         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
11746         Windows" and new @defun selected-window-group.
11747         (Window Start and End): Describe new &optional parameter GROUP and
11748         ...-group-function for window-start, window-end, set-window-start, and
11749         pos-visible-in-window-p.
11750         (Textual Scrolling) Describe the same for recenter.
11751         doc/lispref/positions.texi (Screen Lines): Describe the same for
11752         move-to-window-line.
11754         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
11755         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
11756         new optional parameter "group".  At the beginning of each, check whether the
11757         corresponding ...-group-function is set to a function, and if so execute this
11758         function in place of the normal processing.
11759         (syms_of_window): Define symbols for the six new variables below.
11760         (window-start-group-function, window-end-group-function)
11761         (set-window-start-group-function, recenter-group-function)
11762         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
11763         New permanent local buffer local variables.
11764         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
11765         Fpos_visible_in_window_p.
11767         lisp/window.el (selected-window-group-function): New permanent local buffer
11768         local variable.
11769         (selected-window-group): New function.
11771         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
11772         enable, kill them at mode disable.  Add/remove follow-after-change to/from
11773         after-change-functions.
11774         (follow-start-end-invalid): New variable.
11775         (follow-redisplay): Manipulate follow-start-end-invalid.
11776         (follow-after-change, follow-window-start, follow-window-end)
11777         (follow-set-window-start, follow-pos-visible-in-window-p)
11778         (follow-move-to-window-line, follow-sit-for): New functions.
11780         lisp/isearch.el (isearch-call-message): New macro.
11781         (isearch-update, with-isearch-suspended, isearch-del-char)
11782         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
11783         (with-isearch-suspended): Rearrange code such that isearch-call-message is
11784         invoked before point is moved.
11785         (isearch-message): Add comment about where point must be at function call.
11786         (isearch-search): Remove call to isearch-message.
11787         (isearch-lazy-highlight-window-group): New variable.
11788         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
11789         the battery of tests to ...
11790         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
11791         Note: (sit-for 0) is still called.
11792         (isearch-lazy-highlight-update): Check membership of
11793         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
11794         property.
11795         (isearch-update, isearch-done, isearch-string-out-of-window)
11796         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
11797         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
11798         (isearch-lazy-highlight-update): Call the six amended primitives (see
11799         src/window.c above) with the new `group' argument set to t, to cooperate
11800         with Follow Mode.
11802 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
11804         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
11806         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
11807         (ert--explain-format-atom, ert--explain-equal-rec)
11808         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
11809         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
11811 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
11813         * lisp/character-fold.el: Remove special case-folding support
11815         (character-fold-to-regexp): Remove special code for
11816         case-folding.  Char-fold search still respects the
11817         `case-fold-search' variable (i.e., f matches F).  This only
11818         removes the code that was added to ensure that f also matched
11819         all chars that F matched.  For instance, after this commit, f
11820         no longer matches 𝔽.
11822         This was necessary because the logic created a regexp with
11823         2^(length of the string) redundant paths.  So, when a very
11824         long string "almost" matched, Emacs took a very long time to
11825         figure out that it didn't.  This became particularly relevant
11826         because isearch's lazy-highlight does a search bounded by (1-
11827         match-end) (which, in most circumstances, is a search that
11828         almost matches).  A recipe for this can be found in bug#22090.
11830 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
11832         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
11834         Fixes (bug#21701)
11836 2015-12-04  Daiki Ueno  <ueno@gnu.org>
11838         lisp/gnus/qp.el: Don't replace "from " at bol
11840         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
11841         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
11843 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
11845         Externalize some symbols in undo-auto
11847          * doc/lispref/text.texi: Update symbols.
11848          * lisp/simple.el (undo-auto--amalgamate,
11849            undo-auto--current-boundary-timer): Make symbols public.
11850          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
11851            updated symbol.
11853 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
11855         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
11857 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
11859         Some error message improvements in tramp-sh.el
11861         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11862         Suppress error messages for "mesg" and "biff" calls.
11863         (tramp-get-remote-path): Ignore errors when expanding
11864         `tramp-own-remote-path'.  Raise a warning instead.
11866 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
11868         Document 'nacl' value for 'system-type'
11870         * doc/lispref/os.texi (System Environment): Document the 'nacl'
11871         value of 'system-type'.
11873 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
11875         Document 'window-max-chars-per-line'
11877         * doc/lispref/windows.texi (Window Sizes): Document
11878         'window-max-chars-per-line'.
11880 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11882         Fix some file headers for the purpose of `package--builtins'
11884         * lisp/emacs-lisp/cl-preloaded.el
11885         * lisp/emacs-lisp/eieio-compat.el
11886         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
11888         * lisp/ielm.el: Fix summary line.
11890 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11892         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
11894         Reload any previously loaded package files before compiling
11895         the package (also reload the same files after compiling).
11896         This ensures that we have the most recent definitions during
11897         compilation, and avoids generating bad elc files when a macro
11898         changes and it is used in a different file from the one it's
11899         defined in.
11901 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11903         * lisp/emacs-lisp/package.el: Refactor package activation code
11905         (package-activate): Move code that activates dependencies into
11906         package-activate-1.
11907         (package--load-files-for-activation): New function.
11908         (package-activate-1): Add code for (optionally) activating
11909         dependencies, and move file-loading code into
11910         `package--load-files-for-activation'.
11912 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
11914         Document new font-related functionality
11916         * doc/lispref/display.texi (Low-Level Font): Document
11917         'default-font-width', 'default-font-height', 'window-font-width',
11918         and 'window-font-height'.
11920         * etc/NEWS: Move entries for 'default-font-width',
11921         'default-font-height', 'window-font-width', and 'window-font-height'
11922         to their place and mark them documented.
11924 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
11926         Fix documentation and implementation of 'directory-name-p'
11928         * lisp/files.el (directory-name-p): Modify to recognize
11929         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
11930         accordingly.  Use '=', not char-equal, for comparison, as
11931         letter-case cannot possibly be an issue here.
11933         * doc/lispref/files.texi (Directory Names): Move the documentation
11934         of directory-name-p here from "Relative File Names".  Update the
11935         description per the changes in implementation.
11937         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
11938         place and mark it documented.
11940 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
11942         Minor copyedit in Emacs manual
11944         * doc/emacs/search.texi (Lax Search): Make wording about character
11945         folding by default less definitive.  (Bug#22043)
11947 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
11949         More emacs-module.c fixes for wide ints
11951         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
11952         unsigned data types to manipulate pointers, to avoid sign
11953         extension coming after us with a vengeance.
11955         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
11956         Emacs with wide ints that verify integer values near the critical
11957         value that requires us to switch to a cons cell.
11959 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
11961         Fix bug#22069 in cl-generic.el
11963         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
11964         not run thru `format'.
11966 2015-12-02  Dmitry Gutov  <dgutov@yandex.ru>
11968         APPEND etags--xref-backend to xref-backend-functions
11970         * lisp/progmodes/xref.el (xref-backend-functions):
11971         Use APPEND when adding the default element
11972         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
11974 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
11976         More accurate documentation of lax whitespace matching
11978         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
11979         (word-search-backward, word-search-forward)
11980         (word-search-backward-lax, word-search-forward-lax): Mention in
11981         doc strings that toggling lax whitespace matching has no effect on
11982         these commands.
11984         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
11985         lax whitespace matching has no effect on these commands.
11987 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
11989         Fix emacs-module.c for wide ints
11991         * src/emacs-module.c (lisp_to_value): Compare the produced value
11992         with the original Lisp object, not with the one potentially
11993         converted into a Lisp_Cons.  Fixes assertion violations when
11994         working with integers larger than fit into a 32-bit value.
11996         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
11997         large integers, to test --with-wide-int.
11999 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
12001         Document 'directory-files-recursively'
12003         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
12004         the argument MATCH to REGEXP, to be more explicit about its form.
12006         * doc/lispref/files.texi (Contents of Directories): Improve the
12007         documentation of 'directory-files-recursively'.  Add
12008         cross-references.
12010         * etc/NEWS: Move the entry for 'directory-files-recursively' to
12011         its place and mark it documented.
12013 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
12015         Document 'inhibit-read-only' property
12017         * doc/lispref/text.texi (Special Properties): Describe the new
12018         'inhibit-read-only' text property.  Add cross-reference to where
12019         read-only buffers are described.
12020         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
12021         'inhibit-read-only' property exempts text from being read-only.
12022         Add cross-reference to "Special Properties".
12024         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
12025         its place and mark it documented.
12027 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
12029         * lisp/emacs-lisp/package.el: Update header comments
12031 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
12033         * lisp/character-fold.el: Add back multi-char matching
12035         (character-fold-to-regexp): Uncomment recently commented code
12036         and make the algorithm "dummer" by not checking every possible
12037         combination.  This will miss some possible matches, but it
12038         greatly reduces regexp size.
12040         * test/automated/character-fold-tests.el
12041         (character-fold--test-fold-to-regexp): Comment out test of
12042         functionality no longer supported.
12044 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
12046         * doc/emacs/ack.texi (Acknowledgments): Update.
12048 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
12050         Check `file-remote-p' over absolute files names in files.el
12052         * lisp/files.el (directory-files-recursively)
12053         (get-free-disk-space): Check `file-remote-p' over absolute files names.
12055 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
12057                 * src/lread.c (syms_of_lread): Doc fix.
12059 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
12061         Don't mistake certain JS method calls for keywords
12063         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
12064         Braceless keyword can't come after a period (bug#22063).
12066 2015-12-01  David Reitter  <david.reitter@gmail.com>
12068         Read frame_title_format from buffer-local variable for NS port
12070         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
12071         icon-title-format variables from buffer in appropriate window.
12072         (Bug#22048)
12074 2015-12-01  Juri Linkov  <juri@linkov.net>
12076         * lisp/replace.el (occur-engine): Count matches in empty lines.
12078         (Bug#22062)
12080 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
12082         * src/emacs-module.h: Fix finalizer typedef for C++11
12084         C++11 standard doesn't allow exception-specification in typedef.
12085         The workaround is to declare a dummy function prototype and use
12086         decltype on it.
12088 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
12090         Fix last change
12092         * src/emacs-module.c (lisp_to_value, value_to_lisp)
12093         [WIDE_EMACS_INT]: Avoid compiler warnings.
12095 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
12097         Rely on conservative stack scanning to find "emacs_value"s
12099         * src/emacs-module.c (struct emacs_value_tag)
12100         (struct emacs_value_frame, struct emacs_value_storage): Remove.
12101         (value_frame_size): Remove constant.
12102         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
12103         (lisp_to_value): Remove first arg.
12104         (module_nil): New constant.
12105         Use it instead of NULL when returning an emacs_value.
12106         (module_make_function): Adjust to new calling convention of
12107         Qinternal_module_call.
12108         (DEFUN): Receive args in an array rather than a list.
12109         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
12110         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
12111         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
12112         Adjust to new type of non_local_exit info.
12113         (ltv_mark) [WIDE_EMACS_INT]: New constant.
12114         (value_to_lisp, lisp_to_value): Rewrite.
12115         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
12116         (allocate_emacs_value): Remove function.
12117         (mark_modules): Gut it.
12118         (initialize_environment): Don't initialize storage any more.
12119         Keep the actual env object on Vmodule_environments.
12120         (finalize_environment): Don't finalize storage any more.
12121         (syms_of_module): Initialize ltv_mark and module_nil.
12123         * src/emacs-module.h (emacs_value): Make it more clear that this type
12124         is really opaque, including the fact that NULL may not be valid.
12126         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
12127         Don't assume that NULL is a valid emacs_value.
12129 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
12131         Yet another doc improvement for search commands
12133         * doc/emacs/search.texi (Word Search, Symbol Search)
12134         (Regexp Search): Document commands that don't support lax
12135         whitespace matching or character folding.
12136         (Nonincremental Search): Mention the search commands that can be
12137         invoked from the menu bar.
12139         * lisp/isearch.el (isearch-define-mode-toggle-word)
12140         (isearch-define-mode-toggle-symbol)
12141         (isearch-define-mode-toggle-character-fold): Note in the doc
12142         string that turning these on exits the regexp mode.
12143         (isearch-forward-regexp, isearch-forward-word)
12144         (isearch-forward-symbol, isearch-backward-regexp)
12145         (word-search-backward, word-search-forward)
12146         (word-search-backward-lax, word-search-forward-lax): State in the
12147         doc string which commands don't support character folding and/or
12148         lax-whitespace matching.
12150 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
12152         Run `window-size-change-functions' also when reading from minibuffer
12154         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
12155         also when reading from minibuffer.
12157 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
12159         Fix scrambling of html-rendered item buffers
12161         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
12162           scrambling of contents by wrapping call to html-renderer in
12163           save-selected-window.
12165 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
12167         Fix font typo in previous doc fix.
12169 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
12171         A bit more security doc, esp. file local vars
12173         * doc/emacs/emacs.texi (Top):
12174         * doc/emacs/misc.texi (Miscellaneous Commands):
12175         Refer to new Host Security section.
12176         (Host Security): New section.
12177         * doc/lispref/os.texi (Security Considerations):
12178         Mention file local variables.
12180 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
12182         * lisp/character-fold.el: Comment out branching code
12184         (character-fold-to-regexp): Comment out code that uses multi-char
12185         table.  The branching caused by this induces absurdly long regexps,
12186         up to 10k chars for as little as 25 input characters.
12188 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
12190         Spelling and grammar fixes
12192 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
12194         Make lisp-completion-at-point a wrapper instead of an alias
12196         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
12197         Turn into an obsolete wrapper around elisp-completion-at-point
12198         (bug#20455).
12200 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
12202         * lisp/isearch.el (isearch-search-fun-default): Nicer error
12204         message when the search fails.
12206 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
12208         Update menu-bar-goto-uses-etags-p for the current xref API
12210         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
12211         xref-backend-functions, instead of now-nonexistent
12212         xref-find-function.
12214 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
12216         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
12218 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
12220         * lisp/menu-bar.el: Use folding in searches
12222         (nonincremental-search-forward): Use `isearch-search-fun-default'
12223         to determine the search function.
12224         (nonincremental-search-backward)
12225         (nonincremental-repeat-search-forward)
12226         (nonincremental-repeat-search-backward): Use it.
12228 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
12230         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
12232 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
12234         * lisp/character-fold.el (character-fold-to-regexp): Be careful
12236         not to return huge regexps.
12238 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
12240         Improve documentation of string-collate-* functions
12242         * doc/lispref/strings.texi (Text Comparison): Improve wording and
12243         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
12245         * etc/NEWS: Move the entry of 'string-collate-equalp' and
12246         'string-collate-lessp' to "Lisp Changes" section and mark it as
12247         documented.
12249 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
12251         Document truncate-string-ellipsis
12253         * doc/lispref/display.texi (Size of Displayed Text): Document
12254         'truncate-string-ellipsis'.
12256         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
12257         (truncate-string-to-width): Mention in the doc string that the
12258         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
12260         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
12261         Changes" section.
12263 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
12265         Fix confusion wrt character folding in the Emacs manual
12267         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
12268         Document that invoking search-forward/backward and
12269         re-search-forward/backward supports only case folding, but not the
12270         rest of the lax-search features.  Reported by Mike Kupfer
12271         <m.kupfer@acm.org>.
12273 2015-11-29  Ken Brown  <kbrown@cornell.edu>
12275         Update mod-test-sum-test
12277         * modules/mod-test/test.el (mod-test-sum-test): Update to
12278         accommodate the lack of dladdr on Cygwin.
12280 2015-11-29  Alan Mackenzie  <acm@muc.de>
12282         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
12284         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
12285         to `funcall', (i) Output an error message; (ii) Generate code to signal a
12286         `wrong-number-of-arguments' error.
12288 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
12290         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
12292 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12294         * lisp/character-fold.el (character-fold-to-regexp)
12296         Warn about using long strings.
12298         * test/automated/character-fold-tests.el
12299         (character-fold--test-lax-whitespace)
12300         (character-fold--test-consistency): Reduce string size for tests.
12302 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12304         Document renaming of x-select-enable-* variables
12306         * doc/emacs/killing.texi (Clipboard): Rename
12307         x-select-enable-clipboard to select-enable-clipboard and
12308         x-select-enable-primary to select-enable-primary.  Update index
12309         entries.
12311         * etc/NEWS: Mark entry as documented.
12313 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12315         Document the shorthand hints displayed by M-x
12317         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
12318         suggest-key-bindings.  Document the shorthand hints for commands
12319         that have no key bindings.  Document that M-x completion ignores
12320         obsolete commands.
12322         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
12323         documented.
12325 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12327         Update docs of character folding
12329         * doc/emacs/search.texi (Lax Search): Update the description of
12330         character folding for the latest changes.
12332 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12334         * lisp/character-fold.el: Also play nice with case-folding
12336         (character-fold-to-regexp): Take `case-fold-search' into account.
12338 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12340         * lisp/character-fold.el: Add support for multi-char matches
12342         (character-fold-table): Now has an extra-slot. This is a second
12343         char-table that holds multi-character matches.  See docstring for
12344         details.
12345         (character-fold-to-regexp): Can build branching regexps when a
12346         character's entry the extra slot of `character-fold-table' matches the
12347         characters that succeed it.
12349 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12351         * lisp/character-fold.el: Code simplifications
12353         (character-fold-table): Reduce the scope of a variable.
12354         (character-fold-to-regexp): Change logic to work directly on the
12355         input string.  It's a little easier to understand, probably
12356         faster, and sets us up for implementing multi-char matches.
12358         * test/automated/character-fold-tests.el
12359         (character-fold--test-fold-to-regexp): New test.
12361 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12363         Document changes in "C-h l"
12365         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
12367         * etc/NEWS: mark "C-h l" changes as documented.
12369 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12371         Finalize documentation of 'custom-prompt-customize-unsaved-options'
12373         * doc/emacs/custom.texi (Saving Customizations): Index the new
12374         function 'custom-prompt-customize-unsaved-options'.
12376         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
12377         is useful.
12379 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12381         Document 'comment-line'
12383         * doc/emacs/programs.texi (Comment Commands): Document
12384         'comment-line'.
12386         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
12388 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12390         Document new checkdoc features
12392         * doc/lispref/tips.texi (Tips, Library Headers): Document the
12393         keyword-checking features of checkdoc and the commands
12394         'checkdoc-file' and 'checkdoc-current-buffer'.
12396         * etc/NEWS: Move the checkdoc-related entries to their own
12397         section.
12399 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
12401         Simplify the prologue of emacs-module.c functions
12403         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
12404         (module_make_global_ref)
12405         (module_free_global_ref, module_make_function, module_funcall)
12406         (module_intern, module_type_of, module_extract_integer)
12407         (module_make_integer, module_extract_float, module_make_float)
12408         (module_copy_string_contents, module_make_string)
12409         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
12410         (module_get_user_finalizer, module_set_user_finalizer)
12411         (module_vec_set, module_vec_get, module_vec_size): Use new helper
12412         macro MODULE_FUNCTION_BEGIN.
12414 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12416         Don't reject module calls with no arguments
12418         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
12420 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
12422         Make module-call be visible from Lisp
12424         * src/emacs-module.c (module_make_function): Use internal--module-call.
12425         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
12426         checks.
12427         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
12428         defsubr internal--module-call.
12430 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12432         Add etags tests for the recent Lua-related bugfix
12434         * test/etags/lua-src/test.lua: New file, tests the issues raised
12435         by bug#21934.
12436         * test/etags/Makefile (LUASRC): Add test.lua.
12437         * test/etags/ETAGS.good_1:
12438         * test/etags/ETAGS.good_2:
12439         * test/etags/ETAGS.good_3:
12440         * test/etags/ETAGS.good_4:
12441         * test/etags/ETAGS.good_5:
12442         * test/etags/ETAGS.good_6:
12443         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
12444         regression fix, resolved around 25 May 2015, required changes to
12445         the "good" ETAGS files.
12447 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12449         Fix Lua tags when a function name includes '.' or ':'
12451         * lib-src/etags.c (Lua_functions): Add a tag for the last element
12452         of a function name after a dot or a colon.  (Bug#21934)
12454 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12456         Improve documentation of search and replace commands
12458         * doc/emacs/search.texi (Replacement and Lax Matches): Document
12459         which commands are affected by 'replace-character-fold'.
12460         (Lax Search): Add a cross reference to "Replacement and Lax
12461         Matches".  Improve wording.  Fix lost extra whitespace.
12462         (Search Customizations): Improve wording.  (Bug#22036)
12463         See also comments in
12464         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
12466         * lisp/replace.el (query-replace, query-replace-regexp)
12467         (query-replace-regexp-eval, replace-string, replace-regexp):
12468         Mention 'replace-character-fold' in the doc strings.
12470 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
12472         Fix minor problems found by static checking
12474         * src/undo.c (prepare_record): Add proper prototype for C.
12476 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
12478         * src/emacs-module.c (struct env_storage): Delete
12480         (struct emacs_runtime_private): Keep an emacs_env instead.
12481         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
12482         (initialize_environment): Split the arg in two.  Adjust all callers.
12483         Only store the private part in Vmodule_environments.
12484         (finalize_environment): Change the arg to only be the private env.
12485         Adjust all callers.
12487 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12489         Improve documentation of 'replace-character-fold'
12491         * lisp/replace.el (replace-character-fold): Clarify which commands
12492         are affected by this variable.
12494 2015-11-27  Mark Oteiza  <mvoteiza@udel.edu>
12496         Backport: Add interactive seek command.
12498         * lisp/mpc.el (mpc-cmd-seekcur): New function.
12499         (mpc-seek-current): New command.
12500         (mpc-mode-menu): Add entry for mpc-seek-current
12501         (mpc-mode-map): Bind mpc-seek-current to "g"
12503 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
12505         Autoload etags when using its xref backend
12507         * lisp/progmodes/xref.el (xref--etags-backend):
12508         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
12509         (Bug#22026)
12511 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
12513         * lisp/character-fold.el: Allow complex chars to match their decomposition
12515         (character-fold-table): When a character's decomposition does not
12516         involve a formatting tag (i.e., if it has an "exact" description via
12517         other characters), then this character is allowed to match the
12518         decomposition.
12520 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
12522         * lisp/character-fold.el: More descriptive variable names
12524         (character-fold-table): Rename a lot of the lexical variables to
12525         make the code easier to read.
12527 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
12529         * lisp/isearch.el: Ensure we still support `isearch-new-word'
12531         (isearch-new-regexp-function): Define variable.
12532         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
12534 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12536         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
12538 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
12540         * test/automated/abbrev-tests.el: Define more tests
12542         (abbrev-table-name-test, kill-all-abbrevs-test)
12543         (clear-abbrev-table-test): New tests.
12545 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12547         Add module tests for wrong-type-argument
12549         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
12550         wrong-type-argument.
12552 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12554         Improve handling of signals and 'throw' in modules
12556         * src/emacs-module.c: Add commentary explaining how to write
12557         functions in this file.
12558         (module_make_global_ref, module_free_global_ref)
12559         (module_non_local_exit_signal, module_non_local_exit_throw)
12560         (module_make_function, module_funcall, module_intern)
12561         (module_type_of, module_is_not_nil, module_eq)
12562         (module_extract_integer, module_make_integer)
12563         (module_extract_float, module_make_float)
12564         (module_copy_string_contents, module_make_string)
12565         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
12566         (module_get_user_finalizer, module_set_user_finalizer)
12567         (module_vec_set, module_vec_get, module_vec_size)
12568         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
12569         Do nothing and return with failure indication immediately, if some
12570         previous module call signaled an error or wants to throw.  See
12571         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
12572         for the relevant discussions.
12574 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12576         Add ':version' tag to 'checkdoc-package-keywords-flag'
12578         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
12579         Add a ':version' tag.
12581 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12583         Improve documentation of 'eval-buffer' and 'eval-region'
12585         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
12587         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
12588         "accessible portion of buffer".
12590 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12592         Unbreak the Cygwin w32 build
12594         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
12595         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
12597 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
12599         Improve commentary in character-fold.el
12601         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
12602         description from commit log message to comments.  (Bug#22019)
12604 2015-11-26  Alan Mackenzie  <acm@muc.de>
12606         Byte Compiler: generate code to adjust stack count after call to `signal'.
12608         Corrects change from earlier today.
12610         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
12611         `byte-compile--for-effect' as argument to `byte-compile-form'.
12613 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
12615         Improve commentary of prepare_to_modify_buffer_1
12617         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
12618         that this function runs Lisp.  Suggested by Richard Stallman
12619         <rms@gnu.org>.
12621 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
12623         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
12625 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
12627         Fix regression after merge.
12629          * src/undo.c (prepare_record): Remove call to run_undoable_change.
12631 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
12633         After delete, record point location in undo.
12635         Addresses Bug #21968.
12637                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
12638                 better support intercalating calls.
12639                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
12640                 point and current buffer before each command.
12641                 * src/undo.c (record_point): Now only record the point.
12642                 * src/undo.c (prepare_record): Functionality removed form
12643                 record_point.
12644                 * src/undo.c (record_delete): Check if point needs recording.
12645                 * src/undo.c (undo-boundary): Record value of point before each
12646                 boundary.
12647                 * test/automated/simple-test.el: New tests.
12649         Conflicts:
12650                 src/undo.c
12652 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
12654         Fix compiler warnings in w32.c
12656         * src/w32.c (sys_socket): In case of error, use -1 as return
12657         value, not INVALID_SOCKET, which causes compiler warnings.
12658         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
12659         to the appropriate function signature, to avoid compiler errors.
12660         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
12662 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
12664         Check if the file exists on disk before producing the revert diff
12666         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
12667         exists on disk (bug#20558).
12669 2015-11-26  Alan Mackenzie  <acm@muc.de>
12671         Byte compiler: on setq with an odd number of arguments, generate a `signal'
12673         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
12674         it has an odd number of arguments, to allow bytecomp to handle the error.
12676         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
12677         odd number of arguments, generate a `signal' instead of the normal code.
12679 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
12681         Use find-tag-default for xref-backend-identifier-at-point
12683         * lisp/progmodes/etags.el (find-tag-tag)
12684         (tags-completion-at-point-function): Extract common code as
12685         find-tag--default.
12686         (xref-backend-identifier-at-point): Define in terms of the new
12687         function.
12689 2015-11-26  Paul Eggert  <eggert@cs.ucla.edu>
12691         * src/undo.c (record_property_change): Remove now-unused local.
12693 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
12695         run_undoable_changes now called from insdel.
12697         The original calls from inside undo.c are not always at a safe position
12698         to call lisp, as they originate in varied positions within insdel.c.
12699         Calling them directly from prepare_to_modify_buffer_1 ensures that they
12700         are always run at the same point.
12702          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
12703          and symbol used.
12704          * src/insdel.c (run_undoable_changes): Add function and symbol.
12706 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
12708         Improve and update documentation of search commands
12710         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
12711         all references changed.  Move the description of lax-whitespace
12712         here.  Add description of the new character folding features and
12713         additional customizable options.
12714         (Isearch Yank): Move before "Error in Search".
12715         (Basic Isearch): Improve wording.  Add index entries.  Add short
12716         description of how to abandon search, making this subsection a
12717         complete introduction to search basics.
12718         (Repeat Isearch): Add index entries.  Describe additional
12719         customizable options.  Describe mouse clicks.
12720         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
12721         area.  Describe more customizable options.
12722         (Error in Isearch): Add index entries.
12723         (Special Isearch): Move actual description of some isearch
12724         commands to other sections, leaving here just the summary of the
12725         commands.  Add command that toggles character folding.  Describe
12726         commands, like "C-h C-h", that were previously omitted for some
12727         reason.
12728         (Not Exiting Isearch): Describe search-exit-option.  Add index
12729         entries.
12730         (Word Search): Describe eww-search-word and eww-search-prefix.
12731         (Symbol Search): Add index entries.
12732         (Regexp Search): Describe regexp-search-ring-max.
12733         (Replacement and Lax Matches): Renamed from "Replacement and
12734         Case"; all references changed.  Describe lax-whitespace matching
12735         in replace commands and related options.  Describe character
12736         folding in replace commands and related options.
12737         (Query Replace): Describe query-replace-from-to-separator and the
12738         new history features.  Add index entries for highlighted text.
12739         Describe query-replace-skip-read-only.  Describe more keys
12740         accepted by query-replace.
12741         (Other Repeating Search): More index entries for Occur.  Describe
12742         list-matching-lines-default-context-lines.
12743         (Search Customizations): New section, documents customizable
12744         options that were not documented until now.
12745         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
12746         "Character Folding".
12748         * etc/NEWS: Move search- and replace-related entries to a single
12749         parent section.
12751         * lisp/replace.el (query-replace-show-replacement): Doc fix.
12752         * lisp/isearch.el (search-nonincremental-instead)
12753         (isearch-hide-immediately): Doc fixes.
12755 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
12757         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
12759         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
12760         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
12761         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
12763 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
12765         Fix module_format_fun_env when dynlib_addr fails
12767         * src/emacs-module.c (module_format_fun_env):
12768         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
12769         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
12771 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
12773         Disambiguate variable help a bit better
12775         * lisp/help-fns.el (describe-variable): Quote the
12776         variable’s value if it is a symbol other than t or nil.
12777         See: T.V Raman in:
12778         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
12780 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
12782         Pass SVN commit message through log-edit-extract-headers
12784         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
12785         log-edit-extract-headers (bug#18954).
12787 2015-11-24  Alan Mackenzie  <acm@muc.de>
12789         CC Mode: Eliminate compiler warning messages.
12791         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
12792         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
12793         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
12794         (c-awk-set-syntax-table-properties): Clarify comments about
12795         `font-lock-syntactic-keywords'.
12797         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
12798         of this before the real (interpreted) one, to satisfy the byte compiler.
12800 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
12802         Extend the test suite for json.el
12804         * lisp/json.el (json-plist-p): Clarify docstring.
12806         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
12807         macro.
12808         (test-json-join, test-json-alist-p)
12809         (test-json-plist-p, test-json-advance, test-json-peek)
12810         (test-json-pop, test-json-skip-whitespace)
12811         (test-json-read-keyword, test-json-encode-keyword)
12812         (test-json-read-number, test-json-encode-number)
12813         (test-json-read-escaped-char, test-json-read-string)
12814         (test-json-encode-string, test-json-encode-key)
12815         (test-json-new-object, test-json-add-to-object)
12816         (test-json-read-object, test-json-encode-list)
12817         (test-json-read-array, test-json-encode-array)
12818         (test-json-read, test-json-read-from-string)
12819         (test-json-encode): New tests.
12820         (json-read-simple-alist): Merged into `test-json-read-object'.
12821         (json-encode-string-with-special-chars): Merged into
12822         `test-json-encode-string'.
12823         (json-read-string-with-special-chars): Split into
12824         `test-json-encode-string' and `test-json-read-from-string'.
12826 2015-11-24  Anders Lindgren  <andlind@gmail.com>
12828         Fixed bug#18283: Enable applescript in NextStep.
12830         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
12832 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
12834         Allow completion on dynamic module files in load-library
12836         * lisp/files.el (load-library): Bind completion-ignored-extensions
12837         to nil, to allow completion on dynamic modules typed as file
12838         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
12840 2015-11-24  Alan Mackenzie  <acm@muc.de>
12842         CC Mode: eliminate almost all byte compilation warnings
12844         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
12845         (cc-require): Remove the crude hack that saved and restored
12846         byte-compile-noruntime-functions.
12847         (cc-conditional-require, cc-conditional-require-after-load): New macros.
12849         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
12850         cc-fix.el using the new macros in cc-bytecomp.el.
12852         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
12853         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
12854         forms to remove the superflous quotes.
12856 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
12858         Add one more mod-test test
12860         * modules/mod-test/test.el (mod-test-sum-test): Test the error
12861         signaled when the function is invoked with a wrong number of
12862         arguments.
12864 2015-11-24  Philipp Stephani  <phst@google.com>
12866         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
12868 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
12870         Implement dynlib_addr for MS-Windows
12872         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
12873         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
12874         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
12875         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
12876         if undefined.
12877         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
12878         zero.
12879         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
12880         the full file name of the module for a given address.
12882 2015-11-24  Alan Mackenzie  <acm@muc.de>
12884         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
12886 2015-11-24  Alan Mackenzie  <acm@muc.de>
12888         Squashed commit of the following:
12890         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
12891         Author: Alan Mackenzie <acm@muc.de>
12892         Date:   Tue Nov 24 16:50:09 2015 +0000
12894             Byte compile: minor amendments.
12896             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
12897             add a comment to explain the binding of variables around a subsidiary
12898             compilation.
12899             (byte-compile-new-defuns): Amend the doc string.
12901         commit c537bfed1dda1593d218956ff00c6105a3ff0316
12902         Author: Alan Mackenzie <acm@muc.de>
12903         Date:   Sat Nov 21 18:43:57 2015 +0000
12905             Byte compiler: fix spurious warnings "might not be defined at runtime".
12907             Also initialize byte-compile-noruntime-functions between runs.
12909             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
12910             (byte-compile-initial-macro-environment): For eval-when-compile: bind
12911             byte-compile-unresolved-functions and byte-compile-new-defuns around
12912             byte-compile-top-level, to prevent spurious entries being made.
12913             (byte-compile-warn-about-unresolved-functions): Check whether function is
12914             in byte-compile-new-defuns before emitting a warning about it.
12915             (byte-compile-from-buffer): Initialize new variable and
12916             byte-compile-noruntime-functions to nil.
12917             (byte-compile-file-form-require): record all new functions defined by a
12918             `require' in byte-compile-new-defuns.
12919             (byte-compile-file-form-defmumble): record the new alias in
12920             byte-compile-new-defuns.
12922 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
12924         Fix crash at startup related to GC of font entities
12926         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
12927         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
12928         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
12929         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
12930         Don't ifdef away font cache compaction on NT_GUI, as the problems
12931         which led to that seem to have been solved.
12932         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
12933         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
12934         cousins.  (Bug#21999)
12936 2015-11-24  Alan Mackenzie  <acm@muc.de>
12938         Byte compile: Output an error, not a warning, for odd number of args to setq
12940         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
12942 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
12944         Fix kbd_buffer iteration loop in readable_events
12946         * src/keyboard.c (readable_events): Wrap the event pointer back to the
12947         start of the kbd_buffer array inside the top of the loop instead of
12948         right before checking the loop condition, since kbd_fetch_ptr and
12949         kbd_store_ptr point past the end of the array to mean that element 0
12950         is next. (bug#21935)
12952 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12954         Improve text-quoting-style doc again
12956         * doc/lispref/help.texi (Keys in Documentation):
12957         Omit overkill discussion of ‘setq’.  Mention Emacs versions
12958         where ‘grave’ style was standard.
12960 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12962         Improve text-quoting-style doc
12964 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12966         Simplify module_make_function
12968         * src/emacs-module.c (module_make_function):
12969         Simplify by calling build_unibyte_string.
12971 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12973         Port better to FreeBSD’s dlfunc vs dlsym
12975         This avoids warnings when converting between void * and
12976         function pointers, which strict C11 does not allow.
12977         * configure.ac (dlfunc): Check for existence.
12978         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
12979         (dynlib_func): New function.
12980         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
12981         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
12982         dynlib_sym, for function pointers.
12984 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12986         Simplify use of emacs_finalizer_function type
12988         * src/emacs-module.h (emacs_finalizer_function):
12989         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
12990         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
12992 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12994         module_format_fun_env fixes
12996         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
12997         * src/emacs-module.c (module_format_fun_env):
12998         Convert path and sym to UTF-8.
12999         Don’t use VLAs, as the C11 standard says they’re optional,
13000         and anyway they can cause core dumps with large allocations.
13001         Use exprintf rather than snprintf, as exprintf handles arbitrarily
13002         long strings.  Simplify the code a bit.
13004 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
13006         Don't use package-user-dir in elisp-library-roots if it's not bound
13008         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
13009         use package-user-dir if it's not bound (bug#19759).
13011 2015-11-23  Anders Lindgren  <andlind@gmail.com>
13013         New visible-bell for NextStep (OS X El Capitan compatible).
13015         Instead of inverting a rectangle in the middle of the frame, use
13016         the standard NextStep image "caution", represented using an
13017         warning sign with an exclamation mark.  (Bug#21662)
13019         Implemented based on a suggestion drafted by Mustafa Kocaturk.
13021         * src/nsterm.m (EmacsBell): New class for managing the caution
13022         image.  Support multiple active bells, the image is removed once
13023         all bells have timed out.
13024         (ns_timeout): Removed, no longer used.
13025         (ns_ring_bell): Reimplemented to use EmacsBell.
13027 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
13029         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
13031         (remove-function): Ditto. (Bug#20376)
13033 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
13035         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
13037 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
13039         Improve how non-ASCII strings are accepted from modules
13041         * src/emacs-module.c (module_make_function, module_make_string):
13042         Build a unibyte Lisp string and then decode it by UTF-8, instead
13043         of building a multibyte string without decoding.  This is more
13044         tolerant to deviations from UTF-8.
13046 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
13048         Port recent module changes to pickier compilers
13050         * src/emacs-module.c (module_make_function)
13051         (module_make_string): Add casts to fix pointer signedness issues.
13053 2015-11-23  Philipp Stephani  <phst@google.com>
13055         Fix how strings are accepted from modules
13057         * src/emacs-module.c (module_make_function, module_make_string): Use
13058         make_multibyte_string.
13059         (module_copy_string_contents): Encode before reading the byte
13060         size.  Return false if and only if an error occurred.
13062 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
13064         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
13066 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
13068         Add the tamil-dvorak input method
13070         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
13072         * etc/NEWS: Mention the new input method.
13074 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
13076         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
13078         * src/frame.c (adjust_frame_size): Don't set
13079         FRAME_WINDOW_SIZES_CHANGED here ...
13080         * src/window.c (resize_frame_windows): ... but here, as suggested
13081         by Stefan Monnier.  Also remove some dead code along the way.
13083 2015-11-23  Alan Mackenzie  <acm@muc.de>
13085         * etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
13087 2015-11-23  Alan Mackenzie  <acm@muc.de>
13089         Signal an error when `setf' gets an odd number of arguments.
13091         * lisp/emacs-lisp/gv.el (setf): Amend.
13093 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
13095         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
13097 2015-11-23  Alan Mackenzie  <acm@muc.de>
13099         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
13101 2015-11-23  Alan Mackenzie  <acm@muc.de>
13103         Expunge occurrences of `setq' with an odd number of arguments.
13105         * lisp/apropos.el (apropos-documentation):
13106         * lisp/obsolete/complete.el (PC-include-file-all-completions):
13107         * lisp/progmodes/compile.el (compilation-goto-locus):
13108         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
13109         Insert missing nil at end of `setq' forms.
13111         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
13112         erroneous trailing variable name from a setq, thus allowing a compilation
13113         properly to track functions not defined at runtime.
13115 2015-11-23  John Wiegley  <johnw@newartisans.com>
13117         Add a note about a questionable use of bool in xdisp.c
13119 2015-11-23  Alan Mackenzie  <acm@muc.de>
13121         Issue a warning from the byte compiler on a malformed `setq' form.
13123         Partly fixes bug#20241.
13124         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
13125         `setq' form with an odd number of arguments is compiled.
13127 2015-11-23  Alan Mackenzie  <acm@muc.de>
13129         Don't let cconv_convert insert a nil argument into a `setq' form.
13131         Fixes bug#21983.
13132         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
13133         argument into a `setq' when there're an odd number of args.  This enables the
13134         byte compiler to issue a message in this case.
13136 2015-11-23  Alan Mackenzie  <acm@muc.de>
13138         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
13140         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
13141         (syms_of_eval): Add a DEFSYM for Qsetq.
13143 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
13145         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
13147         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
13149 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13151         Add EUDC BBDB 3 entry in NEWS
13153         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
13155 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13157         Improve EUDC to BBDB 3 export
13159         * lisp/net/eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
13160         entry to single item.  Add company conversion.
13161         * lisp/net/eudc-export.el (eudc-bbdbify-company): New function.
13162         (bbdb-parse-phone): Declare function.
13163         (eudc-bbdbify-phone): Add BBDB 3 support.
13164         (Bug#21971)
13166 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13168         Add BBDB 3 support for EUDC export
13170         * lisp/net/eudc.el: Add bbdb-version defvar.
13171         (eudc--using-bbdb-3-or-newer-p): New function.
13172         * lisp/net/eudc-export.el (eudc-create-bbdb-record): Add support for
13173         bbdb-create-internal argument list changes introduced in BBDB 3.
13174         * lisp/net/eudcb-bbdb.el: Remove bbdb-version defvar.
13175         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
13176         (Bug#21971)
13178 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
13180         Allow loading modules by 'load-file'
13182         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
13183         2nd arg, to avoid the "binding stack not balanced" error.
13184         (syms_of_lread) <module-file-suffix>: New Lisp variable.
13186         * lisp/files.el (module-file-suffix): Declare.
13187         (load-file): Remove 'module-file-suffix' from
13188         'completion-ignored-extensions', to allow completion on modules.
13190         * etc/NEWS: Mention 'module-file-suffix'.
13192 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
13194         Fix unoptimized builds
13196         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
13197         builds.
13199 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
13201         Work around the asynchronous-empty-diff problem
13203         * lisp/vc/vc-rcs.el (vc-rcs-diff):
13204         * lisp/vc/vc-mtn.el (vc-mtn-diff):
13205         * lisp/vc/vc-hg.el (vc-hg-diff):
13206         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
13207         do a synchronous process call (bug#21969).
13209 2015-11-22  Karl Fogel  <kfogel@red-bean.com>
13211         Finish excising electric indent from `open-line'
13213         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
13215         * test/automated/simple-test.el (open-line-indent, open-line-hook):
13216           Adjust accordingly.
13218         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
13219         (git commit c59353896) started.  It turns out that having INTERACTIVE
13220         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
13221         still had the electric indent behavior, as `post-self-insert-hook'
13222         normally contains `electric-indent-post-self-insert-function' ever
13223         since `electric-indent-mode' has been on by default.  Tracing the code
13224         change in `open-line' is mildly twisty, because Artur Malabarba's
13225         earliest two commits of 24 Oct 2015 first removed the `interactive'
13226         form entirely (git commit 6939896e2) and then restored it with the new
13227         extra "p" already added (git commit bd4f04f86), such that there is no
13228         single-commit diff in which one sees the second "p" appear.  Thus this
13229         change is effectively a reversion of parts of each of those commits.
13231         This could close bug#21884, at least until further discussion.
13233 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
13235         Adhere closer to the "implicit tag name" definition
13237         * lisp/progmodes/etags.el (etags-tags-completion-table):
13238         Adhere closer to the "implicit tag name" definition.  Simplify
13239         the regexp.  Search for the explicit tag name first, and when
13240         not found, search locally for the implicit one.  (Bug#21934)
13242 2015-11-22  Stefan Monnier  <monnier@iro.umontreal.ca>
13244         Unrevert most of regexp reentrancy abort patch
13246         The problem was in:
13247           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
13248         which is hence not unreverted.
13249         The rest is:
13250         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
13251         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
13252         All callers in regex.c changed back to the _FAST versions.
13254         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
13255         propertization in backward-sexp.
13257 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
13259         Revert regexp reentrancy abort patch
13261         Although the patch does fix Bug#21688 and prevents a core dump,
13262         it also makes the message-mode-propertize test fail; see:
13263         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
13264         Perhaps someone else can come up with a better fix some day.
13265         * src/syntax.c (update_syntax_table_forward):
13266         Propertize even when truncated.
13267         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
13268         (UPDATE_SYNTAX_TABLE_FAST): Remove.
13269         All callers changed back to the non-_FAST versions.
13271 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
13273         Add a few safety checks when ENABLE_CHECKING
13275         This was motivated by the recent addition of module code,
13276         which added some ENABLE_CHECKING-enabled checks that are
13277         useful elsewhere too.
13278         * src/alloc.c (compact_font_cache_entry):
13279         * src/fns.c (sweep_weak_table):
13280         * src/lread.c (oblookup):
13281         Use gc_asize rather than doing it by hand.
13282         * src/emacs-module.c (module_make_global_ref)
13283         (module_free_global_ref, module_vec_size):
13284         Omit assertions that lisp.h now checks.
13285         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
13286         check that the result is nonnegative.  Use eassume, as this
13287         info can help a bit when optimizing production code.
13288         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
13289         to be consistent with the USE_LSB_TAG case.
13290         (gc_asize): New function, when ASIZE is needed in the gc.
13291         (gc_aset): Use it.
13292         (HASH_TABLE_P): Move definition up, so that it can be used ...
13293         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
13295 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
13297         Simplify recording of main thread's ID on MS-Windows
13299         * src/w32term.c (w32_initialize):
13300         * src/w32console.c (initialize_w32_display):
13301         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
13302         ID independently for each type of session (GUI, TTY, batch).
13303         * src/w32term.c (w32_init_main_thread): New function, records the
13304         main thread's thread ID.
13305         * src/w32term.h: Add prototype for w32_init_main_thread.
13306         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
13308         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
13309         main_thread, for consistency with other threading libraries.  All
13310         users changed.  Include w32term.h.
13311         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
13312         make sure the main thread is alive, as we hold a handle on it
13313         opened by w32_init_main_thread.
13314         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
13315         w32_init_main_thread, instead of calling the requisite APIs once
13316         more.
13318 2015-11-21  Mark Oteiza  <mvoteiza@udel.edu>
13320         Backport: Fix issue where a new tempfile was created every refresh
13322         * lisp/mpc.el (mpc-format): Leave dir as relative path
13324 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
13326         Call 'window-size-change-functions' for mini-windows
13328         * src/window.c (grow_mini_window, shrink_mini_window): Set the
13329         frame's 'window_sizes_changed' flag.
13330         * src/xdisp.c (redisplay_internal): Call the hooks on
13331         'window-size-change-functions' if the call to 'echo_area_display'
13332         sets the frame's 'window_sizes_changed' flag.
13333         (syms_of_xdisp) <window-size-change-functions>:
13334         Update doc string to indicate the mini-window resizes trigger a
13335         call to the hooks, and don't promise that will happen "before
13336         redisplay".  (Bug#19576, Bug#21333)
13338         * doc/lispref/windows.texi (Window Hooks): Update the description
13339         of 'window-size-change-functions'.
13341 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
13343         Improve documentation of dynamic modules
13345         * src/fns.c (Frequire): Doc fix to include the dynamic module
13346         support.
13347         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
13348         dynamic module support.
13349         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
13350         wrt the MUST-SUFFIX argument.
13352         * etc/NEWS: Expand documentation of dynamically loaded modules.
13354 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
13356         Initial documentation for dynamic modules
13358         * etc/NEWS: Mention the new support for dynamically loaded modules.
13360 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
13362         Add xref--etags-backend to xref-backing-functions using add-hook
13364         * lisp/progmodes/xref.el (xref-backend-functions): Move the
13365         default value into a separate `add-hook' call (bug#21964).
13367         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
13368         Don't declare the xref-backend-functions variable.
13369         It doesn't make any difference.
13371 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13373         Fix double-decrement bug when freeing global refs
13375         * src/emacs-module.c (module_free_global_ref): Add a FIXME
13376         comment about error reporting.  Fix a recently-introduced typo
13377         that double-decremented the refcount.
13379 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13381         Declare emacs_module_init in the module API
13383         * src/emacs-module.h (emacs_module_init): New decl.
13384         Without it, GCC might complain about a module that defines
13385         emacs_module_init without using it.  This also checks the
13386         API better.
13388 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13390         Fix module test to use ptrdiff_t nargs too
13392         * modules/mod-test/mod-test.c (Fmod_test_return_t)
13393         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
13394         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
13395         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
13396         (Fmod_test_userptr_get, Fmod_test_vector_fill)
13397         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
13398         (finalizer): Remove; no longer used.
13400 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13402         Fix reindent-introduced typo in module code
13404         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
13405         introduced while reindenting the code earlier, and add a
13406         comment explaining the unusual use of do-while here.
13408 2015-11-20  Anders Lindgren  <andlind@gmail.com>
13410         Fixed bug#19576: `write-file' saves wrong buffer.
13412         If a function on the hook `window-size-change-functions' doesn't
13413         restore the current buffer, functions that save and restore the
13414         current window configuration (like `y-or-no-p') could silently
13415         change the current buffer.  When `write-file' asked the user
13416         confirmation to overwrite a file, `y-or-no-p' changed the current
13417         buffer, and the wrong buffer was saved to the file.
13419         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
13420         using the `norecord' parameter.
13421         (follow-window-size-change): Restore current buffer. Call
13422         `select-frame' using the `norecord' parameter. Cleanup.
13424 2015-11-20  John Wiegley  <johnw@newartisans.com>
13426         Correct a documentation error in frames.texi
13428 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
13430         * lisp/cedet/mode-local.el: Delete obsolete comment
13432 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13434         Module function arg counts are ptrdiff_t, not int
13436         * src/emacs-module.c (struct module_fun_env)
13437         (module_make_function, module_funcall, Fmodule_call):
13438         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
13439         Use ptrdiff_t, not int, for arg counts.
13440         * src/emacs-module.c (module_make_function): Don’t bother
13441         checking arity against MOST_POSITIVE_FIXNUM, as that’s
13442         unnecessary here.  Make the checking clearer by negating it.
13443         (module_make_function, Fmodule_call): No need to use xzalloc
13444         since the storage doesn’t need to be cleared.
13445         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
13446         for it, and many implementations are buggy with large VLAs anyway.
13447         Use SAFE_ALLOCA_LISP instead.
13448         (module_vec_set): Don’t crash if i < 0.
13449         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
13450         (module_vec_set, module_vec_get): Do fixnum checks only when
13451         i is out of array bounds, for efficiency in the usual case.
13452         (Fmodule_load): Simplify fixnum range check.
13453         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
13454         integer overflow in array allocation size.
13456 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
13458         Minor improvements in module test
13460         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
13461         about missing prototype of malloc.
13462         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
13463         compiler warnings.
13465 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
13467         Improve MS-Windows implementation in dynlib.c
13469         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
13470         No need to include windows.h, as w32.h already does that.
13471         <dynlib_last_err>: New static variable.
13472         (dynlib_reset_last_error): New function.
13473         (dynlib_open): Convert forward slashes to backslashes.  Convert
13474         file names from UTF-8 to either UTF-16 or the current ANSI
13475         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
13476         argument is NULL, return a handle to the main module, like
13477         'dlopen' does.  Record the error, if any, for use by dynlib_error.
13478         (dynlib_sym): Check the handle for validity. Record the error, if
13479         any, for use by dynlib_error.
13480         (dynlib_error): Call w32_strerror to produce the error string, and
13481         zero out the last error code, like dlerror does.
13482         (dynlib_close): Check the handle for validity.  Record the error,
13483         if any, for use by dynlib_error.  Don't call FreeLibrary with a
13484         handle for the main module.
13485         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
13487 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13489         Include-file tweaks for modules
13491         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
13492         * src/dynlib.h: Do not include config.h.
13493         It’s every .c file’s responsibility to include config.h first.
13494         * src/emacs-module.c: Include emacs-module.h immediately after
13495         config.h, to test that emacs-module.h doesn’t depend on
13496         include files other than config.h.
13498 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13500         Simplify push_handler and profile its malloc
13502         * src/lisp.h (PUSH_HANDLER): Remove.
13503         All callers changed to use push_handler directly.
13504         * src/eval.c (internal_condition_case)
13505         (internal_condition_case_1, internal_condition_case_2)
13506         (internal_condition_case_n):
13507         Use same pattern as for other invokers of push_handler.
13508         (push_handler, push_handler_nosignal): Use call-by-value
13509         instead of call-by-reference.  All uses changed.
13510         (push_handler): Simplify by rewriting in terms of
13511         push_handler_nosignal.
13512         (push_handler_nosignal): Profile any newly allocated memory.
13514 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13516         * src/emacs-module.h: Include stddef.h, not stdlib.h.
13518 2015-11-20  Juanma Barranquero  <lekktu@gmail.com>
13520         Discover repository version in linked worktrees (bug#21930)
13522         * lisp/version.el (emacs-repository--version-git-1): Do not assume
13523         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
13524         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
13525         is nil too.
13527 2015-11-20  Juri Linkov  <juri@linkov.net>
13529         * lisp/replace.el (occur-regexp-descr): New function.
13530         (occur-1, occur-engine): Use it.
13532         * lisp/isearch.el (isearch-occur): Propertize regexp with
13533         isearch-string and isearch-regexp-function-descr for
13534         occur-regexp-descr to display the correct description
13535         message in the header (bug#21176, bug#21180).
13537 2015-11-20  Karl Fogel  <kfogel@red-bean.com>
13539         Revert `open-line' electric-indent sensitivity
13541         * lisp/simple.el (open-line): Remove electric indent code.
13542           (electric-indent-just-newline): Don't declare.
13544         * test/automated/simple-test.el (open-line-indent): Adjust test.
13546         This partly reverts Artur Malabarba's change that added electric
13547         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
13548         commit bd4f04f86), and adjusts a new test he added right afterwards
13549         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
13550         However, the new INTERACTIVE argument to `open-line', which he also
13551         added in the first commit, is not reverted here.
13553         See the thread "Questioning the new behavior of `open-line'." on the
13554         Emacs Devel mailing list, and in particular this message:
13556           From: Artur Malabarba
13557           Subject: Re: Questioning the new behavior of `open-line'.
13558           To: Karl Fogel
13559           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
13560           Date: Wed, 18 Nov 2015 21:03:58 +0000
13561           Message-ID: \
13562             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
13564           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
13566 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13568         Omit unnecessary clear in Fmodule_load
13570         * src/emacs-module.c (Fmodule_load):
13571         Simplify and avoid unnecessary initialization of priv member to 0.
13573         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
13575 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13577         Prefer signed integer types in module code
13579         Generally speaking, at the C level the Emacs source code prefers
13580         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
13581         partly to avoid the usual signedness confusion when comparing values.
13582         Change the module API to follow this convention.
13583         Use ‘int’ for small values that can’t exceed INT_MAX.
13584         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
13585         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
13586         (Fmod_test_vector_eq):
13587         * src/emacs-module.c (struct emacs_value_frame)
13588         (module_make_global_ref, module_free_global_ref)
13589         (module_copy_string_contents, module_make_string)
13590         (module_vec_set, module_vec_get, module_vec_size):
13591         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
13592         * src/lread.c (suffix_p):
13593         Prefer signed to unsigned integer types.
13595 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13597         Omit ‘const’ on locals
13599         Remove ‘const’ qualifier from locals that were newly added.
13600         We don’t normally bother declaring locals with ‘const’ even
13601         though they are not modified, for the same reason we don’t
13602         bother declaring them with ‘register’ even though their
13603         addresses are not taken; the advantage in compile-time
13604         checking isn’t worth the loss of readability.
13605         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
13606         (Fmod_test_vector_fill, Fmod_test_vector_eq):
13607         * src/emacs-module.c (MODULE_SETJMP_1)
13608         (module_make_global_ref, module_free_global_ref)
13609         (module_non_local_exit_get, module_make_function)
13610         (module_extract_integer, module_extract_float)
13611         (module_get_user_ptr, module_set_user_ptr)
13612         (module_get_user_finalizer, module_set_user_finalizer)
13613         (module_vec_get, Fmodule_call)
13614         (module_non_local_exit_signal_1)
13615         (module_non_local_exit_throw_1, lisp_to_value)
13616         (finalize_storage, allocate_emacs_value, mark_modules)
13617         (module_handle_signal, module_handle_throw)
13618         (module_format_fun_env):
13619         * src/eval.c (push_handler, push_handler_nosignal)
13620         (init_handler):
13621         * src/lread.c (suffix_p):
13622         Omit unnecessary ‘const’.
13624 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13626         Prefer intmax_t to int64_t in module code
13628         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
13629         * src/emacs-module.c (module_extract_integer)
13630         (module_make_integer):
13631         * src/emacs-module.h (struct emacs_env_25):
13632         Prefer intmax_t to int64_t.  This doesn’t change the generated
13633         code on any of the machines Emacs currently ports to, but it’s
13634         at least in theory more future-proof as C99 doesn’t guarantee
13635         that int64_t exists.
13637 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13639         Rename module.c to emacs-module.c, etc.
13641         * src/emacs-module.c: Rename from src/module.c.
13642         * src/emacs-module.h: Rename from src/module.h.
13643         All uses changed.
13645 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13647         Fix minor module problems found by static checking
13649         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
13650         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
13651         * src/emacs-module.c (Fmodule_load): Fix pointer signedness bug.
13652         (Fmodule_call): Tell GCC that the default case is unreachable.
13654 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13656         Style fixes for indenting etc. in module code
13658         This is mostly indenting and spacing changes.  Also, remove
13659         some unnecessary static decls instead of bothering to reindent them.
13660         * src/emacs-module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
13661         as most other Emacs files do for this sort of thing.
13663 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
13665         Minor improvements in modules testing Makefile
13667         * modules/mod-test/Makefile (EMACS, SO): New variables.
13668         (CFLAGS): When SO = dll, don't use -fPIC.
13669         (check): New target, runs the test.
13671 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
13673         * .gitignore: Add "*.dll".
13675 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13677         Migrate modules/.gitignore into .gitignore
13679         * .gitignore: Add former contents of modules/.gitignore.
13680         * modules/.gitignore: Remove.
13682 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13684         Add copyright notices to module code
13686         Put them in the usual format for GNU Emacs copyright notices.
13688 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
13690         Rename emacs_module.h to module.h
13692         * src/module.h: Rename from src/emacs_module.h.
13693         All uses changed.
13695 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
13697         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
13699         * src/lread.c (Fload): Remove unused variable `size'
13701 2015-11-19  Alan Mackenzie  <acm@muc.de>
13703         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
13705 2015-11-19  Dmitry Gutov  <dgutov@yandex.ru>
13707         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
13709         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
13710         vc-parent-buffer over log-view-mode fallback (bug#21955).
13712 2015-11-18  Alan Mackenzie  <acm@muc.de>
13714         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
13716 2015-11-18  Ken Brown  <kbrown@cornell.edu>
13718         * configure.ac (LIBMODULES): Don’t define on Cygwin
13720 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
13722         Fix MS-Windows build --with-modules
13724         * src/module.c: Reformat copyright commentary.
13725         (module_vec_get): Use explicit cast to size_t to avoid compiler
13726         warning in 32-bit builds.
13727         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
13728         Compare thread IDs directly, as GetThreadId is not available
13729         before Windows Vista.
13730         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
13731         without using APIs and constants not available on XP and older
13732         systems.  Obtain and store the thread ID as well.
13734 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
13735             Philipp Stephani  <phst@google.com>
13737         Add dynamic module test and helper script
13739         Add 'modhelp.py' script (python2) to automate module testing and
13740         module generation.
13742         To build and test all modules in the modules/ dir
13743           $ ./modhelp.py test
13745         To generate a module from template code (good starting point)
13746           $ ./modhelp init mynewtestmodule
13748         See the script -h option for more documentation.
13750         * modules/modhelp.py: New module helper script.
13751         * modules/mod-test/Makefile: New file. Makefile for the test module.
13752         * modules/mod-test/mod-test.c: New file. Test module source file.
13753         * modules/mod-test/test.el: New file. ert test suite for the test module.
13754         * modules/.gitignore: New file. Local .gitignore file.
13756 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
13758         Make 'Fload' look for modules
13760         'Fload' can now load dynamic modules. This also makes 'require' work.
13762         * src/lread.c:
13763           (suffix_p): New function.
13764           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
13765           with a module suffix.
13766           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
13768 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
13769             Philipp Stephani  <phst@google.com>
13771         Add dynamic module module support
13773         * configure.ac: Add '--with-modules' option.  Conditionally add
13774           dynlib.o and module.o to the list of objects.  Add any system
13775           specific flags to the linker flags to support dynamic libraries.
13776         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
13777           attributes.
13778         * src/Makefile.in: Conditionally add module objects and linker flags.
13779         * src/alloc.c (garbage_collect_1): protect module local values from
13780           GC.
13781         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
13782         * src/emacs-module.h: New header file included by modules.  Public
13783           module API.
13784         * src/emacs-module.c: New module implementation file.
13786 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
13788         Add new User Pointer (User_Ptr) type
13790         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
13791         (XUSER_PTR): New User_Ptr accessor.
13792         * src/alloc.c (make_user_ptr): New function.
13793         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
13794         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
13795         (Fuser-ptrp): New user pointer type predicate function.
13796         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
13797         subr.
13798         * src/print.c (print_object): Add printer for User_Ptr type.
13800 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
13801             Philipp Stephani  <phst@google.com>
13803         Add portable layer for dynamic loading
13805         * src/dynlib.h: New file.
13806         * src/dynlib.c: New file.
13808 2015-11-18  Philipp Stephani  <phst@google.com>
13810         Add catch-all & no-signal version of PUSH_HANDLER
13812         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
13813         a new "catch-all" handler type.
13815         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
13816           functions.
13817         * src/fns.c (hash_remove_from_table): Expose function public.
13818         * src/lisp.h: New handler type, define macro to push_handler call.
13820 2015-11-18  Ken Brown  <kbrown@cornell.edu>
13822         Silence byte-compiler warning
13824         * lisp/server.el (server-process-filter): Silence byte-compiler
13825         warning.
13827 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
13829         Quote symbols in docstrings using `'
13831         Be more systematic about quoting symbols `like-this' rather than
13832         `like-this or 'like-this' in docstrings.  This follows up Artur
13833         Malabarba's email in:
13834         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
13836 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
13838         Fix savegames in dunnet
13840         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
13841           of separate implementation.
13843 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
13845         * lisp/emacs-lisp/package.el (package--with-response-buffer):
13847         Ensure we're at the start of the buffer before searching for
13848         the end of headers.
13850 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
13852         * admin/release-process: Improve wording.
13854 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
13856         Backport: * CONTRIBUTE: Remove information about feature freeze.
13858         (cherry picked from commit ae0653b5ab9ee223751ec389b87011963e1cbbef)
13860 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
13862         Backport: Document the release process
13864         * admin/notes/versioning: Add information about RC releases.
13865         * admin/release-process: Document the release process.
13866         * admin/authors.el (authors-ignored-files):
13867         * admin/README: Change FOR-RELEASE to release-process.
13868         * CONTRIBUTE:
13869         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
13871         (cherry picked from commit 9a4aa0f5945a03611ae29c516025dbd353bd26ab)
13873 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
13875         Backport: * admin/release-process: Rename from admin/FOR-RELEASE.
13877         (cherry picked from commit f8cc14b59700e51a4e31139c0a65c8154995e055)
13879 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
13881         Backport: Mention CONTRIBUTE in README
13883         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
13884         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
13885         * README: Mention CONTRIBUTE.
13887         (cherry picked from commit ed2e7e20ae0945288c98091f308f5460c3453873)
13889 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
13891         Fix docstring quoting problems with ‘ '’
13893         Problem reported by Artur Malabarba in:
13894         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
13895         Most of these fixes are to documentation; many involve fixing
13896         longstanding quoting glitches that are independent of the
13897         recent substitute-command-keys changes.  The changes to code are:
13898         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
13899         (describe-mode-local-overload):
13900         Substitute docstrings before displaying them.
13901         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
13902         Quote the generated docstring for later substitution.
13904 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
13906         Improve configure --help text for wide ints
13908         * configure.ac (wide-int): Clarify user-level advantages and
13909         disadvantages.
13911 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
13913         Improve doc string
13915         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
13917 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
13919         eval_sub followed dangling pointer when debugging
13921         Problem reported by Pip Cet (Bug#21245).
13922         This bug could occur in eval_sub if the C compiler reused
13923         storage associated with the ‘argvals’ local after ‘argvals’
13924         went out of scope, and if the Elisp debugger stopped on Elisp
13925         function exit and accessed ‘argvals’.  It could also occur if
13926         a variadic function was called with so many arguments (over
13927         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
13928         SAFE_FREE freed the arguments, then the memory manager used
13929         the storage for other purposes, then the debugger accessed the
13930         arguments.
13931         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
13932         function body.  Simplify local decls.
13933         When allocating args via SAFE_ALLOCA, call
13934         debugger before invoking SAFE_FREE, as the debugger needs
13935         access to the args.
13936         (eval_sub, apply_lambda): Rework to avoid need for
13937         set_backtrace_debug_on_exit hack.  This is cleaner,
13938         and should work better with buggy custom debuggers.
13940 2015-11-17  Daiki Ueno  <ueno@gnu.org>
13942         * lisp/image-mode.el: Support encrypted file
13944         (image-toggle-display-image): Read content from the buffer instead
13945         of the file, if the buffer holds a decrypted data.  (Bug#21870)
13947 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
13949         ELF unexec: align section header
13951         This ports the recent unexelf.c changes to Fedora x86-64
13952         when configured with GCC’s -fsanitize=undefined option.
13953         * src/unexelf.c (unexec): Align new_data2_size to a multiple
13954         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
13955         pointer aligned appropriately for its type.
13957 2015-11-17  Andreas Schwab  <schwab@linux-m68k.org>
13959         Do more checks on bytecode objects (Bug#21929)
13961         * src/eval.c (funcall_lambda): Check size of compiled function
13962         object.
13963         (Ffetch_bytecode): Likewise.
13965 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
13967         pcase.el: Fix edebugging of backquoted cons patterns
13969         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
13970         cons patterns. (Bug#21920)
13972 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
13974         Improve fix for regex reentrancy abort
13976         Suggested by Stefan Monnier (Bug#21688).
13977         * src/syntax.c (update_syntax_table_forward):
13978         Remove recently-added PROPERTIZE arg, and assume it is true.
13979         All callers changed.
13980         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
13981         Invoke update_syntax_table directly.
13983 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
13985         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
13987         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
13989         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
13991 2015-11-16  Vasily Korytov  <vasily.korytov@yahoo.com>
13993         Recognize .rbw and .pyw files (bug#18753)
13995         * lisp/progmodes/python.el (auto-mode-alist):
13996         Recognize .pyw files.
13998         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
13999         Recognize .rbw files.
14001 2015-11-16  Dmitry Gutov  <dgutov@yandex.ru>
14003         Fix ruby-mode auto-mode-alist entry
14005         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
14006         around the extensions (bug#21257).
14008 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
14010         Fix etags completion near eob
14012         * lisp/progmodes/etags.el (tags-completion-at-point-function):
14013         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
14015 2015-11-15  Alan Mackenzie  <acm@muc.de>
14017         De-pessimize detection of C++ member initialization lists.
14019         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
14020         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
14021         is only called when a construct "looks right" rather than continually.
14022         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
14024 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
14026         Backport: * lisp/emacs-lisp/package.el: Fix a decoding issue.
14028         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
14029         `url-insert-buffer-contents'.
14030         (url-insert-buffer-contents): New function
14032         (package--with-response-buffer): Use `url-insert-buffer-contents'.
14033         The previous code had some issues with decoding. Refactoring that
14034         function allows us to use the decoding from url-handlers while still
14035         treating both sync and async requests the same.
14037 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
14039         Improve a few doc strings, comments
14041         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
14042         * lisp/cedet/ede/locate.el (ede-locate-base):
14043         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
14044         * src/fns.c (Fdelq): Improve doc string.
14046         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
14048 2015-11-15  Anders Lindgren  <andlind@gmail.com>
14050         Enhance NSTRACE (trace output for NextStep).
14052         Trace can be disabled for groups of functions. By default, event
14053         functions and functions that generate lots of output are disabled.
14055         Trace output of Objective-C functions now use the "[ClassName
14056         parameter:]" form.
14058         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
14059         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
14060         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
14061         controlling in which function groups trace should be active.
14062         (NSTRACE_WHEN): Support for silencing a function, this also
14063         silencing all called functions.
14064         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
14065         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
14066         print the full screen state in NSTRACE functions.
14068         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
14069         can be accessed from multiple threads.
14070         (nstrace_enabled_global): New variable, when FALSE, trace is
14071         silenced.
14072         (nstrace_restore_global_trace_state): New function, used to
14073         restore `nstrace_enabled_global' at end of block.
14074         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
14075         ([EmacsWindow setFrame:display:animation:])
14076         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
14077         and call corresponding super function.
14078         (Many functions): Add or enhance trace output.
14080         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
14082         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
14084         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
14085         and call corresponding super function.
14087 2015-11-15  Anders Lindgren  <andlind@gmail.com>
14089         Fixed a toolbar related issue on OS X.
14091         Earlier, when toggling the tool-bar in a maximized frame, the
14092         frame size didn't match the number of text lines, leaving an
14093         unused area at the bottom of the frame.
14095         * src/nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
14096         fullscreen modes when tool bar is disabled.
14098 2015-11-15  Anders Lindgren  <andlind@gmail.com>
14100         Fixed OS X 10.6.8 build issue (bug#21862).
14102         * src/nsterm.h (EmacsView): Add missing declarations.
14103         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
14104         the standard method but without the notification parameter.
14105         Intended to be used for direct calls.
14106         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
14107         version of `windowDidBecomeKey'. Made the notification method call
14108         the non-notification method instead of the vice versa.
14109         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
14110         needed.
14112 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
14114         * lisp/faces.el (faces--attribute-at-point): Fix an issue
14116         Previous code would signal an error when the face at point was
14117         a manually built list of attributes such as '(:foregroud "white").
14119         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
14121 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
14123         Fix regex abort when it tries to reenter itself
14125         Problem reported by Ken Raeburn.
14126         Solution suggested by Stefan Monnier (Bug#21688).
14127         * src/regex.c (re_match_2_internal):
14128         Use new _FAST functions to avoid regex code reentering itself.
14129         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
14130         All callers changed.
14131         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
14132         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
14134 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
14136         Improve Ruby 1.9-style keyword keys highlighting
14138         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
14139         Handle required keyword arguments (bug#21367).
14140         And highlight the colon together with the name.
14142 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
14144         Unify the absolutely equal xref-backend-references implementations
14146         * lisp/progmodes/elisp-mode.el (xref-backend-references):
14147         Remove.
14149         * lisp/progmodes/etags.el (xref-backend-references):
14150         Remove.
14152         * lisp/progmodes/xref.el (xref-backend-references):
14153         Define the default implementation.
14155 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
14157         Update project-find-regexp for the new xref API
14159         * lisp/progmodes/project.el (project--read-regexp):
14160         Update to use the new xref API methods.
14162         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
14164 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
14166         Fix replacing a match with a shorter string
14168         In effect, partially reverting fe973fc.
14170         * lisp/progmodes/xref.el (xref-query-replace): Store the end
14171         of each match as a marker again, instead of length.
14172         (xref--query-replace-1): Update accordingly.
14174 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
14176         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
14178         Signal user-errors instead.
14180 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
14182         Document 'describe-symbol'
14184         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
14185         (Name Help): Document "C-h o" and describe-symbol.
14187         * lisp/help-fns.el (describe-symbol): Doc fix.
14189 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
14191         Change test name to avoid spellcheck issue.
14193 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
14195         Avoid signaling an error in 'describe-symbol'
14197         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
14198         exists as a function/variable/face/etc., but is undocumented.
14200         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
14201         test.
14203 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
14205         * INSTALL (--with-cairo): Document this new configure option.
14207 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
14209         Document that GNU Make >= 3.81 is required to build Emacs
14211         * doc/lispref/internals.texi (Building Emacs): Document that GNU
14212         Make 3.81 or later is now required.
14214 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
14216         Backport: * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async.
14218         (package--with-work-buffer-async): Reimplement as
14219         `package--with-response-buffer'.
14220         (package--with-work-buffer): Mark obsolete.
14221         (package--with-response-buffer): New macro. This is a more self
14222         contained and less contrived version of
14223         `package--with-work-buffer-async'.  It uses keyword arguments,
14224         doesn't have async on the name, doesn't fallback on
14225         `package--with-work-buffer', and has _much_ simpler error
14226         handling.  On master, this macro will soon be part of another
14227         library (either standalone or inside url.el), which is why this
14228         commit is not to be merged back.
14230         (package--check-signature, package--download-one-archive)
14231         (package-install-from-archive, describe-package-1): Use it.
14233         (package--download-and-read-archives): Let
14234         `package--download-one-archive' take care of calling
14235         `package--update-downloads-in-progress'.
14237 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
14239         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
14241 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
14243         Merge branch 'master' into emacs-25
14245 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
14247         Use generic dispatch for xref backends
14249         * lisp/progmodes/xref.el (xref-backend-functions):
14250         New variable.
14251         (xref-find-function): Remove.
14252         (xref-find-backend)
14253         (xref--etags-backend): New functions.
14254         (xref-identifier-at-point-function)
14255         (xref-identifier-completion-table-function): Remove.
14256         (xref-backend-definitions, xref-backend-references)
14257         (xref-backend-apropos, xref-backend-identifier-at-point)
14258         (xref-backend-identifier-completion-table):
14259         New generic functions.
14261         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
14262         Add `elisp--xref-backend' to the beginning of
14263         `xref-backend-functions', locally.  Delete references to
14264         removed functions and vars.
14265         (elisp-xref-find): Remove.
14266         (elisp--xref-backend): New function.
14267         (elisp--xref-find-references, elisp--xref-find-apropos)
14268         (elisp--xref-identifier-completion-table):
14269         Turn into appropriately named generic methods.
14271         * lisp/progmodes/etags.el (etags-xref-find): Remove.
14272         (xref-backend-identifier-completion-table)
14273         (xref-backend-references, xref-backend-definitions)
14274         (xref-backend-apropos): New generic methods.
14276 2015-11-14  Juri Linkov  <juri@linkov.net>
14278         Support rectangular regions for more commands
14280         * lisp/simple.el (region-extract-function): Handle the arg
14281         value ‘bounds’.
14282         (region-insert-function): New function.
14283         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
14284         If non-nil, operate on multiple chunks.
14285         (region-noncontiguous-p): New function.
14287         * lisp/rect.el: Add function rectangle--insert-region
14288         around region-insert-function.
14289         (extract-rectangle-bounds): New function.
14290         (rectangle--extract-region): Handle the arg value ‘bounds’.
14291         (rectangle--insert-region): New function.
14293         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
14294         around region-insert-function.
14295         (cua--extract-rectangle-bounds): New function.
14296         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
14298         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
14299         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
14300         (query-replace-regexp-eval, map-query-replace-regexp)
14301         (replace-string, replace-regexp): Use ‘use-region-p’.
14302         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
14303         (perform-replace): Add arg ‘region-noncontiguous-p’.
14304         If non-nil, operate on multiple chunks.
14306         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
14307         If non-nil, operate on multiple chunks.  (Bug#19829)
14309 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
14311         Handle multiple matches on the same line; add highlighting
14313         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
14314         column value in characters.
14315         (xref--collect-matches): Rename from `xref--collect-match'.
14316         Search for all matches in the hit line.  Add `highlight' face to
14317         the matched region in the summary.  Update both callers.
14319 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
14321         Replace xref-match-bounds with xref-match-length
14323         Relying on xref-location-marker to point to the beginning of the match
14325         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
14326         (xref-match-length): Add.
14327         (xref-make-match): Change the arguments.
14328         (xref--match-buffer-bounds): Remove.
14329         (xref-match-item): Store length, instead of end-column.
14330         (xref-pulse-momentarily)
14331         (xref--collect-match)
14332         (xref--query-replace-1): Update accordingly.
14333         (xref-query-replace): Ditto.  And check that the search results
14334         are up-to-date.
14336 2015-11-13  John Wiegley  <johnw@newartisans.com>
14338         Merge remote-tracking branch 'origin/master' into emacs-25
14340 2015-11-13  l3thal  <kwhite@gnu.org>
14342         Merge branch 'erc-async-reconnect' into emacs-25
14344         Reconnect asynchronously.
14346 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14348         Merge from gnulib
14350         This incorporates:
14351         2015-11-13 xalloc-oversized: improve performance with GCC 5
14352         * lib/xalloc-oversized.h: Copy from gnulib.
14354 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14356         Spruce up ftfont.c memory allocation
14358         * src/ftfont.c (setup_otf_gstring):
14359         Avoid O(N**2) behavior when reallocating.
14360         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
14361         reallocating buffers; this simplifies the code.  Do not trust
14362         mflt_run to leave the output areas unchanged on failure, as
14363         this isn’t part of its interface spec.
14365 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14367         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
14369 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14371         Port recent XCB changes to 64-bit ‘long int’
14373         For historical reasons, libX11 represents 32-bit values like Atoms as
14374         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
14375         do that, so adapt the recent XCB code to behave properly on 64-bit
14376         platforms.  Also, fix what appears to be a bug in the interpretation
14377         of xcb_get_property_value_length, at least on my Fedora platform
14378         which is running libxcb-1.11-5.fc21.
14379         * src/xfns.c (x_real_pos_and_offsets):
14380         * src/xterm.c (get_current_wm_state):
14381         xcb_get_property_value_length returns a byte count, not a word count.
14382         For 32-bit quantities, xcb_get_property_value returns a vector
14383         of 32-bit words, not of (possibly 64-bit) long int.
14385         Backport.
14387 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14389         * src/undo.c (run_undoable_change): Now static.
14391         Backport.
14393 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14395         Remove support for ':timeout' from w32 tray notifications
14397         * src/w32fns.c (Fw32_notification_notify): Delete the code that
14398         supports ':timeout'.
14399         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
14400         with dbusbind.c when D-Bus is compiled in.
14402         * doc/lispref/os.texi (Desktop Notifications): Don't mention
14403         ':timeout'.
14405         Backport.
14407 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14409         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
14411         (simple-test--transpositions): New macro.
14412         (simple-transpose-subr): New test.
14414         Backport.
14416 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14418         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
14420         Backport.
14422 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14424         * src/undo.c: Small fixes for previous change
14426         (run_undoable_change): Mark void argument list.
14427         (record_property_change): Remove unused variable `boundary'.
14429         Backport.
14431 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14433         Add a few more variables to redisplay--variables
14435         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
14436         and bidi-display-reordering to the list.
14438         Backport.
14440 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14442         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
14444         Backport.
14446 2015-11-13  Eli Barzilay  <eli@barzilay.org>
14448         Fix point positioning after transposing with negative arg
14450         * lisp/simple.el (transpose-subr): When invoked with a negative
14451         argument, move point to after the transposed text, like we do
14452         when invoked with a positive argument.  (Bug#21885)
14454         Backport.
14456 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14458         Fix last change in shr.el
14460         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
14461         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
14463         Backport.
14465 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14467         Fix last change
14469         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
14470         Don't DEFSYM tray notification symbols if D-Bus is being used.
14472         Backport.
14474 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14476         Another fix for MinGW64 and Cygwin builds due to notifications
14478         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
14479         being compiled into Emacs.
14480         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
14481         Sw32_notification_notify and Sw32_notification_close if the code
14482         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
14484         Backport.
14486 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14488         Remove intern calls and XXX comments from Fx_export_frames
14490         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
14491         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
14492         for consistency with image types.  Remove XXX comments.
14493         (syms_of_xfns) <Qpdf>: DEFSYM it.
14495         Backport.
14497 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14499         Port recent XCB changes to 64-bit ‘long int’
14501         For historical reasons, libX11 represents 32-bit values like Atoms as
14502         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
14503         do that, so adapt the recent XCB code to behave properly on 64-bit
14504         platforms.  Also, fix what appears to be a bug in the interpretation
14505         of xcb_get_property_value_length, at least on my Fedora platform
14506         which is running libxcb-1.11-5.fc21.
14507         * src/xfns.c (x_real_pos_and_offsets):
14508         * src/xterm.c (get_current_wm_state):
14509         xcb_get_property_value_length returns a byte count, not a word count.
14510         For 32-bit quantities, xcb_get_property_value returns a vector
14511         of 32-bit words, not of (possibly 64-bit) long int.
14513 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
14515         * src/undo.c (run_undoable_change): Now static.
14517 2015-11-13  Michael Albinus  <michael.albinus@gmx.de>
14519         Adapt Tramp version, do not merge with master
14521         * doc/misc/trampver.texi (trampver):
14522         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
14524 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14526         Remove support for ':timeout' from w32 tray notifications
14528         * src/w32fns.c (Fw32_notification_notify): Delete the code that
14529         supports ':timeout'.
14530         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
14531         with dbusbind.c when D-Bus is compiled in.
14533         * doc/lispref/os.texi (Desktop Notifications): Don't mention
14534         ':timeout'.
14536 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14538         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
14539         (simple-test--transpositions): New macro.
14540         (simple-transpose-subr): New test.
14542 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14544         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
14546 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
14548         * src/undo.c: Small fixes for previous change
14549         (run_undoable_change): Mark void argument list.
14550         (record_property_change): Remove unused variable `boundary'.
14552 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14554         Add a few more variables to redisplay--variables
14556         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
14557         and bidi-display-reordering to the list.
14559 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14561         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
14563 2015-11-13  Eli Barzilay  <eli@barzilay.org>
14565         Fix point positioning after transposing with negative arg
14567         * lisp/simple.el (transpose-subr): When invoked with a negative
14568         argument, move point to after the transposed text, like we do
14569         when invoked with a positive argument.  (Bug#21885)
14571 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14573         Fix last change in shr.el
14575         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
14576         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
14578 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14580         Fix last change
14582         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
14583         Don't DEFSYM tray notification symbols if D-Bus is being used.
14585 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
14587         Another fix for MinGW64 and Cygwin builds due to notifications
14589         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
14590         being compiled into Emacs.
14591         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
14592         Sw32_notification_notify and Sw32_notification_close if the code
14593         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
14595 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14597         Remove intern calls and XXX comments from Fx_export_frames
14599         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
14600         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
14601         for consistency with image types.  Remove XXX comments.
14602         (syms_of_xfns) <Qpdf>: DEFSYM it.
14604 2015-11-13  Eric Hanchrow  <eric.hanchrow@gmail.com>
14606         shr: don't invoke unbound function (Bug#21895)
14608         * lisp/net/shr.el (have-fringes-p): New function.
14609         (shr-insert-document, shr-fill-text): Use it.
14611 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
14613         * test/automated/keymap-tests.el: Fix test to make it repeatable
14615         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
14616         entry to its initial value to make the test repeatable in interactive
14617         sessions (assuming it doesn't fail and crashes Emacs, of course).
14619 2015-11-13  Artur Malabarba  <bruce.connor.am@gmail.com>
14621         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
14623 2015-11-12  Phillip Lord  <phillip.lord@russet.org.uk>
14625         : Tests for undo-auto functionality.
14627 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
14629         The heuristic that Emacs uses to add an `undo-boundary' has been
14630         reworked, as it interacts poorly with functions on `post-command-hook'
14631         or `after-change-functions'.
14633         * lisp/simple.el: New section added.
14634         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
14635         (self_insert_command): Calls simple.el to amalgamate.
14636         (delete_char): Calls simple.el to amalgamate.
14637         * src/keyboard.c (last_undo_boundary): Removed.
14638         * src/undo.c (run_undoable_change): New function.
14640 2015-11-12  Juri Linkov  <juri@linkov.net>
14642         Bind [?\S-\ ] to previous line command in Dired-like modes.
14644         * lisp/arc-mode.el (archive-mode-map):
14645         * lisp/dired.el (dired-mode-map):
14646         * lisp/proced.el (proced-mode-map):
14647         * lisp/vc/vc-dir.el (vc-dir-mode-map):
14648         Bind [?\S-\ ] to previous line command.
14649         (Bug#20790)
14651 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
14653         Fix the MinGW64 and Cygwin-w32 builds
14655         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
14656         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
14657         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
14658         which cause trouble with MinGW42 headers.  Ifdef away tray
14659         notifications code for Cygwin.  Reported by Andy Moreton
14660         <andrewjmoreton@gmail.com>.
14662 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
14664         Enable sorting of JSON object keys when encoding
14666         * lisp/json.el (json-encoding-object-sort-predicate): New variable
14667         for specifying a sorting predicate for JSON objects during encoding.
14668         (json--plist-to-alist): New utility function.
14669         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
14670         are to be sorted.
14671         (json-encode-alist): Sort output by
14672         `json-encoding-object-sort-predicate, when set.
14673         (json-encode-plist): Re-use `json-encode-alist' when object keys are
14674         to be sorted.
14675         (json-pretty-print-buffer-ordered): New command to pretty print the
14676         buffer with object keys sorted alphabetically.
14677         (json-pretty-print-ordered): New command to pretty print the region
14678         with object keys sorted alphabetically.
14680         * test/automated/json-tests.el (test-json-plist-to-alist)
14681         (test-json-encode-plist, test-json-encode-hash-table)
14682         (test-json-encode-alist-with-sort-predicate)
14683         (test-json-encode-plist-with-sort-predicate): New tests.
14685         * etc/NEWS: Add an entry for the new commands.
14687 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
14689         * test/automated/keymap-tests.el: New test file.
14691 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14693         Speed up x_real_pos_and_offsets using XCB
14695         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
14696         all X calls, and pipeline requests when possible, collecting results
14697         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
14699 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14701         Enable use of XCB for checking window manager state
14703         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
14704         of XGetWindowProperty plus error-catching, since we can explicitly
14705         check for errors in the XCB version.  This eliminates 3 XSync calls on
14706         top of the round-trip actually fetching the information.
14708 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14710         Detect XCB and save a connection handle
14712         * configure.ac: If using X11, check for XCB libraries and header.
14713         * src/Makefile.in (XCB_LIBS): Define.
14714         (LIBX_EXTRA): Include it.
14716         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
14717         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
14718         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
14720 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14722         Reduce some data dependencies between X calls
14724         Gains nothing in the traditional-Xlib code, but more closely aligns
14725         with how the XCB version will work.
14727         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
14728         send coordinates (0,0) to the X server and add in the real coordinates
14729         after getting the response.  Move XGetGeometry for outer window inside
14730         error-trapping block.  Use DPY variable more, since it's available.
14732 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
14734         Use color cache for creating bitmap
14736         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
14737         Set attributes to use the caching color allocator.  Initialize and
14738         free the cache.
14740 2015-11-12  Eli Barzilay  <eli@barzilay.org>
14742         Add "^" to the interactive specs of `dired-next/previous-line'
14744         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
14745         to bind these commands to the arrow keys, and that means that they work
14746         better with a "^" in the `interactive' declaration so selection works
14747         as expected.
14749 2015-11-12  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14751         Sync with soap-client repository, version 3.0.2
14753         * lisp/net/soap-client.el: Bump version to 3.0.2.
14755         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
14757         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
14758         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
14760         * lisp/net/soap-client.el: Support Emacs versions that do not have
14761         define-error.
14763         * lisp/net/soap-inspect.el: Remove version header.
14765         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
14766         format.
14768 2015-11-11  Alan Mackenzie  <acm@muc.de>
14770         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
14772         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
14773         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
14774         (c-guess-basic-syntax):
14775         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
14776         (c-get-fallback-scan-pos): "New" function (existed several years ago).
14777         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
14778         c-get-fallback-scan-pos.
14779         (c-parse-state-1): Handle 'BOD strategy.
14781         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
14782         (c-font-lock-fontify-region): Remove bindings of
14783         open-paren-in-column-0-is-defun-start to nil.
14785         * doc/misc/cc-mode.texi (Performance Issues)
14786         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
14788 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
14790         * lisp/obarray.el: Fix shadowed variables.
14791         (obarray-map, obarray-remove, obarray-put, obarray-get):
14792         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
14794 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
14796         Avoid error in submitting a form with EWW
14798         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
14799         CHUNK to be nil.  (Bug#21881)
14801 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
14803         Rename seq-p and map-p to seqp and mapp
14805         * lisp/emacs-lisp/seq.el (seqp): New name.
14806         * lisp/emacs-lisp/map.el (mapp): New name.
14807         * doc/lispref/sequences.texi: Update the documentation for seqp.
14808         * test/automated/map-tests.el: Update the tests for mapp.
14810 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
14812         Rename obarray-p to obarrayp
14814         * lisp/obarray.el (obarrayp): New name.
14815         * test/automated/obarray-tests.el: Update the tests.
14817 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
14819         Rename obarray-foreach to obarray-map
14821         * lisp/obarray.el (obarray-map): New name.
14822         * test/automated/obarray-tests.el: Update the corresponding tests.
14824 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
14826         New file with obarray functions.
14828         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
14829         * test/automated/obarray-tests.el: New file.
14831 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
14833         Implement tray notifications for MS-Windows
14835         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
14836         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
14837         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
14838         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
14839         (EMACS_NOTIFICATION_MSG): New macros.
14840         (NI_Severity): New enumeration.
14841         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
14842         (delete_tray_notification, Fw32_notification_notify)
14843         (Fw32_notification_close): New functions.
14844         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
14845         keywords used by w32-notification-notify.
14847         * doc/lispref/os.texi (Desktop Notifications): Describe the native
14848         w32 tray notifications.
14850 2015-11-11  Alan Mackenzie  <acm@muc.de>
14852         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
14854         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
14855         Windows" and new @defun selected-window-group.
14856         (Window Start and End): Describe new &optional parameter GROUP and
14857         ...-group-function for window-start, window-end, set-window-start, and
14858         pos-visible-in-window-p.
14859         (Textual Scrolling) Describe the same for recenter.
14860         doc/lispref/positions.texi (Screen Lines): Describe the same for
14861         move-to-window-line.
14863         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
14864         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
14865         new optional parameter "group".  At the beginning of each, check whether the
14866         corresponding ...-group-function is set to a function, and if so execute this
14867         function in place of the normal processing.
14868         (syms_of_window): Define symbols for the six new variables below.
14869         (window-start-group-function, window-end-group-function)
14870         (set-window-start-group-function, recenter-group-function)
14871         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
14872         New permanent local buffer local variables.
14873         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
14874         Fpos_visible_in_window_p.
14876         lisp/window.el (selected-window-group-function): New permanent local buffer
14877         local variable.
14878         (selected-window-group): New function.
14880         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
14881         enable, kill them at mode disable.  Add/remove follow-after-change to/from
14882         after-change-functions.
14883         (follow-start-end-invalid): New variable.
14884         (follow-redisplay): Manipulate follow-start-end-invalid.
14885         (follow-after-change, follow-window-start, follow-window-end)
14886         (follow-set-window-start, follow-pos-visible-in-window-p)
14887         (follow-move-to-window-line, follow-sit-for): New functions.
14889         lisp/isearch.el (isearch-call-message): New macro.
14890         (isearch-update, with-isearch-suspended, isearch-del-char)
14891         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
14892         (with-isearch-suspended): Rearrange code such that isearch-call-message is
14893         invoked before point is moved.
14894         (isearch-message): Add comment about where point must be at function call.
14895         (isearch-search): Remove call to isearch-message.
14896         (isearch-lazy-highlight-window-group): New variable.
14897         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
14898         the battery of tests to ...
14899         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
14900         Note: (sit-for 0) is still called.
14901         (isearch-lazy-highlight-update): Check membership of
14902         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
14903         property.
14904         (isearch-update, isearch-done, isearch-string-out-of-window)
14905         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
14906         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
14907         (isearch-lazy-highlight-update): Call the six amended primitives (see
14908         src/window.c above) with the new `group' argument set to t, to cooperate
14909         with Follow Mode.
14911 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
14913         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
14915         * lisp/net/tramp.el (tramp-handle-file-equal-p)
14916         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
14917         Harvey Chapman <hchapman@3gfp.com>.
14919         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
14920         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
14921         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
14922         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
14924 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
14926         * CONTRIBUTE: Encourage adding tests.
14928         Based on this post from John Wiegley:
14930           From: "John Wiegley" <johnw@newartisans.com>
14931           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
14932           To: Juanma Barranquero <lekktu@gmail.com>
14933           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
14934               emacs-devel <emacs-devel@gnu.org>
14935           Date: Wed, 28 Oct 2015 18:45:29 -0700
14936           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
14938           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
14940 2015-11-10  David Reitter  <david.reitter@gmail.com>
14942         Avoid creating notification objects when possible
14944         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
14945         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
14946         functions that do not require a notification object.  When needed,
14947         define NSWindowDidEnterFullScreenNotification to allow for compilation
14948         on OS X 10.6.8.
14950 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
14952         Move INTEGER_TO_CONS body out of .h file
14954         * src/data.c (INTBIG_TO_LISP): New macro, with most
14955         of the contents of the old INTEGER_TO_CONS.
14956         (intbig_to_lisp, uintbig_to_lisp): New functions.
14957         * src/lisp.h (INTEGER_TO_CONS):
14958         Simplify by using EXPR_SIGNED and the new functions.
14959         This shrinks code size a bit, and makes it easier to
14960         put a breakpoint on handling of large integers.
14962 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
14964         Merge from gnulib
14966         This incorporates:
14967         2015-11-10 intprops: new public macro EXPR_SIGNED
14968         2015-11-10 intprops: fix typo in clang port
14969         * lib/intprops.h: Copy from gnulib.
14971 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
14973         Spelling fixes
14975         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
14976         Fix misspelling in output.
14978 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14980         * doc/lispref/variables.texi (Directory Local Variables):
14981         Document dir-locals wildcards.
14983         * lisp/files.el (dir-locals-file): Point to Info node.
14985         * doc/emacs/custom.texi (Directory Variables):
14986         Document dir-locals wildcards.
14988         * etc/NEWS: Document new functionality.
14990 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14992         * lisp/files.el: Don't allow customization of dir-locals sorting.
14993         In retrospect, this is not a good idea for the same reason that
14994         `dir-locals-file' is a defconst, because it is important that this
14995         behaviour be "uniform across different environments and users".
14996         Sure, the user can still change the sorting with a hack, but we
14997         shouldn't encourage them to change it.
14998         (dir-locals--all-files): Return list in the order returned by
14999         `file-expand-wildcards'.
15000         (file-expand-wildcards): Document the sorting predicate used.
15001         (dir-locals-sort-predicate): Delete variable.
15003 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
15005         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
15007         * lisp/isearch.el (search-default-regexp-mode): Change default value.
15009 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
15011         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
15012         `locate-dominating-file' will now keep looking if the files it finds in
15013         a given directory are unreadable (or not files).
15015 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
15017         * lisp/files.el (dir-locals-file): Allow wildcards.
15018         (dir-locals-find-file, dir-locals-collect-variables)
15019         (dir-locals-read-from-file): Update accordingly.
15020         (hack-dir-local-variables): Rename a local variable.
15022         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
15024         * lisp/help-fns.el (describe-variable): Update accordingly.
15026         * .gitignore: Add .dir-locals?.el.
15028 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
15030         * lisp/emacs-lisp/map.el (map-merge-with): New function.
15032         * test/automated/map-tests.el (test-map-merge-with): New test.
15034 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
15036         Fix some recently-perturbed bookmark autoloads
15038         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
15039         (bookmark-set): Restore autoload.
15040         (bookmark-set-no-overwrite): Add autoload.
15042         Thanks to Juanma Barranquero for noticing the autoload problems
15043         introduced by my recent commit adding/changing the above functions
15044         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
15046 2015-11-09  Noah Friedman  <friedman@splode.com>
15048         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
15049         the start of buffer.  I don't recall if older versions of gdb were
15050         less strict but you cannot dump a 0-length range in gdb 7.9.1.
15052 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
15054         * lisp/progmodes/project.el: Update Commentary.
15056         Merge branch 'project-next'
15058 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
15060         Fold `project-ask-user' into `project-current'
15062         * lisp/progmodes/project.el (project-find-functions): Remove
15063         `project-ask-user'.
15064         (project-ask-user): Remove function and the corresponding
15065         `project-roots' implementation.
15066         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
15067         user in case there's no project in the current directory.  Update
15068         all callers.
15070 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
15072         When VC detects a conflict, specify which file
15074         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
15075         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
15076         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
15077         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
15078         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
15079           to display a standard message that specifies the conflicted file.
15081         Before this change, the message VC used for indicating a conflicted
15082         file was just "There are unresolved conflicts in this file" without
15083         naming the file (and this language was duplicated in several places).
15084         After this change, it's "There are unresolved conflicts in file FOO"
15085         (and this language is now centralized in one function in vc.el).
15087         Justification: It's important for the message to name the conflicted
15088         file because the moment when VC realizes a file is conflicted does not
15089         always come interactively.  For example, some people automatically
15090         find a set of Org Mode files on startup, and may keep those .org files
15091         under version control.  If any of the files are conflicted, the user
15092         just sees some messages fly by, and might later check the "*Messages*"
15093         buffer to find out what files were conflicted.  I'm not saying this
15094         happened to me or anything; it's a purely hypothetical example.
15096 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
15098         Fix assertion violation in define-key
15100         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
15101         objects.  Reported by Drew Adams <drew.adams@oracle.com>
15102         and Juanma Barranquero <lekktu@gmail.com>.
15104 2015-11-09  Dima Kogan  <dima@secretsauce.net>
15106         Fix a memory leak in GC of font cache
15108         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
15109         entities if some of the fonts it references are marked.  This
15110         plugs a memory leak.  (Bug#21556)
15112 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
15114         Use INT_ADD_WRAPV etc. to check integer overflow
15116         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
15117         * src/buffer.c (record_overlay_string, overlay_strings):
15118         * src/casefiddle.c (casify_object):
15119         * src/ccl.c (Fccl_execute_on_string):
15120         * src/character.c (char_width, c_string_width, lisp_string_width)
15121         (count_size_as_multibyte, string_escape_byte8):
15122         * src/coding.c (coding_alloc_by_realloc, produce_chars):
15123         * src/data.c (arith_driver):
15124         * src/dispnew.c (realloc_glyph_pool, init_display):
15125         * src/editfns.c (styled_format):
15126         * src/fns.c (Ffillarray):
15127         * src/ftfont.c (ftfont_shape_by_flt):
15128         * src/gnutls.c (gnutls_hex_string):
15129         * src/gtkutil.c (get_utf8_string):
15130         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
15131         * src/keymap.c (Fkey_description):
15132         * src/lisp.h (SAFE_ALLOCA_LISP):
15133         * src/term.c (encode_terminal_code):
15134         * src/tparam.c (tparam1):
15135         * src/xselect.c (x_property_data_to_lisp):
15136         * src/xsmfns.c (smc_save_yourself_CB):
15137         * src/xterm.c (x_term_init):
15138         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
15139         more-complicated code involving division and/or
15140         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
15141         subtraction and/or INT_ADD_OVERFLOW.
15142         * src/casefiddle.c (casify_object): Simplify multibyte size check.
15143         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
15144         * src/data.c (arith_driver): Also check for division overflow,
15145         as that’s now possible given that the accumulator can now contain
15146         any Emacs integer.
15147         * src/lisp.h (lisp_word_count): Remove; no longer used.
15149 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
15151         Make sure that the ignore file exists
15153         * lisp/vc/vc.el (vc-default-ignore-completion-table):
15154         Make sure that the ignore file exists.
15156 2015-11-09  Michael Sperber  <mike@xemacs.org>
15158         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
15159         `gnus-summary-delete-article` in a way that also works on XEmacs.
15161 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
15163         Add support for retrieving paths to JSON elements
15165         Add support for retrieving the path to a JSON element. This can for
15166         instance be useful to retrieve paths in deeply nested JSON
15167         structures.
15169         * lisp/json.el (json-pre-element-read-function)
15170         (json-post-element-read-function): New variables to hold pre- and post
15171         read callback functions for `json-read-array' and `json-read-object'.
15172         (json--path): New variable used internally by `json-path-to-position'.
15173         (json--record-path, json--check-position): New functions used
15174         internally by `json-path-to-position'.
15175         (json-path-to-position): New function for retrieving the path to a
15176         JSON element at a given position.
15177         (json-read-object, json-read-array): Call
15178         `json-pre-element-read-function' and `json-post-element-read-function'
15179         when set.
15181         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
15182         (test-json-path-to-position-with-arrays)
15183         (test-json-path-to-position-no-match): New tests for
15184         `json-path-to-position'.
15186 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
15188         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
15190         This really should been part of my previous commit
15191         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
15193 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
15195         Offer non-overwrite bookmark setter (Bug#15746)
15197         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
15198         what `bookmark-set' used to do, but with more choices for overwrite
15199         vs push, and with minor changes to the interactive prompt format.
15200         (bookmark-set): Rewrite as wrapper around above.
15201         If overwriting, inform the user of that in the prompt.
15202         (bookmark-set-no-overwrite): New function, also done as wrapper.
15203         Bind to "M" in `ctl-x-r-map' autoloads.
15204         (bookmark-map): Similarly bind "M" here.
15206 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
15208         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
15210 2015-11-08  Alan Modra  <amodra@gmail.com>
15212         ELF unexec: Don't insert a new section
15214         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
15215         don't need to mess with symbol st_shndx, or section sh_link and
15216         sh_info.
15218         This does lead to eu-elflint complaints about symbols defined in .bss
15219         with a needed version, because normally it is undefined symbols that
15220         have needed versions;  Defined symbols have version definitions.
15221         The exception is symbols defined by the linker in .dynbss for
15222         variables copied from a shared library in order to avoid text
15223         relocations, with copy relocs to copy their initial values from the
15224         shared library.  These symbols are both defined and have needed
15225         versions, and eu-elflink only expects to see them in SHT_NOBITS
15226         sections.  Of course there is no real problem with having such symbols
15227         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
15229         * src/unexelf.c: Delete outdated comments.
15230         (PATCH_INDEX): Delete.
15231         (find_section): Delete.
15232         (unexec): Don't add a new section.  Instead reuse the last bss
15233         section, extending it to cover dumped data.  Make bss sections
15234         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
15235         st_shndx.  Rename bss sections.
15237 2015-11-08  Alan Modra  <amodra@gmail.com>
15239         ELF unexec: Drive from PT_LOAD header rather than sections
15241         This rewrites bss handling in the ELF unexec code.  Finding bss
15242         sections by name results in complicated code that
15243         - does not account for all names of possible bss sections,
15244         - assumes specific ordering of bss sections,
15245         - can wrongly choose a SHT_NOBITS section not in the bss segment,
15246         - incorrectly calculates bss size (no accounting for alignment gaps),
15247         - assumes .data and .bss are in the same segment.
15249         All of these problems and more are solved by finding the bss segment
15250         in PT_LOAD headers, ie. the address range included in p_memsz but not
15251         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
15252         in that address range.
15254         * src/unexelf.c: Delete old ppc comment.
15255         (OLD_PROGRAM_H): Define.
15256         (round_up): Delete.
15257         (unexec): Don't search for bss style sections by name.  Instead,
15258         use the last PT_LOAD header address range covered by p_memsz
15259         but not p_filesz and match any SHT_NOBITS section in that
15260         address range.  Simplify initialization of section header vars.
15261         Don't assume that section headers are above bss segment.  Move
15262         copying of bss area out of section loop.  Align .data2 section
15263         to 1, since it now covers the entire bss area.  For SHT_NOBITS
15264         sections in the bss segment, leave sh_addr and sh_addralign
15265         unchanged, but correct sh_offset.  Clear memory corresponding
15266         to SHT_NOBITS .plt section.  Delete comment and hacks for
15267         sections partly overlapping bss range now that the full range
15268         is properly calculated.  Delete now dead .sbss code.
15269         (Bug#20614)
15271 2015-11-08  Alan Modra  <amodra@gmail.com>
15273         ELF unexec: R_*_NONE relocs
15275         These should be ignored on all targets.
15277         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
15278         not just Alpha.  Comment on reloc size assumption.
15280 2015-11-08  Alan Modra  <amodra@gmail.com>
15282         ELF unexec: _OBJC_ symbols in bss sections
15284         This code assumed that there was only one bss section.  Rather than
15285         checking for a particular index, check the section type.  Also, handle
15286         the possibility that the section was SHT_NOBITS originally and is
15287         unchanged, in which case no clearing is needed (and sh_offset isn't
15288         necessarily valid, which can lead to a wild memset).
15290         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
15291         bss sections.
15293 2015-11-08  Alan Modra  <amodra@gmail.com>
15295         ELF unexec: Symbol table patching
15297         No st_shndx value larger than SHN_LORESERVE should be changed.
15298         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
15299         SHN_LORESERVE.  Error on SHN_XINDEX.
15301 2015-11-08  Alan Modra  <amodra@gmail.com>
15303         ELF unexec: Merge Alpha and MIPS COFF debug handling
15305         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
15306         Don't find .mdebug section index, find the section in the loop.
15307         Allow for unlikely possibility that .mdebug is located at sh_offset
15308         before bss segment, by calculating move from difference in
15309         sh_offset rather than just assuming new_data2_size.  Simplify
15310         cbLineOffset handling.
15312 2015-11-08  Alan Modra  <amodra@gmail.com>
15314         ELF unexec: Tidy code
15316         Separate out some of the more mechanical changes so following patches
15317         are smaller.
15319         * src/unexelf.c (unexec): Rearrange initialization of program
15320         header vars.  Use pointer vars in loops rather than indexing
15321         section header array via macros.  Simplify _OBJC_ sym code
15322         and reloc handling code.
15324 2015-11-08  Alan Modra  <amodra@gmail.com>
15326         ELF unexec: Correct section header index
15328         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
15329         it should have been using "NEW_SECTION_H (nn)" to find the name of the
15330         section currently being processed.  Of course, before the bss
15331         sections, n and nn have the same value, so this doesn't matter except
15332         in the case of .sbss.  For .sbss this probably meant .bss (most likely
15333         the next section) was copied from memory.  A later patch removes the
15334         bogus .sbss handling anyway.
15336         * src/unexelf.c (unexec): Use correct index to look up names.
15338 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
15340         Fix Bug#21841
15342         * lisp/filenotify.el (file-notify--rm-descriptor):
15343         Use `descriptor' instead of computing its value.
15344         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
15345         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
15346         (Bug#21841)
15348 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
15350         Remove dirs in vc project roots from the the vc project library roots
15352         * lisp/progmodes/project.el (project-library-roots):
15353         Remove directories inside the project roots from the result.
15354         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
15356 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
15358         Move and rename xref-find-regexp to the project package
15360         * lisp/progmodes/project.el (project-find-regexp)
15361         (project--read-regexp)
15362         (project--find-regexp-in): New functions.
15364         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
15365         xref--show-xrefs.  Use in existing callers in place of that
15366         function.
15367         (xref--show-xrefs): Only do the "show" part.
15368         (xref-find-regexp): Rename, more or less, to
15369         project-or-libraries-find-regexp.
15371 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
15373         Abolish temporary buffer management for xref
15375         * lisp/progmodes/xref.el (xref--temporary-buffers)
15376         (xref--current)
15377         (xref--inhibit-mark-current)
15378         (xref--mark-selected): Remove.  Remove all references.
15379         (xref--show-xrefs): Do not construct the
15380         list of the temporary buffers, nor pass it along.
15382 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
15384         Rename "search path" to "library roots"
15386         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
15387         of the elements from CL-LIST1.
15389         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
15390         Update WRT to the above change.
15392         * lisp/progmodes/project.el (project-search-path-function): Rename
15393         to project-library-roots-function, update the documentation and
15394         references.
15395         (project-search-path): Likewise, to project-library-roots.
15396         (project-roots): Clarify documentation.
15397         (project-vc-search-path): Likewise, to project-vc-library-roots.
15398         (project-library-roots): In addition to the renames, thread the
15399         results through file-name-as-directory.
15400         (project-prune-directories): Accept a variable number of
15401         arguments.  Rename to project-combine-directories.
15402         (project-subtract-directories): New function.
15404         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
15405         Append project-roots and project-library-roots together.
15407         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
15409 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
15411         Prefer xpalloc to doubling buffers by hand
15413         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
15414         (read1): Use it for simplicity.
15415         * src/macros.c (store_kbd_macro_char):
15416         * src/minibuf.c (read_minibuf_noninteractive):
15417         * src/term.c (encode_terminal_code):
15418         * src/xrdb.c (magic_db):
15419         Prefer xpalloc to growing buffers by hand.
15420         This doesn’t fix any bugs, but simplifies the code a bit.
15422 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
15424         Merge from gnulib
15426         This incorporates:
15427         2015-11-05 timespec-sub: fix overflow bug; add tests
15428         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
15429         2015-11-03 intprops: add parentheses
15430         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
15431         Copy from gnulib.
15433 2015-11-07  David Reitter  <david.reitter@gmail.com>
15435         Provide NS notification objects where required to eliminate warnings
15437         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
15438         Call notification functions with notification objects
15439         as per delegate APIs.
15441 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
15443         Add test for bug #21824
15445         * test/automated/buffer-tests.el: New file.
15446         (overlay-modification-hooks-message-other-buf): New test.
15448 2015-11-07  Kelvin White  <kwhite@gnu.org>
15450         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
15452 2015-11-07  David Reitter  <david.reitter@gmail.com>
15454         Ignore fullscreen exit notifications on NS when frame is dead
15456         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
15457         (windowDidExitFullScreen:): Return if frame is dead.
15458         These functions may be called when a fullscreen frame
15459         is closed; they are called before, not after.
15461         May address Bug#21428.
15463 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
15465         Speed up lookup in redisplay--variables
15467         * lisp/frame.el (redisplay--variables): Make it a hash-table.
15469         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
15470         as a hash-table.  This speeds up this function by an order of
15471         magnitude: where previously a setq was slowed down by 100% by
15472         introducing the maybe_set_redisplay test, it is now only 5%
15473         slower.
15474         (syms_of_xdisp) <redisplay--variables>: Doc fix.
15476 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
15478         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
15480         The defsubst was being created as:
15481             (cl-defsubst name (args) ("DOC") ...)
15483         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
15484         Add test.
15486 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
15488         Update doc string of hexl-mode
15490         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
15492 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
15494         Fix error in copy-abbrev-table
15496         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
15497         property of the abbrev-table.  (Bug#21828)
15499         * test/automated/abbrev-tests.el: New file.
15501 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
15503         Add test to auto-revert-tests.el for Bug#21841
15505         * test/automated/auto-revert-tests.el
15506         (auto-revert-test01-auto-revert-several-files): New test.
15507         (auto-revert-test02-auto-revert-tail-mode)
15508         (auto-revert-test03-auto-revert-mode-dired): Rename them.
15510 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
15512         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
15514 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
15516         In x_consider_frame_title don't set title of tooltip frames
15518         * src/xdisp.c (x_consider_frame_title): Return immediately for
15519         tooltip frames to avoid displaying empty tooltips.
15521 2015-11-06  Anders Lindgren  <andlind@gmail.com>
15523         Fixed NextStep fullscreen problem (bug#21770).
15525         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
15526         fullscreen frames.
15528 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
15530         Ensure redisplay after evaluation
15532         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
15533         Revert last change.
15534         * lisp/frame.el (redisplay--variables): Populate the
15535         redisplay--variables list.
15536         * src/xdisp.c (maybe_set_redisplay): New function.
15537         (syms_of_xdisp) <redisplay--variables>: New variable.
15538         * src/window.h (maybe_set_redisplay): Declare prototype.
15539         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
15541 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
15543         * test/automated/subr-tests.el (subr-test-when): Fix again.
15545 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
15547         Don't invoke overlay modification hooks in wrong buffer
15549         * src/buffer.c (report_overlay_modification): When called with
15550         AFTER non-zero, don't invoke overlay modification hooks if the
15551         buffer recorded in last_overlay_modification_hooks is different
15552         from the current buffer.  (Bug#21824)
15554 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
15556         * admin/notes/repo: Fix a few obsolete references to Bazaar.
15558 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
15560         * test/automated/subr-tests.el (subr-test-when): Fix test.
15562 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
15564         Avoid division by zero crash observed by Yuan MEI
15566         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
15568         * src/dispnew.c (required_matrix_height, required_matrix_width):
15569         Avoid division by zero.
15570         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
15571         dpyinfo->smallest_char_width to 1.
15573 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
15575         Ensure redisplay after "C-x C-e"
15577         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
15578         redisplay happens to account for any side effects of the evaluated
15579         sexp.  (Bug#21835)
15581 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
15583         Skip some file notification tests for cygwin
15585         * test/automated/file-notify-tests.el (file-notify--test-with-events):
15586         Remove argument TIMEOUT.  Adapt all callees.
15587         (file-notify-test02-events, file-notify-test04-file-validity):
15588         Skip for cygwin.  (Bug#21804)
15590 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
15592         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
15594 2015-11-05  Daiki Ueno  <ueno@gnu.org>
15596         Suppress redundant Pinentry startup messages
15598         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
15599         * lisp/epg.el: Declare `pinentry-start'.
15600         (epg--start): Call `pinentry-start' with QUIET argument set.
15602 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
15604         * doc/emacs/ack.texi (Acknowledgments): Updates.
15606 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
15608         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
15609         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
15611 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
15613         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
15614         Add prettification support for \times.
15616 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
15618         * test/automated/process-tests.el: Skip tests when bash is unavailable.
15619         (process-test-sentinel-accept-process-output)
15620         (process-test-sentinel-sit-for): skip-unless bash executable found.
15622 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
15624         Add test for bug #21831
15626         * test/automated/process-tests.el
15627         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
15628         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
15630 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
15632         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
15634         (eieio--generic-static-object-generalizer): Fix typo.
15635         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
15636         like the underlying cause of bug#17852 was fixed in the mean time.
15638 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
15640         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
15642         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
15643         It breaks bootstrapping (duh).
15645 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
15647         * lisp/files.el (report-errors): Obsolete.
15649         (normal-mode, hack-local-variables, dir-locals-find-file):
15650         Use `with-demoted-errors' instead.
15652 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
15654         * lisp/subr.el (when): Use `macroexp-progn'.
15656         * test/automated/subr-tests.el (subr-test-when): New test.
15658 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
15660         * lisp/progmodes/xref.el: Doc fixes.
15661         (xref-make-file-location, xref-make-buffer-location, xref-make)
15662         (xref-make-bogus-location, xref-make-match): Add cross-references.
15663         (xref--insert-xrefs): Fix typo in docstring.
15665 2015-11-04  Anders Lindgren  <andlind@gmail.com>
15667         Render fringe bitmaps correctly on NextStep (bug#21301)
15669         The fringe bitmaps were inverted, the background was not transparent,
15670         the image data was horizontally mirrored, and periodic fringe bitmaps
15671         were not supported.
15673         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
15674         When both background and foreground colors are 0, set the background
15675         alpha channel to 0 (making the background transparent).  When
15676         copying the image data, do this from the most significant bit
15677         (leftmost) to the least (rightmost), to avoid mirroring.
15678         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
15679         Add support for periodic images (e.g. the empty line indicator).
15681 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
15683         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
15685 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
15687         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
15689         * admin/MAINTAINERS: Add thunk.el.
15691 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
15693         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
15695 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
15697         Fix a stupid error in gfilenotify.c
15699         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
15700         if we've got a `deleted' signal AND the file name is the watched one.
15702 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
15704         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
15706         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
15707         Use case-insensitive string compare for file names.
15708         (emacs-test-dir): Add 'downcase' to cause case differences (at
15709         least on my system).
15711 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
15713         flymake-tests.el (warning-predicate-rx-gcc): Fix check
15715         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
15716         Also check that "make" is available, not just "gcc".
15718 2015-11-02  Ken Brown  <kbrown@cornell.edu>
15720         Document behavior of collation on Cygwin
15722         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
15723         expected failure on Cygwin.
15724         * doc/lispref/strings.texi (Text Comparison): Document that
15725         punctuation and whitespace are not ignored for sorting on Cygwin.
15727 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
15729         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
15731 2015-11-01  Glenn Morris  <rgm@gnu.org>
15733         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
15734         (Bug#21794)
15735         * test/automated/f90.el (f90-test-bug21794): New test.
15737 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
15739         Fix incompatibility with TCC in test for bug#18745
15741         * test/automated/process-tests.el (process-test-quoted-batfile):
15742         Remove spaces unrelated to the bug being tested.
15744 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
15746         Improve completion in tramp-gvfs.el
15748         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
15749         Rename from `tramp-zeroconf-parse-service-device-names'.
15750         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
15751         with `tramp-zeroconf-parse-device-names'.
15752         (tramp-gvfs-parse-device-names): New defun.
15753         (top): Use it when `tramp-zeroconf-parse-device-names' is not
15754         applicable.
15756         * lisp/net/tramp.el (tramp-set-completion-function): The argument
15757         could also be a zeroconf service type.
15759 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15761         * lisp/net/ntlm.el: Change version to 2.0.0.
15763 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
15765         Fix bug#21762
15766         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
15767         `eql' instead of `=' to accommodate the case that (syntax-after (point))
15768         returns nil.
15769         * test/automated/python-tests.el (python-indent-inside-paren-7):
15770         New test.
15772 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
15774         * test/automated/python-tests.el: Avoid warnings.
15775         (python-tests-with-temp-buffer, python-tests-with-temp-file):
15776         Bind `python-indent-guess-indent-offset' to nil.
15778 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
15780         * src/alloc.c: Silence compiler warnings.
15781         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
15783 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
15785         * etc/NEWS: Fix js-jsx-mode entry punctuation.
15787 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
15789         Add JSX indentation via js-jsx-mode  (Bug#21799)
15791         * lisp/progmodes/js.el: Add JSX indentation support.
15792         (js--jsx-end-tag-re)
15793         (js--jsx-after-tag-re): New variables.
15794         (js--jsx-find-before-tag)
15795         (js--jsx-indented-element-p)
15796         (js--as-sgml)
15797         (js--expression-in-sgml-indent-line)
15798         (js-jsx-indent-line)
15799         (js-jsx-mode): New functions.
15800         * test/indent/js-jsx.js: New file.
15801         * etc/NEWS: Add information about js-jsx-mode.
15803 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
15805         Minor fix in filenotify.el
15807         * lisp/filenotify.el (file-notify--event-file-name)
15808         (file-notify--event-file1-name): Normalize result with
15809         `directory-file-name'.
15811 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
15813         Avoid errors in redisplay--pre-redisplay-functions
15815         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
15816         use 'bobp', instead compare window-point with 1.  (Bug#21730)
15818 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
15820         Merge from gnulib
15822         This incorporates:
15823         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
15824         2015-10-25 stdalign: port to Sun C 5.9
15825         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
15826         Copy from gnulib.
15828 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
15830         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
15831         (w32_compare_strings): Adjust for the correction.
15833 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
15835         * test/automated/vc-tests.el (vc-test--state)
15836         (vc-test--working-revision, vc-test--checkout-model):
15837         Add result messages.
15839 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15841         * test/automated/faces-tests.el: Add another test
15843 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15845         * lisp/faces.el (faces--attribute-at-point): Fix bug
15846         introduced by previous commit.
15848 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15850         * test/automated/faces-tests.el: New file.
15852 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15854         * lisp/faces.el: Refactor common code and fix a bug.
15855         (faces--attribute-at-point): New function.  Fix a bug when the
15856         face at point is a list of faces and the desired attribute is not
15857         on the first one.
15858         (foreground-color-at-point, background-color-at-point): Use it.
15860 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
15862         * etc/tutorials/TUTORIAL.translators: Fix PL names.
15864 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
15866         * lisp/character-fold.el: Provide `character-fold'.
15868 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
15870         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
15871         for Gnus and ivy.
15873 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
15875         Some minor fixes for tramp-gvfs.el
15877         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
15878         An attribute returned by gvfs-info might be empty.  In case of
15879         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
15880         (tramp-zeroconf-parse-service-device-names): New defun.
15881         Derived from `tramp-zeroconf-parse-workstation-device-names'.
15882         (top): Add completion functions for "afp" and "smb" methods.
15884 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15886         * test/automated/character-fold-tests.el: New file
15888 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15890         * test/automated/sort-tests.el: New file.
15891         Tests in this file are randomly generated and then tested with
15892         regular, reverse, and case-fold sorting.
15894 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
15896         Describe known problems with pinning Emacs to taskbar
15898         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
15899         on Windows 10.  For the details, see the discussion starting at
15900         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
15902 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15904         * lisp/isearch.el: Avoid an error that blocks isearch.
15905         (isearch-update): Don't error if `isearch--current-buffer' has
15906         been killed.
15908         * test/automated/isearch-tests.el (isearch--test-update):
15909         New file.
15911 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
15913         Fix documentation of 'beginning/end-of-buffer'
15915         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
15916         conditions under which the mark will be pushed at the previous
15917         position.  (Bug#21748)
15919 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
15921         Add RefTeX feature idea: editing RefTeX TOC buffers
15923         More face defs for ivy, swiper, ace-window, eshell
15925 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15927         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
15928         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
15929         just VAR.
15930         (auth-source-backend-parse): Use make-instance.
15931         (auth-source-search): Remove unused key args.
15932         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
15933         (auth-source-search-backends): Use slot names rather than their initarg.
15934         (auth-source-netrc-create):
15935         (auth-source-delete):
15936         (auth-source-secrets-create, auth-source-plstore-search)
15937         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
15938         (auth-source-plstore-create, auth-source-netrc-search)
15939         (auth-source-netrc-parse): Remove unused key args.
15940         (auth-source-forget+): Simplify the arglist.
15941         (auth-source-macos-keychain-search-items)
15942         (auth-source-token-passphrase-callback-function): Mark unused args.
15943         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
15944         (pp-escape-newlines): Declare.
15945         (auto-source--symbol-keyword): New function.
15946         (auth-source-plstore-create, auth-source-netrc-create)
15947         (auth-source-netrc-normalize): Use it.
15948         (auth-source-netrc-search): Don't pass :delete to
15949         auth-source-netrc-parse since it doesn't use it.
15950         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
15951         symbol-value to index in keyword args.
15952         (auth-source-macos-keychain-result-append): Avoid setq.
15953         (auth-source-netrc-create): Remove unused vars `file' and `add'.
15954         (auth-source-user-or-password): Remove unused var `cname'.
15956 2015-10-29  Juri Linkov  <juri@linkov.net>
15958         * lisp/dired.el (dired-unmark-all-files-query): Declare.
15959         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
15960         (Bug#21746)
15962 2015-10-29  Juri Linkov  <juri@linkov.net>
15964         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
15965         to go to the beginning of text line instead of command line.
15966         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
15968 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
15970         Fix encoding of saving *Help* buffers
15972         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
15973         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
15975 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15977         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
15978         (cl--generic-derived-specializers): New function.
15979         (cl--generic-derived-generalizer): New generalizer.
15980         (cl-generic-generalizers): New specializer (derived-mode MODE).
15981         (cl--generic-split-args): Apply the rewriter, if any.
15982         (cl-generic-define-context-rewriter): New macro.
15983         (major-mode): Use it to define a new context-rewriter, so we can write
15984         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
15986         * lisp/frame.el (window-system): New context-rewriter so we can write
15987         `(window-system VAL)' instead of (window-system (eql VAL)).
15988         (cl--generic-split-args): Apply the rewriter, if any.
15989         (frame-creation-function): Use the new syntax.
15991         * lisp/term/x-win.el (window-system-initialization)
15992         (handle-args-function, frame-creation-function)
15993         (gui-backend-set-selection, gui-backend-selection-owner-p)
15994         (gui-backend-selection-exists-p, gui-backend-get-selection):
15995         * lisp/term/w32-win.el (window-system-initialization)
15996         (handle-args-function, frame-creation-function)
15997         (gui-backend-set-selection, gui-backend-get-selection)
15998         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
15999         * lisp/term/pc-win.el (gui-backend-get-selection)
16000         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
16001         (gui-backend-set-selection, window-system-initialization)
16002         (frame-creation-function, handle-args-function):
16003         * lisp/term/ns-win.el (window-system-initialization)
16004         (handle-args-function, frame-creation-function)
16005         (gui-backend-set-selection, gui-backend-selection-exists-p)
16006         (gui-backend-get-selection):
16007         * lisp/startup.el (handle-args-function):
16008         * lisp/term/xterm.el (gui-backend-get-selection)
16009         (gui-backend-set-selection): Use the new syntax.
16011 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
16013         * test/indent/css-mode.css: Add tests for url(...) syntax.
16015 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
16017         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
16018         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
16019         (smie-prec2->grammar): Use `declare'.
16021 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
16023         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
16024         (cl--generic-generalizer): Add `name' field.
16025         (cl-generic-make-generalizer): Add corresponding `name' argument.
16026         (cl-generic-define-generalizer): New macro.
16027         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
16028         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
16029         (cl--generic-t-generalizer): Use it.
16030         (cl-generic-ensure-function): Add `noerror' argument.
16031         (cl-generic-define): Use it so we don't follow aliases.
16032         (cl-generic-define-method): Preserve pre-existing ordering of methods.
16033         (cl--generic-arg-specializer): New function.
16034         (cl--generic-cache-miss): Use it.
16035         (cl-generic-generalizers): Only fset a temporary definition
16036         during bootstrap.
16037         (cl--generic-struct-tag, cl--generic-struct-specializers):
16038         Allow extra arguments.
16040         * lisp/emacs-lisp/eieio-compat.el
16041         (eieio--generic-static-symbol-generalizer)
16042         (eieio--generic-static-object-generalizer):
16043         Use cl-generic-define-generalizer.
16044         (eieio--generic-static-symbol-specializers): Allow extra arguments.
16046         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
16047         (eieio--generic-subclass-generalizer):
16048         Use cl-generic-define-generalizer.
16049         (eieio--generic-subclass-specializers): Allow extra arguments.
16051 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
16053         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
16055 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
16057         Add "afp" method to Tramp
16059         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
16061         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
16062         (tramp-gvfs-handle-expand-file-name)
16063         (tramp-gvfs-handler-mounted-unmounted)
16064         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
16065         (tramp-gvfs-maybe-open-connection): Support also "afp".
16066         (tramp-gvfs-handle-file-attributes): Handle the case of empty
16067         "owner::user" and "owner::group" entries.
16069 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
16071         Handle negative coordinates in ‘x_calc_absolute_position’
16073         * src/w32term.c (x_calc_absolute_position): Find display origin to
16074         allow for negative coordinates.
16076 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
16078         (internal--syntax-propertize): Save match-data here (bug#21766)
16080         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
16081         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
16083 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
16085         Don't require default-directory to end with a slash
16087         * doc/lispref/files.texi (Magic File Names): Document the change
16088         in unhandled-file-name-directory.
16090         * lisp/url/url-handlers.el
16091         (url-handler-unhandled-file-name-directory): Update accordingly.
16093         * src/buffer.c (default-directory): Update the docsting.
16095         * src/fileio.c (unhandled-file-name-directory): Default to calling
16096         `file-name-as-directory'
16097         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
16099 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16101         * lisp/isearch.el: Delete some outdated comments.
16103 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
16105         Fix eshell/clear not working if the output has a small line count
16107         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
16108         number of newlines to be inserted. This fixes the issue where
16109         eshell/clear wouldn't work if the prompt was not at the bottom of the
16110         window, and the output wasn't too long.
16112 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
16114         * lisp/files.el (write-file): Use vc-refresh-state.
16116         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
16118         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
16120 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
16122         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
16123         (macroexp-unprogn): Make sure we never return an empty list.
16124         (macroexp-if): Remove unused (and unsafe) optimization.
16125         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
16126         occur occasionally.
16128 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
16130         Fix bug#21766 and add test
16131         * lisp/simple.el (delete-trailing-whitespace): Save match data when
16132         calling `skip-syntax-backward'.
16133         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
16134         New test.
16136 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16138         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
16140 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
16142         * src/dispnew.c (init_display): Simplify overflow checking.
16144 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16146         * lisp/character-fold.el (character-fold-to-regexp): Fix case
16147         where string ends in space
16149 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16151         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
16153         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
16155 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16157         * lisp/character-fold.el: Make compatible with lax-whitespace.
16158         (character-fold-to-regexp): Rework internals to play nice with
16159         lax-whitespacing.
16161         When the user types a space, we want to match the table entry for
16162         ?\s, which is generally a regexp like "[ ...]".  However, the
16163         `search-spaces-regexp' variable doesn't "see" spaces inside these
16164         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
16165         manually expose a space).
16167         Furthermore, the lax search engine acts on a bunch of spaces, not
16168         on individual spaces, so if the string contains sequential spaces
16169         like "  ", we need to keep them grouped together like this:
16170         "\\(  \\|[ ...][ ...]\\)".
16172 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16174         * lisp/isearch.el: Refactor momentary messages.
16175         (isearch--momentary-message): New function.
16176         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
16177         (isearch-toggle-invisible): Use it.
16179 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16181         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
16182         (isearch-define-mode-toggle): New macro.
16183         (isearch-toggle-invisible): Rename to
16184         `isearch-define-mode-toggle'.
16185         (isearch-toggle-case-fold, isearch-toggle-invisible)
16186         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
16187         with `isearch-define-mode-toggle'.
16189 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
16191         Avoid using `add-to-list' on a let-local var in tramp-smb.el
16193         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
16194         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
16196 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
16198         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
16199         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
16200         does not exist in XEmacs 21.4.
16202 2015-10-28  Anders Lindgren  <andlind@gmail.com>
16204         Fixed OS X startup crash
16206         Input events started to arrive before ns_term_init() was finished.
16207         Solved by blocking input.  This also seems to correct the "You
16208         can't open the application "Emacs" because it may be damaged or
16209         incomplete" error issued when double-clicking on the Emacs
16210         application.
16212         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
16213         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
16215 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16217         * src/process.c (Fget_buffer_process): Improve docstring.
16218         Document the fact that it doesn't return dead processes.
16220 2015-10-28  Anders Lindgren  <andlind@gmail.com>
16222         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
16224         * src/nsterm.h (struct ns_output): New flag, in_animation.
16225         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
16226         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
16227         in_animation flag around call to "setVisible". Set new tool bar
16228         height before call to setVisible.
16229         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
16230         andColumns:] as this fools the subsequent call to updateFrameSize
16231         from performing the real resize.
16232         (windowDidResize): Don't update anything when in_animation is
16233         non-zero.
16235         Trace output.
16237         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
16238         (EmacsToolbar):
16239         * src/nsterm.m (x_set_window_size, updateFrameSize)
16240         ([EmacsView setRows: andColumns:])
16242 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
16244         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
16246 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
16248         Prettify TeX macros not ending in a word char
16250         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
16251         Prettify macros which don't end in a word character.
16253 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
16255         Pipe Hg commit descriptions through 'tabindent'
16257         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
16258         through 'tabindent'.
16259         (vc-hg-log-view-mode): Set tab-width to 2 locally.
16260         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
16262 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16264         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
16265         (tramp-smb-handle-directory-files): Use `delete-dups'.
16267         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
16269 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16271         * lisp/international/ccl.el: Use lexical-binding.
16272         (ccl-compile-if): Remove unused var `false-ic'.
16273         (ccl-compile-write-repeat): Remove unused var `i'.
16274         (ccl-compile-map-single): Remove unused var `id'.
16275         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
16276         dynamic var `ccl-code'.
16278 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16280         * lisp/json.el (json-new-object): Optimize trivial `list' call.
16282 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16284         * lisp/help.el: Fix bug with incorrect arglist string.
16285         (help-add-fundoc-usage): Don't mistake a mis-formatted string
16286         for a list.
16288 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16290         * lisp/gnus/gnus-topic.el: Silence some warnings.
16291         (gnus-topic-prepare-topic): Remove unused var `topic'.
16292         (gnus-topic-remove-topic): Mark unused arg `hide'.
16293         (gnus-tmp-header): Declare.
16294         (gnus-topic-goto-missing-group): Remove unused var `entry'.
16295         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
16296         (gnus-topic-copy-matching): Mark unused arg `copyp'.
16297         Move initialization of `topic' into its declaration.
16299 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
16301         Minor CEDET fixes
16303         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
16304         Handle warnings from gtags about invalid options.
16305         (cedet-gnu-global-create/update-database): Do incremental update
16306         properly.
16308         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
16309         Get monotone root right.
16311 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
16313         Fall back to polling in autorevert when needed
16315         * lisp/autorevert.el (auto-revert-notify-handler): When a
16316         `stopped' event arrives from file notification, fall back to polling.
16318         * test/automated/file-notify-tests.el
16319         (file-notify-test03-autorevert): Extend test for polling when file
16320         notification ceases to work.
16322 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
16324         Show full commit messages in 'hg log' when appropriate
16326         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
16327         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
16328         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
16330 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
16332         Use a plain SVG file for the icon
16334         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
16335           format instead of the Inkscape SVG format.
16337 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
16339         Fix subtle bug in auto-revert-tests.el
16341         * test/automated/auto-revert-tests.el
16342         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
16343         buffer where it belongs to.  (Bug#21668)
16345 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
16347         * lisp/emacs-lisp/map.el: Better docstrings.
16349         * lisp/emacs-lisp/seq.el: Better docstrings.
16351         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
16353 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
16355         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
16357 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
16359         Clarify that load-path contents should be directory file names
16361         * doc/lispref/files.texi (Directory Names): Define and use "directory
16362         file name".  Recommend `expand-file-name'.
16364         * src/lread.c (load-path): Fix doc string; elements are directory file
16365         names.
16367 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
16369         Fix simple-test.el test
16371         * test/automated/simple-test.el (simple-test--dummy-buffer):
16372         Make sure indentation doesn't use TABs, otherwise the 6th test
16373         might fail.
16375 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
16377         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
16378         `substring' does not account for full width characters.
16380 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
16382         Further work on `stopped' events in filenotify.el
16384         * doc/lispref/os.texi (File Notifications): Rework examples.
16386         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
16387         (file-notify--rm-descriptor, file-notify-callback): Improve check
16388         for sending `stopped' event.
16389         (file-notify-add-watch): Check for more events for `inotify'.
16391         * test/automated/file-notify-tests.el
16392         (file-notify--test-expected-events): New defvar.
16393         (file-notify--test-with-events): Use it.
16394         (file-notify--test-cleanup): Make it more robust when deleting
16395         directories.
16396         (file-notify--test-event-test): Check also for watched directories.
16397         (file-notify--test-event-handler): Suppress temporary .#files.
16398         (file-notify-test02-events, file-notify-test04-file-validity):
16399         Rework `stopped' events.
16400         (file-notify-test05-dir-validity): Wait for events when appropriate.
16402 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
16404         * src/keyboard.c (post-command-hook): Shorten docstring.
16406 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
16408         Fix infinite loop in sh-script's SMIE code
16410         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
16411         loop (bug#21747).
16413 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16415         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
16416         Character-fold search _still_ doesn't play well with
16417         lax-whitespace.  So disable it by default (again) for now.
16419 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16421         * lisp/isearch.el: No visual feedback for default search mode.
16422         During an isearch where character-folding is the default, we don't
16423         want to take up minibuffer space just to tell the user that
16424         "Char-fold " is on.  The same goes for other modes, if the user
16425         changes the default.  In contrast, if the user toggles OFF the
16426         default mode, they should see "Literal", to distinguish it from
16427         the default mode.
16428         (isearch--describe-regexp-mode): Return "" if describing the
16429         default mode, and return "literal " if describing a plain search
16430         and it is not default.
16432 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16434         * test/automated/simple-test.el: New file.
16435         Define tests for `newline' and `open-line'.
16437 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16439         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
16440         Also run `post-self-insert-hook' when called interactively.
16442 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16444         * lisp/simple.el (open-line): Fix docstring.
16445         Also explain apparently redundant line.
16447 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16448             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
16450         Sync with soap-client repository, version 3.0.1
16452         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
16453         Bump version to 3.0.1.
16455         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
16457 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
16459         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
16461 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16463         * src/keyboard.c (post-command-hook): Extend the docstring.
16464         Mainly, explain how to use it without hanging Emacs, or giving the
16465         impression that it is hanging.  Also mention `pre-command-hook'.
16466         (pre-command-hook): Mention `post-command-hook'.
16468 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16470         * lisp/custom.el (custom-declare-variable): Shorten code again.
16471         Without using pcase this time.  We can't use pcase because it is
16472         loaded after custom in loadup.el.  Also add a comment explaining
16473         this to future dummies like me.
16475 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
16477         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
16479 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
16481         Introduce `stopped' event in file notification
16483         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
16484         (file-notify-rm-watch): Use it.
16485         (file-notify-callback): Implement `stopped' event.
16486         (file-notify-add-watch): Mention `stopped' in the docstring.
16487         Check, that upper directory exists.
16489         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
16490         Add two test cases.
16491         (file-notify-test02-events): Handle also `stopped' event.
16492         (file-notify-test04-file-validity): Add another test case.
16494 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
16496         Revert commit that broke 'make bootstrap'
16498         * lisp/custom.el (custom-declare-variable): Revert commit
16499         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
16500         even when pcase has not been defined yet, when doing bootstrapping.
16502 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
16504         Port recent inline functions fix to Standard C
16506         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
16507         All uses rewritten to define the function directly rather than to
16508         use a macro to define the function.  This conforms to Standard C,
16509         which does not allow stray semicolons at the top level.  I hope it
16510         also avoids the problems with TAGS.  Those macros, though clever,
16511         were pretty confusing anyway, and it wasn’t clear they were worth
16512         the aggravation even without the TAGS problem.
16514 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16516         * lisp/isearch.el: Make character-fold search the default again.
16518 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16520         * lisp/character-fold.el: Many improvements.
16521         (character-fold-search-forward, character-fold-search-backward):
16522         New command.
16523         (character-fold-to-regexp): Remove lax-whitespace hack.
16524         (character-fold-search): Remove variable.  Only isearch and
16525         query-replace use char-folding, and they both have their own
16526         variables to configure that.
16528 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16530         * lisp/isearch.el: Generalize definition of regexp-function toggles.
16531         (isearch-specify-regexp-function): New macro for specifying
16532         possible values of `isearch-regexp-function'.
16533         (isearch-toggle-character-fold, isearch-toggle-symbol)
16534         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
16536 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16538         * lisp/isearch.el (search-default-regexp-mode): New variable.
16539         (isearch-mode): Use it.
16541 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16543         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
16544         (search-slow-speed, search-upper-case)
16545         (search-nonincremental-instead, search-whitespace-regexp)
16546         (search-invisible, isearch-hide-immediately)
16547         (isearch-resume-in-command-history, search-ring-max)
16548         (regexp-search-ring-max, search-ring-update, search-highlight)
16549         (isearch-fail): Delete :group entries.
16551 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
16553         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
16555 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16557         addpm.c: Silence some warnings.
16559         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
16560         to LPBYTE.
16561         (add_registry): Pass NULL to optional lpClass argument of
16562         RegCreateKeyEx, not an empty string.
16564 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16566         addpm.c: Do not add obsolete GTK libraries to the path.
16568         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
16569         (add_registry): Remove variables `size' and `gtk_key'.
16570         Do not add the GTK DLL directory to the library search path; it is
16571         confusing behavior (in particular, the same Emacs version with and
16572         without invoking addpm will use a different path), and the GTK image
16573         libraries are obsolete anyway.
16575 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16577         addpm.c: Replace existing registry entries, but do not create new ones
16579         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
16580         existing values from previous versions, but do not add new ones; the
16581         key could exist for other reasons unrelated to old Emacsen, like X-style
16582         resources, or to set some environment variables like HOME or LANG, and
16583         in that case we don't want to populate it with obsolete values.
16585 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16587         * nt/addpm.c (add_registry): Do not compute unused return value.
16589 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16591         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
16593         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
16594         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
16595         current behavior because REG_OPTION_NON_VOLATILE is defined to
16596         be 0L anyway, but that option is actually documented only for
16597         RegCreateKeyEx.
16599 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
16601         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
16603 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16605         Update frame title when redisplay scrolls selected window
16607         * src/xdisp.c (redisplay_window): Reconsider the frame's title
16608         when the mode-line of the frame's selected window needs to be
16609         updated.
16611 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16613         Update frame title when scrolling the selected window
16615         * src/window.c (wset_update_mode_line): New function, sets either
16616         the window's update_mode_line flag or the global update_mode_lines
16617         variable.
16618         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
16619         (window_scroll_line_based): Call it instead of only setting the
16620         window's update_mode_line flag.
16622 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16624         An even better fix for bug#21739
16626         * src/window.c (set_window_buffer): If the window is the frame's
16627         selected window, set update_mode_lines, not the window's
16628         update_mode_line flag.
16629         * src/buffer.c (Fkill_buffer): Undo last change.
16630         (set_update_modelines_for_buf): Function deleted.
16632 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16633             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
16635         Sync with soap-client repository, version 3.0.0
16637         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
16638         Bump version to 3.0.0.
16640         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
16642         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
16644         * lisp/net/soap-inspect.el: Shorten first line description.
16646         * lisp/net/soap-client.el: Make a small whitespace fix.
16648         * lisp/net/soap-inspect.el: Update copyright years.
16650         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
16651         first use in soap-encode-xs-element.
16653         * lisp/net/soap-client.el (soap-type-is-array?): new defun
16654         (soap-encode-xs-element): handle array elements in this function
16655         (soap-encode-xs-complex-type): flag error if asked to encode an
16656         array type, this is handled in `soap-encode-xs-element'
16658         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
16659         Do not print type for attribute group.
16661         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
16662         New function.
16663         (soap-inspect-xs-attribute-group): Likewise.
16665         * lisp/net/soap-inspect.el
16666         (soap-resolve-references-for-xs-attribute-group): Resolve
16667         references of attributes in an attribute group.
16669         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
16670         type directly, not through soap-wsdl-get.
16672         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
16673         nil if reference attribute is nil.
16675         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
16676         Convert XML schema attributes to xsd:string.
16678         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
16679         New function.
16680         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
16681         (soap-sample-value-for-xs-complex-type): Likewise.
16682         (soap-inspect-xs-attribute): New function.
16683         (soap-inspect-xs-simple-type): Print attributes.
16684         (soap-inspect-xs-complex-type): Likewise.
16686         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
16687         Resolve references for attributes.
16688         (soap-resolve-references-for-xs-complex-type): Likewise.
16690         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
16691         Rename from soap-xml-node-first-child.
16692         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
16693         (soap-xs-parse-simple-type): Likewise.
16695         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
16697         * lisp/net/soap-client.el (soap-invoke-internal): New function.
16698         (soap-invoke-async): Call soap-invoke-internal.
16699         (soap-invoke): Likewise.
16701         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
16702         url-retrieve callback is killed.
16704         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
16705         Rename function.
16706         (soap-parse-wsdl-phase-fetch-imports): Likewise.
16707         (soap-parse-wsdl-phase-parse-schema): Likewise.
16708         (soap-parse-wsdl-phase-fetch-schema): Likewise.
16709         (soap-parse-wsdl-phase-finish-parsing): Likewise.
16710         (soap-parse-wsdl): Update calls.
16712         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
16714         * lisp/net/soap-client.el (soap-invoke-async): New function.
16715         (soap-invoke): Reimplement using soap-invoke-async.
16717         * lisp/net/soap-client.el (soap-parse-server-response):
16718         Improve docstring.
16719         (soap-invoke): Inline call to soap-parse-server-response.
16721         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
16722         Prevent incorrect warning.
16724         * lisp/net/soap-client.el (soap-parse-server-response):
16725         Rename soap-process-url-response.  Destroy the mime part.
16726         (soap-invoke): Call soap-parse-server-response.
16728         * lisp/net/soap-client.el: Update copyright date.
16730         * lisp/net/soap-client.el: Fix checkdoc issues.
16732         * lisp/net/soap-client.el: Fix indentation and long lines.
16734         * lisp/net/soap-client.el (soap-time-format): Remove variable.
16735         (soap-encode-xs-basic-type): Simplify date-time format detection.
16736         (soap-decode-xs-basic-type): Remove soap-time-format support.
16738         * lisp/net/soap-client.el (soap-process-url-response): New function.
16739         (soap-fetch-xml-from-url): Call soap-process-url-response.
16740         (soap-parse-wsdl-phase-1): New function.
16741         (soap-parse-wsdl-phase-2): Likewise.
16742         (soap-parse-wsdl-phase-3): Likewise.
16743         (soap-parse-wsdl-phase-4): Likewise.
16744         (soap-parse-wsdl-phase-5): Likewise.
16745         (soap-parse-wsdl): Call phase functions.
16747         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
16748         Remove one-argument and call.
16750         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
16752         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
16753         (soap-parse-schema): Add wsdl argument.  Look up XML schema
16754         imports from wsdl.
16755         (soap-load-wsdl): Do not set soap-xmlschema-imports.
16756         (soap-parse-wsdl): Get XML schema imports from wsdl.
16758         * lisp/net/soap-client.el (soap-current-file): Remove variable.
16759         (soap-wsdl): Add current-file slot.
16760         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
16761         file from wsdl.
16762         (soap-fetch-xml-from-file): Likewise.
16763         (soap-fetch-xml): Likewise.
16764         (soap-load-wsdl): Always create wsdl object first.
16765         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
16767         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
16768         (soap-xs-parse-element): Set is-group slot.
16769         (soap-resolve-references-for-xs-element): Skip is-group elements.
16770         (soap-xs-complex-type): Add is-group slot.
16771         (soap-xs-parse-complex-type): Set is-group slot.
16772         (soap-xs-parse-sequence): Parse xsd:group elements.
16773         (soap-resolve-references-for-xs-complex-type): Inline elements
16774         from referenced xsd:group nodes.
16775         (soap-parse-schema): Parse xsd:group nodes.
16777         * lisp/net/soap-client.el (soap-invoke):
16778         Don't set url-http-version to 1.0.
16780         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
16781         Allow choice nodes to accept multiple values.
16783         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
16784         for extra header values.
16786         * lisp/net/soap-client.el (soap-well-known-xmlns):
16787         Add wsa and wsaw tags.
16788         (soap-operation): Add input-action and output-action slots.
16789         (soap-parse-operation): Parse wsaw:Action nodes.
16790         (soap-encode-body): Encode service-url for WS-Addressing.
16791         (soap-create-envelope): Likewise.
16792         (soap-invoke): Update soap-create-envelope call to provide
16793         service-url argument.
16795         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
16796         Support xsi:type override attribute.
16797         (soap-decode-array): Likewise.
16799         * lisp/net/soap-client.el (soap-parse-schema):
16800         Handle location attribute.
16802         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
16803         matched validation regexp.
16805         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
16806         Encode xsd:list nodes.
16807         (soap-decode-xs-simple-type): Decode xsd:list nodes.
16809         * lisp/net/soap-client.el (soap-get-candidate-elements):
16810         Fix reference handling.
16812         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
16813         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
16814         (soap-xs-add-list): New function.
16816         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
16817         expected, interpret nil as "false".
16819         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
16820         gYear, gMonthDay, gDay and gMonth.
16822         * lisp/net/soap-client.el (soap-time-format): New variable.
16823         (soap-encode-xs-basic-type): Handle dateTime, time, date,
16824         gYearMonth, gYear, gMonthDay, gDay and gMonth.
16825         (soap-decode-date-time): New function.
16826         (soap-decode-xs-basic-type): Use soap-decode-date-time.
16828         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
16829         after encoding.
16830         (soap-decode-xs-basic-type): Validate value before decoding.
16832         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
16833         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
16835         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
16836         instead of overwriting it.
16837         (soap-validate-xs-simple-type): Add union support.
16839         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
16840         to Emacs regexp using xsdre-translate.
16841         (soap-validate-xs-simple-type): Validate value against pattern.
16843         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
16844         inline simpleType nodes.
16845         (soap-decode-type): Handle union types.
16847         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
16848         attributes.
16850         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
16851         from soap-xs-attribute-group-consolidate, all callers updated
16852         (soap-get-xs-attributes): Rename from
16853         soap-xs-attributes-consolidate, all callers updated
16855         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
16856         (soap-xs-attribute-group): New type.
16857         (soap-xs-parse-attribute-group): New function.
16858         (soap-resolve-references-for-xs-attribute-group): Likewise.
16859         (soap-xs-add-extension): Handle attribute groups.
16860         (soap-resolve-references-for-xs-simple-type): Likewise.
16861         (soap-xs-parse-complex-type): Likewise.
16862         (soap-xs-parse-extension-or-restriction): Likewise.
16863         (soap-resolve-references-for-xs-complex-type): Likewise.
16864         (soap-xs-attribute-group-consolidate): New function.
16865         (soap-xs-attributes-consolidate): Handle attribute groups.
16866         (soap-parse-schema): Likewise.
16868         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
16869         Fix boolean encoding.
16871         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
16872         element names in warnings.
16874         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
16876         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
16877         Eliminate invalid warnings for choice types.
16879         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
16880         Also encode base type attributes.
16882         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
16883         warning.  Print e-name in warnings, or element if e-name is nil.
16885         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
16886         (soap-xs-parse-element): Set substitution-group.
16887         (soap-resolve-references-for-xs-element): Populate alternatives slot.
16888         (soap-get-candidate-elements): New function.
16889         (soap-encode-xs-complex-type): Iterate through all candidate elements.
16890         Handle types with nil type indicator.  Fix warning logic.
16892         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
16893         earlier in the file to prevent compiler warning.
16895         * lisp/net/soap-client.el (soap-node-optional): New function.
16896         (soap-node-multiple): Likewise.
16897         (soap-xs-parse-element): Call soap-node-optional and
16898         soap-node-multiple.
16899         (soap-xs-complex-type): Add optional? and multiple? slots.
16900         (soap-xml-get-children-fq): New function.
16901         (soap-xs-element-get-fq-name): Likewise.
16902         (soap-xs-complex-type-optional-p): Likewise.
16903         (soap-xs-complex-type-multiple-p): Likewise.
16904         (soap-xs-attributes-consolidate): Likewise.
16905         (soap-decode-xs-attributes): Likewise.
16906         (soap-decode-xs-complex-type): Decode types with nil type indicator.
16907         Support children that use local namespaces.  Decode attributes.
16908         Add type considerations to optional? and multiple? warnings.
16910         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
16911         Store parsed attributes.
16912         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
16914         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
16915         Don't add the xsi:type attribute (Exchange refuses requests which have
16916         this attribute).
16918         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
16919         correct compiler warnings about unused function arguments and
16920         local variables.
16922         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
16923         type indicator.
16924         (soap-parse-envelope): Handle response headers.
16925         (soap-parse-response): Likewise.  Only return non-nil decoded values.
16927         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
16928         Return validated value.
16930         * lisp/net/soap-client.el (soap-xs-parse-element)
16931         (soap-xs-parse-simple-type)
16932         (soap-xs-parse-complex-type)
16933         (soap-parse-message)
16934         (soap-parse-operation): Add the current namespace to the element
16935         being created.
16936         (soap-resolve-references-for-xs-element)
16937         (soap-resolve-references-for-xs-simple-type)
16938         (soap-resolve-references-for-xs-complex-type)
16939         (soap-resolve-references-for-operation): Resolve the namespace to
16940         the namespace tag.
16941         (soap-make-wsdl): specify a namespace tag when creating the xsd
16942         and soapenc namespaces
16943         (soap-wsdl-resolve-references): don't update namespace tags in
16944         elements here
16945         (soap-parse-port-type): bind the urn: to soap-target-xmlns
16946         (soap-encode-body): don't add nil namespace tags to
16947         soap-encoded-namespaces
16949         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
16950         for registering the soap-inspect method.  Make debbugs tests pass.
16951         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
16952         type name, also skip string only nodes when decoding a structure.
16953         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
16954         types too.
16955         (soap-encode-body): Grab the header value from the param table.
16957         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
16958         New function.
16959         (soap-encode-xs-element): Don't encode nil value unless needed.
16961         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
16962         (soap-parse-binding): Parse the message parts required in the body.
16963         (soap-encode-body): Encode only the parts that are declared to be
16964         part of the body.
16966         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
16967         when writing out the tag.
16968         (soap-encode-body): Remove hack that inserts the xmlns in the
16969         element attributes list.
16971         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
16972         (soap-xs-parse-attribute): Default slot is set from the XML
16973         "fixed" attribute.
16974         (soap-encode-xs-complex-type-attributes): Encode any attributes
16975         that have a default value.  Also, don't put the xsi:nil attribute
16976         when the complex type has no content anyway.
16978         * lisp/net/soap-client.el (soap-well-known-xmlns):
16979         Add the xml namespace.
16980         (soap-local-xmlns): Start with the xml namespace.
16981         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
16982         (soap-make-xs-basic-types): More xsd types added.
16983         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
16984         Handle "language", "time", "date", "nonNegativeInteger".
16985         (soap-resolve-references-for-xs-element): Don't signal an error if
16986         the element does not have a type.
16987         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
16988         added stum for xsd:list.
16989         (soap-xs-add-union): Call soap-l2fq on all union members.
16990         (soap-xs-add-extension): Call soap-l2fq on the base member.
16991         (soap-resolve-references-for-xs-simple-type): Don't signal an
16992         error if the simple type has no base.
16993         (soap-resolve-references-for-xs-simple-type): Bugfix, call
16994         soap-wsdl-get on each type of the base.
16996         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
16997         Referenced type can be eiher a simple type or a basic type.
16998         (soap-xs-add-restriction)
16999         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
17000         (soap-make-xs-basic-types)
17001         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
17002         Add support for more XMLSchema basic types.
17003         (soap-current-file, soap-xmlschema-imports): New defvars.
17004         (soap-parse-schema): Add locations from xsd:import tags to
17005         `soap-xmlschema-imports'.
17006         (soap-wsdl): Make destructor private.
17007         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
17008         (soap-wsdl-add-alias): Check if we try to replace aliases.
17009         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
17010         (soap-fetch-xml): New defuns.
17011         (soap-load-wsdl): Update to load the WSDL from either a file or
17012         an url.
17013         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
17014         (soap-parse-wsdl): Process wsdl:import tags and imports from
17015         `soap-xmlschema-imports'.
17016         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
17017         symbol-name.
17018         (soap-l2fq): Make the name part always a string.
17019         (soap-name-p): New defun, used for name tests.
17021         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
17022         Supply sample values for choice types with a special tag.
17023         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
17024         Handle anonymous elements correctly.
17025         (soap-encode-value): Accept nodes that have no namespace tag.
17027         * lisp/net/soap-client.el (soap-invoke): Encode the string for
17028         `url-request-data' as UTF-8.  Fixes issue 16.
17030 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
17032         Update the new icon
17034         Move the E slightly to the right in the circle.
17036         * etc/images/icons/hicolor/128x128/apps/emacs.png:
17037         * etc/images/icons/hicolor/16x16/apps/emacs.png:
17038         * etc/images/icons/hicolor/24x24/apps/emacs.png:
17039         * etc/images/icons/hicolor/32x32/apps/emacs.png:
17040         * etc/images/icons/hicolor/48x48/apps/emacs.png:
17041         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
17042         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
17043         * nt/icons/emacs.ico: New icom update.
17045 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
17047         Avoid missing inline functions from lisp.h in TAGS
17049         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
17050         need to end each invocation with a semi-colon.
17051         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
17052         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
17053         inline functions defined immediately after each invocation, and
17054         also avoid tagging every invocation of these macros.
17056 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
17058         A better fix for bug#21739
17060         * src/buffer.c (set_update_modelines_for_buf): New function.
17061         (Fkill_buffer): Use it to set the global variable
17062         update_mode_lines if the killed buffer was displayed in some
17063         window.  Don't set windows_or_buffers_changed.  This is a better
17064         fix for bug#21739 than the previous fix, since it will cause only
17065         redisplay of mode lines, not of entire windows, but will still
17066         catch attention of x_consider_frame_title in xdisp.c, which
17067         redraws the frame title.
17069 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
17071         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
17072         tar.bz2 and tar.xz archives.
17074 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
17076         Fix infloop in redisplay introduced by a recent change
17078         * src/xdisp.c (redisplay_internal): Avoid inflooping when
17079         redisplaying the selected window sets the selected frame's
17080         redisplay flag.  (Bug#21745)
17082 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
17084         * lisp/emacs-lisp/thunk.el: Better documentation.
17086 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
17088         Replace the old icon for Windows and Mac OSX
17090         * nt/icons/emacs.ico:
17091         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
17092         Use the new icons.
17094 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
17096         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
17097         `load-path' should contain only directory names.
17099 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
17101         New library thunk.el
17103         thunk.el is extracted from stream.el in ELPA, with additional tests.
17105         * lisp/emacs-lisp/thunk.el: New file.
17106         * test/automated/thunk-tests.el: New file.
17107         * etc/NEWS: Add information about thunk.el
17109 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
17111         Fix bug#21669
17113         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
17114         calling low-level functions.
17116         * test/automated/file-notify-tests.el (file-notify--test-timeout):
17117         Decrase to 6 seconds for remote directories.
17118         (file-notify-test02-events): Expect different number of
17119         `attribute-changed' events for the local and remote cases.  Apply
17120         short delays between the operations, in order to receive all
17121         events in the remote case.  Combine `attribute-change' tests.
17122         (Bug#21669)
17124 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
17126         Decode the HTML source when displaying it in EWW
17128         * lisp/net/eww.el (eww-view-source): Decode the HTML source
17129         according to its headers.
17131 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
17133         New default icon
17135         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
17136         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
17137         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
17138         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
17139         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
17140         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
17141         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
17142         Move the old logo files to emacs23.*.
17143         * etc/images/icons/hicolor/128x128/apps/emacs.png:
17144         * etc/images/icons/hicolor/16x16/apps/emacs.png:
17145         * etc/images/icons/hicolor/24x24/apps/emacs.png:
17146         * etc/images/icons/hicolor/32x32/apps/emacs.png:
17147         * etc/images/icons/hicolor/48x48/apps/emacs.png:
17148         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
17149         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
17150         New files.
17151         * etc/images/icons/README: Update the copyright information.
17153 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
17155         Fix redisplay of frame title when current buffer is killed
17157         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
17158         non-zero value, to redisplay more than just the affected windows.
17159         (Bug#21739)
17161 2015-10-23  Anders Lindgren  <andlind@gmail.com>
17163         NextStep maximization and NSTRACE rewrite
17165         Full-height, full-width, and maximized windows now cover the
17166         entire screen (except the menu bar), including the part where the
17167         system dock is placed.  The system zoom animation is no longer
17168         used.
17170         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
17171         original size.
17173         * src/nsterm.m (ns_menu_bar_height): New function, return height of
17174         the menu bar, or 0 when it's hidden.
17175         (constrain_frame_rect): New function for constraining a frame.
17176         (ns_constrain_all_frames): Set frame size explicitly rather than
17177         relying on the system doing it for us by writing back the current
17178         frame size.
17179         (windowWillUseStandardFrame): Register non-maximized width or
17180         height as new user size.  When entering full width or height,
17181         the other size component is taken from the user size.
17182         (fullscreenState): New method for accessing the fullscreen state.
17183         (constrainFrameRect): Restrict frame to be placed under the menu bar,
17184         if present.  The old version, sometimes, restricted the height of a
17185         frame to the screen, this version never does this.
17186         (zoom): Perform zoom by setting the frame to the full size of the
17187         screen (minus the menu bar).  The default system function, with the
17188         zoom animation, is no longer used, as the final frame size doesn't
17189         cover the entire screen.
17191         Rework how to constrain resizing to the character grid.  The old
17192         system used "resizeIncrements" in NSWindows.  However, once a frame
17193         was resized so that it was not aligned to the text grid, it
17194         remained unaligned even after a resize.  In addition, it conflicted
17195         when resizing a fullheight window.
17197         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
17198         unless when pixelwise frame resizing is enabled.
17199         (updateFrameSize, initFrameFromEmacs)
17200         (toggleFullScreen, handleFS): Don't set resizeIncrements.
17202         Redesign the NS trace system.  The call structure is represented
17203         using indentations and vertical lines.  The NSTRACE macro accepts
17204         printf-style arguments.  New macros for printing various
17205         information.
17207         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
17208         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
17209         block (typically a function), accept printf-style arguments.
17210         (NSTRACE_MSG): Macro for extra information, accepts
17211         printf-style arguments.
17212         (NSTRACE_what): Macros for printing various types.
17213         (NSTRACE_FMT_what): Macro with printf format string snippets.
17214         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
17215         corresponds to NSTRACE_FMT_what.
17216         (NSTRACE_RETURN): Macro to print return value, accept
17217         printf-style arguments.
17218         (NSTRACE_RETURN_what): Macros to print return value for
17219         various types.
17221         * src/nsterm.m: Remove old NSTRACE macro
17222         * src/nsterm.m (nstrace_num): Trace counter.
17223         (nstrace_depth): Current call depth.
17224         (nstrace_leave): NSTRACE support function, called when the
17225         local variable "nstrace_enabled" goes out of scope using the
17226         "cleanup" extension.
17227         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
17228         (constrain_frame_rect, ns_constrain_all_frames)
17229         (ns_update_auto_hide_menu_bar, ns_update_begin)
17230         (ns_update_window_begin, update_window_end, ns_update_end)
17231         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
17232         (ns_frame_rehighlight, x_make_frame_visible)
17233         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
17234         (x_destroy_window, x_set_offset, x_set_window_size)
17235         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
17236         (ns_defined_color, frame_set_mouse_pixel_position)
17237         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
17238         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
17239         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
17240         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
17241         (dumpcursor, ns_draw_vertical_window_border)
17242         (ns_draw_window_divider, ns_draw_relief)
17243         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
17244         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
17245         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
17246         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
17247         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
17248         (ns_create_terminal, ns_term_init, sendEvent)
17249         (applicationDidFinishLaunching, applicationDidBecomeActive)
17250         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
17251         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
17252         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
17253         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
17254         (mouse_autoselect_window, in_window, mouseDragged)
17255         (rightMouseDragged, otherMouseDragged, windowShouldClose)
17256         (updateFrameSize, windowWillResize, windowDidResize)
17257         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
17258         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
17259         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
17260         (windowDidEnterFullScreen, windowWillExitFullScreen)
17261         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
17262         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
17263         (draggingEntered, performDragOperation, validRequestorForSendType)
17264         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
17265         (EmacsScroller_initFrame, EmacsScroller_setFrame)
17266         (EmacsScroller_dealloc, condemn, reprieve, judge)
17267         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
17268         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
17270         * src/nsfns.m: Remove old NSTRACE macro
17271         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
17272         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
17273         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
17275         * src/nsimage.m: Remove old NSTRACE macro
17276         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
17277         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
17279         * src/nsmenu.m: Remove old NSTRACE macro
17280         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
17281         Use new trace system.
17283 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
17285         No need to use eval-and-compile
17287         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
17288         autoload epg functions.
17290 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
17292         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
17294         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
17295         epg-context-set-passphrase-callback, epg-decrypt-string, and
17296         epg-encrypt-string; require epg when compiling for the setf-method
17297         for epg-context-armor. (bug#21724)
17299 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
17301         Include file cleanup for w32 files in src directory
17303         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
17304         fontset.h, blockinput.h.
17305         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
17306         charset.h, fontset.h.
17307         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
17308         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
17309         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
17310         in an ifdef-ed away block.
17311         Include fcntl.h for CYGWIN.
17312         (set_frame_param): Remove unused function.
17313         * src/w32select.c: Don't include charset.h and composite.h.
17314         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
17315         due to pointer signedness mismatches.
17316         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
17317         due to pointer signedness mismatches.
17318         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
17319         process.h, dispextern.h.
17320         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
17321         (Fw32_application_type): Avoid compiler warnings due to pointer
17322         signedness mismatches.
17323         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
17324         character.h, charset.h, dispextern.h.
17325         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
17326         to pointer signedness mismatches.
17327         * src/w32inevt.c: Don't include dispextern.h, window.h,
17328         termhooks.h, w32heap.h.
17329         * src/w32font.c: Don't include dispextern.h, character.h,
17330         charset.h, fontset.h, font.h.
17331         (intern_font_name, add_font_entity_to_list)
17332         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
17333         (list_all_matching_fonts): Avoid compiler warnings due to pointer
17334         signedness mismatches.
17335         * src/w32fns.c: Don't include character.h, intervals.h,
17336         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
17337         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
17338         (w32_color_map_lookup, add_system_logical_colors_to_map)
17339         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
17340         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
17341         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
17342         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
17343         compiler warnings, mainly due to pointer signedness mismatches.
17344         (unwind_create_frame_1): Remove unused function.
17345         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
17346         window.h, termhooks.h, dispextern.h.
17347         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
17348         signedness mismatch.
17349         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
17350         w32heap.h.
17352 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
17354         Improve doc-view wrt. auto-revert-mode
17356         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
17357         is corrupted (bug#21729).
17358         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
17360 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
17362         Describe dired-do-compress-to in the manual
17364         * etc/NEWS: Update.
17366         * lisp/dired-aux.el: Fix typo.
17368         * doc/emacs/dired.texi: Add entry.
17370 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
17372         Further fix for proper locale handling in tramp-gvfs.el
17374         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
17375         Just suppress LC_MESSAGES locale category settings.
17377 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
17379         New lispref section “Security Considerations”
17381         This attempts to document some of the issues recently discussed
17382         on emacs-devel, and to indicate other such issues.  The section
17383         could be a lot longer.
17384         * doc/lispref/os.texi (Security Considerations):
17385         New node.
17386         * doc/lispref/elisp.texi (Top):
17387         * doc/lispref/processes.texi (Shell Arguments):
17388         * lisp/subr.el (shell-quote-argument):
17389         * src/callproc.c (syms_of_callproc):
17390         Reference it.
17392 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
17394         Merge from gnulib
17396         This incorporates:
17397         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
17398         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
17399         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
17400         Copy from gnulib.
17402 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
17404         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
17405         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
17407 2015-10-21  Ken Brown  <kbrown@cornell.edu>
17409         Further include-file cleanup
17411         * src/sheap.c: Include stdlib.h.
17412         * src/unexcw.c: Include string.h.
17414 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
17416         Fix logic in 'server-kill-emacs-query-function'
17418         * lisp/server.el (server-kill-emacs-query-function): Correct the
17419         logic that controls whether the user is asked for confirmation.
17420         (Bug#21723)
17422 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
17424         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
17425         (isearch--lax-regexp-function-p): New function.
17427 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
17429         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
17430         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
17431         around `isearch-regexp-function'.
17433 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
17435         * lisp/isearch.el: Rename word search to regexp-function search.
17436         `isearch-word' went well beyond its original purpose, and the name
17437         no longer makes sense.  It is now called
17438         `isearch-regexp-function', and its value should always be a function
17439         that converts a string to a regexp (though setting it to t is still
17440         supported for now).
17441         (isearch-word): Make obsolete.
17442         (isearch-regexp-function): New variable.
17443         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
17444         (with-isearch-suspended, isearch-toggle-regexp)
17445         (isearch-toggle-word, isearch-toggle-symbol)
17446         (isearch-toggle-character-fold, isearch-query-replace)
17447         (isearch-occur, isearch-highlight-regexp)
17448         (isearch-search-and-update, isearch-message-prefix)
17449         (isearch-search-fun-default, isearch-search)
17450         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
17451         Use it.
17452         (isearch-lazy-highlight-regexp-function): New var.
17453         (isearch-lazy-highlight-word): Make obsolete.
17454         (isearch--describe-regexp-mode): New function.
17455         (isearch--describe-word-mode): Make obsolete.
17457         * lisp/info.el (Info-isearch-search):
17458         * lisp/replace.el (replace-search, replace-highlight):
17459         * lisp/obsolete/longlines.el (longlines-search-function):
17460         * lisp/hexl.el (hexl-isearch-search-function):
17461         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
17462         Use the new var.
17464 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
17466         Add dired-do-compress-to command bound to "c"
17468         * lisp/dired-aux.el (dired-shell-command): Use the caller's
17469           `default-directory', return the result of `process-file'.
17470         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
17471         used by default.
17472         (dired-compress-files-alist): New defvar.
17473         (dired-do-compress-to): New command.
17475         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
17476         (dired-do-compress-to): Add an autoload entry.
17478         * etc/NEWS: Add two entries.
17480 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
17482         Make RefTeX work with LaTeX subfiles package
17484         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
17485         document class argument as master file for referencing purposes.
17487 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
17489         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
17491 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
17493         Include-file cleanup for src directory
17495         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
17496         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
17497         but does not include it directly.  As a general rule, a source
17498         file should include foo.h if it needs the interfaces that foo.h
17499         defines.
17500         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
17501         systime.h.
17502         * src/atimer.c: Don’t include blockinput.h.
17503         * src/buffer.c: Include coding.h, systime.h.  Don’t include
17504         keyboard.h, coding.h.
17505         * src/callint.c: Don’t include commands.h, keymap.h.
17506         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
17507         systty.h, termhooks.h.
17508         * src/casetab.c: Don’t include character.h.
17509         * src/category.c: Don’t include charset.h, keymap.h.
17510         * src/ccl.h: Don’t include character.h.
17511         * src/character.c: Don’t include charset.h.
17512         * src/charset.c: Don’t include disptab.h.
17513         * src/chartab.c: Don’t include ccl.h.
17514         * src/cm.c: Don’t include frame.h, termhooks.h.
17515         * src/cmds.c: Don’t include window.h, dispextern.h.
17516         * src/coding.c: Don’t include window.h, frame.h.
17517         * src/composite.c: Include composite.h.  Don’t include window.h,
17518         font.h.
17519         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
17520         * src/dbusbind.c: Don’t include frame.h.
17521         * src/decompress.c: Don’t include character.h.
17522         * src/dired.c: Don’t include character.h, commands.h, charset.h.
17523         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
17524         process.h, timespec.h.  Include systime.h.
17525         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
17526         * src/editfns.c: Include composite.h.  Don’t include frame.h.
17527         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
17528         commands.h, systty.h..
17529         * src/fileio.c: Don’t include intervals.h, dispextern.h.
17530         Include composite.h.
17531         * src/filelock.c: Don’t include character.h, systime.h.
17532         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
17533         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
17534         * src/font.c: Include termhooks.h.
17535         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
17536         struct composition_it, struct face, struct glyph_string.
17537         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
17538         intervals.h, window.h, termhooks.h.
17539         * src/frame.c: Don’t include character.h, commands.h, font.h.
17540         * src/frame.h: Don’t include dispextern.h.
17541         * src/fringe.c: Don’t include character.h.
17542         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
17543         character.h, charset.h, fontset.h.
17544         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
17545         fontset.h.
17546         * src/ftxfont.c: Don’t include dispextern.h, character.h,
17547         charset.h, fontset.h.
17548         * src/gfilenotify.c: Don’t include frame.h, process.h.
17549         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
17550         Don’t include syssignal.h, buffer.h, charset.h, font.h.
17551         * src/gtkutil.h: Don’t include frame.h.
17552         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
17553         Don’t include character.h.
17554         * src/indent.c: Don’t include keyboard.h, termchar.h.
17555         * src/inotify.c: Don’t include character.h, frame.h.
17556         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
17557         * src/intervals.c: Don’t include character.h, keyboard.h.
17558         * src/intervals.h: Don’t include dispextern.h, composite.h.
17559         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
17560         Include coding.h.
17561         * src/keyboard.h: Don’t incldue systime.h.
17562         * src/keymap.c: Don’t include charset.h, frame.h.
17563         * src/lread.c: Include dispextern.h and systime.h.
17564         Don’t include frame.h.  Include systime.h.
17565         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
17566         * src/menu.c: Include character.h, coding.h.  Don’t include
17567         dispextern.h.
17568         * src/menu.h: Don’t include systime.h.
17569         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
17570         intervals.h, termhooks.h.
17571         * src/print.c: Include coding.h.  Don’t include keyboard.h,
17572         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
17573         Add forward decl of struct terminal.
17574         * src/process.c: Don’t include termhooks.h, commands.h,
17575         dispextern.h, composite.h.
17576         * src/region-cache.c: Don’t include character.h.
17577         * src/scroll.c: Don’t include keyboard.h, window.h.
17578         * src/search.c: Don’t include category.h, commands.h.
17579         * src/sound.c: Don’t include dispextern.h.
17580         * src/syntax.c: Don’t include command.h, keymap.h.
17581         * src/sysdep.c: Don’t include window.h, dispextern.h.
17582         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
17583         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
17584         * src/terminal.c: Include character.h.
17585         Don’t include charset.h, coding.h.
17586         * src/textprop.c: Don’t include character.h.
17587         * src/undo.c: Don’t include character.h, commands.h, window.h.
17588         * src/unexsol.c: Don’t include character.h, charset.h.
17589         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
17590         window.h, dispextern.h, blockinput.h, character.h, font.h.
17591         * src/widgetprv.h: Don’t include widget.h.
17592         * src/window.c: Don’t include character.h, menu.h, intervals.h.
17593         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
17594         macros.h, process.h.
17595         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
17596         intervals.h.
17597         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
17598         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
17599         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
17600         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
17601         * src/xgselect.c: Don’t include timespec.h, frame.h.
17602         Include systime.h.
17603         * src/xgselect.h: Don’t include time.h.
17604         Use a forward decl to struct timespec instead.
17605         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
17606         dispextern.h.  Include systime.h.
17607         * src/xml.c: Don’t include character.h.
17608         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
17609         * src/xselect.c: Don’t include dispextern.h, character.h,
17610         buffer.h, process.h.
17611         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
17612         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
17613         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
17615 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
17617         (/ N) now returns the reciprocal of N
17619         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
17620         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
17621         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
17622         (color-xyz-to-srgb, color-xyz-to-lab):
17623         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
17624         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
17625         (shr-color-hsl-to-rgb-fractions):
17626         Exploit the change to simplify the code a bit.
17627         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
17628         Don’t complain about single-argument calls to ‘/’.
17629         * src/data.c (arith_driver, float_arith_driver):
17630         Implement the change.
17632 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
17634         Call vc-dir-refresh after stash operations
17636         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
17637         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
17639         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
17640         since it can be abbreviated (as returned by vc-find-root).
17642 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
17644         * lisp/vc/vc-svn.el:
17645         * lisp/vc/vc-mtn.el:
17646         * lisp/vc/vc-hg.el:
17647         * lisp/vc/vc-cvs.el:
17648         * lisp/vc/vc-git.el:
17649         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
17650         Its usages have been replaced with vc-run-delayed.
17652 2015-10-20  Dima Kogan  <dima@secretsauce.net>
17654         Fix memory leak in fontset handling
17656         * src/font.c (copy_font_spec): Make a deep copy of the input
17657         argument FONT.  (Bug#21651)
17659 2015-10-20  Michael Sperber  <mike@xemacs.org>
17661         * lisp/gnus/mailcap.el (mailcap-mime-data):
17662         Conditonalize `doc-view-mode', which does not exist on XEmacs.
17664 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
17666         Update the way directories are compressed
17668         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
17669         for *.tar.gz decompression to use a pipe.
17670         Add an entry for the default directory compression (to *.tar.g).
17671         (dired-compress-file): Update.
17673         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
17675 2015-10-20  Michael Sperber  <mike@xemacs.org>
17677         Unbreak `group' option for `mail-sources'
17679         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
17680         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
17681         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
17683 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
17685         New function seq-position
17687         * lisp/emacs-lisp/seq.el (seq-position): New function.
17688         * test/automated/seq-tests.el: New tests for seq-position.
17689         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
17691 2015-10-19  Ken Brown  <kbrown@cornell.edu>
17693         Enable --with-wide-int build on 32-bit Cygwin
17695         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
17696         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
17698 2015-10-19  Glenn Morris  <rgm@gnu.org>
17700         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
17702 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
17704         Resurrect image loading under auto-image-file-mode
17706         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
17707         'openp' specially.  This special case was lost in the changes on
17708         2015-08-18.  (Bug#21685)
17710 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
17712         Fix return value of 'set-file-extended-attributes'
17714         * lisp/files.el (set-file-extended-attributes): Return non-nil
17715         when setting either ACLs or SELinux context succeeds.  Document
17716         the return value.  (Bug#21699)
17718         * doc/lispref/files.texi (Changing Files): Document the return
17719         value of set-file-extended-attributes.
17721 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
17723         Improve documentation of functions that change files
17725         * doc/lispref/files.texi (Changing Files): Document that these
17726         functions signal an error on failure.
17728 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
17730         Fix doc string of 'shell-quote-argument'
17732         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
17734 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
17736         Some minor Tramp changes
17738         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
17740         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
17741         Expand `tramp-auto-save-directory'.
17743 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
17745         Minor edits in Tramp
17747         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
17748         Declare it.
17750         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
17751         Remove declaration.
17753 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
17755         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
17757 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
17759         Avoid crashes when redisplayng a window changes faces or fonts
17761         * src/xdisp.c (redisplay_internal): If redisplaying the selected
17762         window or one of the frames turns on the frame's 'redisplay' flag,
17763         redisplay again.  (Bug#21428)
17765         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
17767 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
17769         Solve timimg issues in file-notify-tests.el
17771         * test/automated/file-notify-tests.el (file-notify-test02-events):
17772         Rectify `attribute-change' tests.  There are timing issues with
17773         gfilenotify.  (Bug#21669)
17775 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
17777         Fix quoting of data within htmlfontify doc
17779         * doc/misc/htmlfontify.texi (Data Structures, Customization):
17780         Fix quoting of data structures.  A Lisp quote is needed only
17781         when data appears within Lisp code.
17783 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
17785         * lisp/emacs-lisp/package.el: Reload archive-contents if
17786         priorities change.
17787         (package--old-archive-priorities): New variable.
17788         (package-read-all-archive-contents, package-menu--refresh): Use it
17789         to decide when the `package-archive-contents' needs to be read
17790         again.
17792 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
17794         Make src headers idempotent and standalone
17796         Redo src/*.h so that each include file is idempotent (that is, can
17797         be included multiple times with the latter inclusions having no
17798         effect) and standalone (that is, can be included by itself,
17799         with no include file other than config.h needed as a prerequisite).
17800         This is standard practice in GNU programs nowadays.
17801         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
17802         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
17803         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
17804         * src/regex.h [emacs]:
17805         * src/syntax.h, src/systty.h, src/termhooks.h:
17806         Include lisp.h, for Lisp_Object.
17807         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
17808         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
17809         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
17810         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
17811         * src/termopts.h, src/tparam.h, src/unexec.h:
17812         Protect against multiple inclusion.
17813         * src/buffer.h: Include character.h, for STRING_CHAR.
17814         * src/emacsgtkfixed.h (struct frame):
17815         * src/fontset.h (struct face):
17816         * src/region-cache.h (struct buffer):
17817         * src/termhooks.h (struct glyph):
17818         * src/xsettings.h (struct x_display_info):
17819         Add possibly-forward decl.
17820         * src/syntax.h: Include buffer.h, for BVAR.
17821         * src/sysselect.h: Include lisp.h, for eassume.
17822         * src/termchar.h: Include <stdio.h>, for FILE.
17823         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
17824         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
17826 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
17828         Handle symlink targets containing spaces in tramp-gvfs.el
17830         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
17831         Handle symlink targets containing spaces.
17833 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
17835         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
17837         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
17838         same reason that `load-path' shouldn't.  Setting it via the customize
17839         interface is a trap for the user.
17841         Installed themes commonly add themselves to this variable, which means
17842         its value is not fit for being saved (it will permanently remember dirs
17843         that don't exist anymore).
17845         This is aggravated by the fact that Emacs always applies the `user'
17846         theme on top of any theme that's loaded, since this will apply the old
17847         variable value and remove any new directories that had been recently
17848         added by themes themselves.
17850         Not to mention, we already have `custom-theme-directory', which is safe
17851         to customize.
17853 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
17855         * lisp/mpc.el: Rename the new toggling commands.
17856         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
17857         (mpc-toggle-shuffle): Add "-toggle" in the name.
17859 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
17861         Improve the doc string of 'completion-boundaries'
17863         * lisp/minibuffer.el (completion-boundaries): Rename the argument
17864         TABLE to COLLECTION, for consistency with other high-level
17865         completion functions.  Document how COLLECTION is called if it
17866         is a function.  (Bug#21644)
17868 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
17870         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
17872 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
17874         Make dired-do-compress work for *.zip files
17876         * lisp/dired-aux.el (dired-check-process): Transform the top-level
17877           comment into a docstring.
17878         (dired-shell-command): New command.  This mirrors
17879         `dired-check-process', but is more user-friendly for passing
17880         arguments.
17881         (dired-compress-file-suffixes): Allow to specify the command switches
17882         along with input (%i) and output (%o) inside the PROGRAM part.
17883         Add an entry for *.zip files, and update the entry for *.tar.gz files
17884         to the new style.  Update the docstring.
17885         (dired-compress-file): When PROGRAM matches %i or %o, use the new
17886         logic.
17887         (dired-update-file-line): Avoid an error when at end of buffer.
17889         Fixes bug#21637.
17891 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
17893         Minor improvement in documentation of internals
17895         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
17897 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
17899         Improve documentation of COLLECTION in completion functions
17901         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
17902         cross-reference to "Programmed Completion".
17904         * src/minibuf.c (Fcompleting_read): Improve the doc string.
17905         (Bug#21644)
17907 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
17909         Add more release info to etc/HISTORY
17911         * etc/HISTORY: Add more release information about 19.x and 20.x
17912         versions.
17914 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
17916         New file etc/HISTORY
17918         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
17919         * etc/HISTORY: New file.
17920         * etc/NEWS: Mention it.
17922 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
17924         js-mode: Don't misindent generator methods
17926         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
17927         generator methods from multiplication operator
17928         (https://github.com/mooz/js2-mode/issues/275).
17930 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
17932         Fix animation timeout delay calculation
17934         * lisp/image.el (image-animate-timeout):
17935         Don’t assume speed is floating-point.
17937 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
17939         Add commands for controlling MPD modes
17941         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
17942         (mpc-cmd-single): New functions.
17943         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
17944         (mpc-mode-menu): Add new commands as menu items.
17946 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
17948         Refer to `(elisp)Basic Completion' in completing-read docstring
17950         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
17951         Completion' in the docstring (bug#21644).
17953 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
17955         * lisp/mpc.el (mpc-format): Always push form to pred
17957 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
17959         Spelling fixes
17961         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
17962         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
17963         Fix misspelling of nonexistent file name.
17965 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
17967         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
17969 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
17971         Some editing fixes in Tramp
17973         * lisp/net/tramp-gvfs.el:
17974         * doc/misc/tramp.texi: "customer option" -> "custom option".
17976         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
17978 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
17980         Use proper localization in tramp-gvfs.el
17982         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
17983         Suppress localized settings in order to proper parse gfvs output.
17985 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
17987         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
17988         Quote argument in proper order.  (Bug#21562)
17990 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
17992         Fix typos in docstrings
17994         * lisp/emacs-lisp/map.el:
17995         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
17996           macros.
17998 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
18000         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
18002 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
18004         Make dired-jump work with tar-subfile-mode
18006         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
18007           emitting an error, switch to `tar-superior-buffer'.
18009 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
18011         * .gitignore: Add build-aux/ar-lib.
18013 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
18015         Better docstrings in seq.el and map.el
18017         * lisp/emacs-lisp/map.el:
18018         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
18020 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
18022         Merge from gnulib
18024         This incorporates:
18025         2015-10-13 binary-io, u64, unistd: port to strict C
18026         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
18027         2015-09-25 c-ctype: port better to z/OS EBCDIC
18028         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
18029         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
18030         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
18031         Copy from gnulib.
18033 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
18035         Take XPNTR private
18037         * src/alloc.c (PURE_POINTER_P): Remove.
18038         All uses replaced with PURE_P.
18039         (XPNTR_OR_SYMBOL_OFFSET): New function.
18040         (XPNTR): Move here from lisp.h.
18041         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
18042         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
18043         Remove unnecessary cast.
18044         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
18045         to avoid an unnecessary runtime test for symbols.
18046         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
18047         Only alloc.c needs XPNTR now.
18049 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
18051         Add MPC play/pause command
18053         * lisp/mpc.el (mpc-toggle-play): New command.
18054         (mpc-mode-map): Bind it to "s".
18055         (mpc-mode-menu): Add corresponding menu item.
18057 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
18059         Add bindings and menu items for prev and next tracks
18061         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
18062         "<" to mpc-prev.
18063         (mpc-mode-menu): Add corresponding menu items
18065 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
18067         Reduce face-related consing during frame creation.
18069         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
18070         attribute list once.
18071         (face-spec-reset-face): Use it instead of building the list.
18073 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
18075         Do process ConfigureNotify events indicating size changes.
18077         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
18078         events don't have the same size, process each one.
18080 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
18082         Derive mpc-mode from special-mode
18084         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
18085         (mpc-mode): Derive from special mode.
18086         (mpc-songs-mode-map): Don't set parent keymap.
18088 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
18090         Fix error messages for when covers are not found.
18092         The last change to mpc-format let the binding to file call
18093         mpc-file-local-copy with nil argument.  Instead, employ if-let here
18094         so nil bindings don't result in needless computation and errors.
18095         * lisp/mpc.el: Require 'subr-x at compile time.
18096         * lisp/mpc.el (mpc-format): Use if-let.
18098 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
18100         Make dired-do-compress work for *.tar.gz files
18102         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
18103           "tar -zxvf" to *.tar.gz; update docstring.
18105         (dired-compress-file): Allow to specify switches after the command in
18106         `dired-compress-file-suffixes'.
18108 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
18110         Make dired-do-compress work for directories
18112         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
18113           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
18114         Also convert the top comment into a docstring.
18116 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
18118         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
18120         ... since it might come straight from the memoizing table.
18122 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
18124         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
18126 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
18128         Use special-mode in eww list modes
18130         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
18131         (eww-buffers-mode): Derive from special-mode and remove redundant
18132         setting of buffer-read-only.
18133         (eww-mode-map): Remove redundant keymap parent setting.
18134         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
18135         Remove redundant keymap suppressions and mappings.
18137 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
18139         Allow setting frame pixel sizes from frame parameters (Bug#21415)
18141         Also fix some misfeatures in frame (re-)sizing code, add more
18142         debugging information and remove some dead code.
18144         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
18145         parameter names when setting `frame-size-history'.
18146         (frame--size-history): New function.
18148         * src/frame.c (frame_inhibit_resize): If frame has not been made
18149         yet, return t if inhibit_horizontal_resize or
18150         inhibit_vertical_resize bit have been set.
18151         (adjust_frame_size): Simplify.
18152         (make_frame): Initialize inhibit_horizontal_resize,
18153         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
18154         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
18155         inhibit_vertical_resize slots.
18156         (x_set_frame_parameters): Handle `text-pixels' specification for
18157         width and height parameters.  Don't consider new_height or
18158         new_width changes.  Call adjust_frame_size instead of
18159         Fset_frame_size.
18160         (x_figure_window_size): Two new arguments x_width and y_width
18161         returning frame's figures width and height.  Calculate tool bar
18162         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
18163         Handle `text-pixels' specification for width and height
18164         parameters.
18165         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
18166         (Qx_set_window_size_1, Qx_set_window_size_2)
18167         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
18168         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
18169         (Qfree_frame_menubar_2): New symbols.
18170         * src/frame.h (structure frame): New booleans
18171         tool_bar_redisplayed, tool_bar_resized,
18172         inhibit_horizontal_resize, inhibit_vertical_resize.
18173         (x_figure_window_size): Update external declaration.
18174         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
18175         calling gtk_window_resize.
18176         (update_frame_tool_bar): Make inhibiting of frame resizing more
18177         discriminative.  Set tool_bar_resized bit.
18178         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
18179         resizing more discriminative.  Call adjust_frame_size instead of
18180         x_set_window_size.
18181         (Fx_create_frame): Handle x_width and x_height if
18182         set by x_figure_window_size.
18183         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
18184         subtract 3 from tool bar height.
18185         (x_set_window_size): Add frame_size_history_add call.
18186         (x_new_font): Call adjust_frame_size instead of
18187         x_set_window_size.
18188         * src/w32fns.c (x_change_tool_bar_height): Reset
18189         tool_bar_redisplayed and tool_bar_resized bits when adding tool
18190         bar.  Make inhibiting of frame resizing more discriminative.
18191         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
18192         (Fx_create_frame): Handle x_width and x_height if set by
18193         x_figure_window_size.  Set size hints before adjusting frame size.
18194         (x_create_tip_frame): Adjust x_figure_window_size call.
18195         * src/w32term.c (x_set_window_size): Add frame_size_history_add
18196         call.
18197         * src/widget.c (set_frame_size): Remove dead code.  Add
18198         frame_size_history_add call.  When frame_resize_pixelwise is t
18199         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
18200         pixel_width and pixel_height.
18201         (update_various_frame_slots): Remove dead code.
18202         (EmacsFrameResize): Add more information in
18203         frame_size_history_add call.
18204         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
18205         is not set.
18206         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
18207         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
18208         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
18209         tool_bar_resized bits when adding tool bar.  Make inhibiting of
18210         frame resizing more discriminative.
18211         (Fx_create_frame): Handle x_width and x_height if set by
18212         x_figure_window_size.  Set size hints before adjusting frame size.
18213         (x_create_tip_frame): Adjust x_figure_window_size call.
18214         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
18215         (set_frame_menubar): On Lucid never add core-border-width to
18216         avoid that adding XtNinternalBorderWidth adds it again.
18217         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
18218         * src/xterm.c (x_new_font): In non-toolkit case handle size
18219         change of menu bar.
18220         (x_set_window_size_1): Fix calls to frame_size_history_add.
18221         (x_wm_set_size_hint): Remove dead code.  Set
18222         size_hints.min_width and size_hints.min_height to base_width and
18223         base_height.
18225 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
18227         * test/automated/file-notify-tests.el (file-notify--test-timeout):
18228         Add docstring.  Increase to 10 seconds for remote
18229         directories.  (Bug#21669)
18231 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
18233         Unmacroize ebrowse.c and etags.c a bit
18235         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
18236         (streq, filename_eq, set_flag, has_flag): Now inline functions.
18237         (set_flag): First arg is now an address, not an lvalue.
18238         All callers changed.
18239         (filename_eq, set_flag, has_flag):
18240         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
18241         All callers changed.
18242         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
18243         Now inline functions.  Remove asserts that are unnecessary these
18244         days (and in some cases were too-generous anyway).
18246 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
18248         Use highlight for current items
18250         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
18251         Apply highlight face instead of region face.
18253 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
18255         Search for more cover image names in MPC
18257         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
18258         case insensitively
18260 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
18262         Remove or comment out unused variables
18264         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
18265         nontext_cursor, mode_cursor, hand_cursor and count.
18266         (x_change_tool_bar_height): Remove variable old_text_height.
18267         (deliver_wm_chars): Remove variable strip_Alt.
18268         (Fw32_shell_execute): Remove variable document_a.
18269         (Fw32_frame_geometry): Remove variable fullboth.
18270         * src/w32term.c (w32_setup_relief_color): Comment out variable
18271         w32_display_info.
18272         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
18273         (w32_read_socket): Comment out variables rows, columns.
18274         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
18276 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
18278         * src/w32proc.c (sys_select): Fix bitwise test.
18280 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
18282         Minor typo corrections in doc strings
18284         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
18285         Doc fixes.
18287 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
18289         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
18291 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
18293         Attempt to avoid crashes in plist-member
18295         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
18296         and a call to XCDR.  (Bug#21655)
18298 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
18300         * lisp/select.el (gui-get-primary-selection): In
18301         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
18303 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
18305         Support RTF in doc-view
18307         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
18309 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
18311         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
18313 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
18315         Replace the usage of an obsolete function in auth-source.el
18317         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
18318         Replace an usage of `epg-context-set-armor' with `setf'.
18320 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
18322         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
18324 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
18326         Have calc-yank recognize numbers in different bases.
18328         * lisp/calc/calc-yank.el (math-number-regexp): New function.
18329         (calc-yank): Use `math-number-regexp' to recognize numbers.
18331 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
18333         Handle an opaque-move X11 window manager operation more efficiently
18335         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
18336         followed by more ConfigureNotify events for the same window, process
18337         only the last one.
18339 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
18341         Fix cursor setting for tip frame; re-enable cursor generation
18343         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
18344         attributes sent when creating the new X window.  Don't skip setting
18345         the pointerColor parameter.
18347 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
18349         Rewrite x_set_mouse_color to sync less
18351         We can track serial numbers of X requests and correlate error events
18352         with the associated requests.  This way we can identify errors for
18353         specific calls without having to use XSync after every one.
18355         * src/xfns.c (enum mouse_cursor): New type.
18356         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
18357         (mouse_cursor_types): New array listing the Lisp variables and default
18358         cursor appearances for each cursor type.
18359         (x_set_mouse_color_handler): New function; checks error event serial
18360         number against submitted requests.
18361         (x_set_mouse_color): Updated to use the new error handler callback,
18362         and to be more table-driven, to simplify repetitious code.
18364 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
18366         Add x_catch_errors_with_handler
18368         * src/xterm.c (struct x_error_message_stack): Add new fields for a
18369         callback function and associated data pointer.
18370         (x_error_catcher): If the callback function is set, call it after
18371         saving the error message string.
18372         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
18373         accepts a callback function and data pointer.
18374         (x_catch_errors): Now a wrapper function.
18375         * src/xterm.h (x_special_error_handler): New typedef.
18376         (x_catch_errors_with_handler): Declare.
18378 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
18380         Introduce x_uncatch_errors_after_check to reduce XSync calls
18382         Both x_had_errors_p and x_check_errors call XSync, so if they're
18383         immediately followed by x_uncatch_errors, its XSync call will be
18384         redundant, resulting in a wasted round trip to the X server.
18386         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
18387         x_uncatch_errors without the XSync call.
18388         (XTmouse_position, x_wm_supports):
18389         * src/xfns.c (x_set_mouse_color):
18390         * src/xmenu.c (Fx_menu_bar_open_internal):
18391         * src/xselect.c (x_own_selection, x_get_foreign_selection):
18392         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
18393         * src/xterm.h (x_uncatch_errors_after_check): Declare.
18395 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
18397         Document the optional prefix to `calc-yank'
18399         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
18400         prefix to `calc-yank'.
18401         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
18402         the Calc buffer are yanked back unchanged.
18404 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
18406         * lisp/calendar/calendar.el: Display buffer before executing body.
18408         In each use of this macro, the modeline is derived from a window width
18409         calculation, which will be wrong if (display-buffer) splits the window
18410         horizontally.
18412 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18414         Use ‘echo’ safely with ‘\’ or leading ‘-’
18416         POSIX says that ‘echo FOO’ produces implementation-defined output
18417         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
18418         behavior in that case.
18419         * Makefile.in (removenullpaths): Remove.
18420         (epaths-force): Rewrite to avoid the need for ‘echo’.
18421         (install-etc): Be clearer about escaping the shell metacharacters
18422         ‘\’ and ‘$’.
18423         * Makefile.in (install-arch-indep, install-etcdoc):
18424         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
18425         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
18426         * configure.ac, lib-src/rcs2log, make-dist:
18427         * src/Makefile.in (lisp.mk):
18428         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
18429         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
18430         if $foo can contain arbitrary characters.
18431         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
18432         * doc/lispref/two-volume.make (vol1.pdf):
18433         * test/etags/make-src/Makefile (web ftp publish):
18434         Use ‘printf’ rather than ‘echo -e’.
18436 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
18438         Allow numbers with different radixes to be yanked.
18440         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
18441         default base 10.
18443 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18445         Improve CHECK_IMPURE and PURE_P speedup
18447         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
18449 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
18451         Use events instead of chars to keep track of steps.
18453         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
18454         to keep track of steps.
18456 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18458         Fix --enable-gcc-warnings problem with older GCC
18460         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
18461         This is for building with --enable-gcc-warnings with
18462         GCC 4.6 through 5.0.
18464 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
18466         Fix vertical-motion in truncated lines that end in a stretch
18468         * src/indent.c (Fvertical_motion): Expect overshoot when point is
18469         beyond window margin and lines are truncated, even if we have a
18470         stretch at point.  (Bug#21468)
18472 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
18474         Avoid link-time errors due to inline functions
18476         * src/emacs.c: Include puresize.h, to avoid link-time errors in
18477         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
18478         inline functions.
18480 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
18482         * src/data.c (Faset): Fix last change.
18484 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18486         CHECK_IMPURE and PURE_P speedup
18488         * src/intervals.c (create_root_interval):
18489         Do CHECK_IMPURE only for strings; not needed for buffers.
18490         Prefer ! STRINGP to BUFFERP, for a tad more speed.
18491         * src/puresize.h (CHECK_IMPURE, PURE_P):
18492         Now inline functions instead of macros.
18493         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
18494         All callers changed.
18495         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
18496         All callers changed.
18498 2015-10-09  Noah Friedman  <friedman@splode.com>
18500         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
18502 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18504         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
18506         our after-change-function, rather than re-adding it if it was removed.
18508 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18510         * lisp/cedet/ede: Silence some compiler warnings
18512         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
18513         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
18514         (ede-apply-object-keymap, ede-reset-all-buffers)
18515         (ede-auto-add-to-target): Use dolist.
18516         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
18517         Use field names rather than initarg names in `oref'.
18518         (ede-load-project-file): Remove unused var `file'.
18519         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
18520         (ede-set): Remove unused var `a'.
18522         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
18523         (ede-project-autoload): Avoid the old-style "name" argument.
18524         (ede-emacs-find-matching-target): Use field names rather than initarg
18525         names in `oref'.
18527         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
18528         (ede-linux-load, ede-project-autoload): Avoid the old-style
18529         "name" argument.
18530         (ede-linux-find-matching-target): Use field names rather than initarg
18531         names in `oref'.
18533 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18535         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
18537 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18539         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
18540         indenting too far after ":-".
18542 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
18544         Update case-table and categories of recently added characters
18546         * lisp/international/characters.el: Update information about Latin
18547         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
18548         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
18549         blocks.  (Byug#21654)
18551 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
18553         * src/frame.c (adjust_frame_size): In minibuffer-only windows
18554         don't count minibuffer height twice.  (Bug#21643)
18556 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
18558         Avoid inflooping in font-lock
18560         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
18561         inhibit-field-text-motion around the call to
18562         line-beginning-position, to avoid inflooping.  (Bug#21615)
18564 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
18566         Refactor duplicated code; ensure default is in completions
18568         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
18569         New function.
18570         (reftex-extract-bib-entries): Use it.
18571         (reftex-extract-bib-entries-from-thebibliography): Use it.
18573 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
18575         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
18576         in the example.
18578 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
18580         * lisp/calc/calc.el: Silence byte-compiler warnings.
18581         (calc-scan-for-dels): Use ignore-errors.
18582         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
18583         (calc-read-key-sequence): Remove unused var `prompt2'.
18584         (calc-kill-stack-buffer): Remove unused var `buflist'.
18585         (calc): Remove unused var `oldbuf'.
18586         (calc-refresh): Use inhibit-read-only.
18587         (calc-can-abbrev-vectors): Declare.
18588         (calc-record): Remove unused var `mainbuf'.
18589         (math-sub-bignum): Remove unused var `sum'.
18590         (math-svo-c, math-svo-wid, math-svo-off): Declare.
18592 2015-10-08  Daiki Ueno  <ueno@gnu.org>
18594         Use g_clear_error instead of g_error_free
18596         * src/image.c: Define g_clear_error instead of g_error_free.
18597         (init_svg_functions): Resolve symbol g_clear_error instead of
18598         g_error_free.
18599         (svg_load_image): Use g_clear_error instead of g_error_free, to
18600         suppress GLib warnings when ERR is not set.  See bug#21641.
18602 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
18604         * src/image.c (image_size_error): Simplify.
18606 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
18608         Fix problems caught with --enable-gcc-warnings
18610         * src/image.c (lookup_rgb_color):
18611         * src/xfns.c (x_defined_color):
18612         * src/xterm.c (x_parse_color):
18613         Remove unused locals.
18615 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
18617         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
18619 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
18621         Format initial input uniformly
18623         * lisp/calc/calc.el (calc-digit-start-entry): New function.
18624         * lisp/calc/calc.el (calcDigit-start):
18625         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
18626         Use `calc-digit-start-entry' to format input.
18628 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
18630         Disable non-working pointerColor setting for X tooltip frame
18632         It generates a bunch of server traffic, but there's some bug wherein
18633         the new mouse cursor settings don't seem to get used.  In most
18634         situations the cursor isn't likely to be seen anyway, so it's not
18635         urgent to fix.
18637         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
18639 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
18641         Reduce some unnecessary X calls
18643         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
18644         call.  If border width is wanted, get it from the XGetGeometry call
18645         instead of calling XGetWindowAttributes on the same window.  Skip some
18646         X calls if we've already detected an error from the X server.
18647         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
18648         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
18650 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
18652         Reduce color allocation/query traffic in the TrueColor case
18654         When working with an X visual with TrueColor class, pixel values can
18655         be generated from the RGB values according to mask value provided by
18656         the server on connection.  Some of the image-handling code was already
18657         doing this.
18659         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
18660         lookup_rgb_color.
18661         (x_mutable_colormap): New function.
18662         * src/image.c (lookup_rgb_color): Move pixel composition code to
18663         x_make_truecolor_pixel.
18664         (x_kill_gs_process): Call x_mutable_colormap.
18665         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
18666         x_mutable_colormap.
18667         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
18668         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
18669         pixel value into RGB values directly, and don't send a request to the
18670         server.
18671         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
18672         value with x_make_truecolor_pixel.
18673         (x_copy_color): For an immutable color map, just return the provided
18674         pixel value.
18676 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
18678         Cache XParseColor results in the X display info structure
18680         With repeated lookups of foreground and background colors for multiple
18681         faces per frame, we issue a lot of redundant color name lookups to the
18682         X server, waiting every time for the response.  On a remote network
18683         with, say, 30ms round-trip time, this can add nearly a full second to
18684         creation of a new frame.
18686         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
18687         * src/image.c (get_spec_bg_or_alpha_as_argb):
18688         (xpm_init_color_cache, xpm_lookup_color):
18689         * src/xfns.c (x_defined_color):
18690         * src/xterm.c (x_parse_color): New function; caches color names not
18691         starting with "#" in the display-info structure.
18692         (x_delete_display): Delete the cache content.
18693         * src/xterm.h (struct color_name_cache_entry): New type.
18694         (x_parse_color): Declare.
18695         (struct x_display_info): Add a new field for the cache.
18697 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
18699         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
18701 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
18703         Fix segfault in image_size_error
18705         * src/image.c (image_size_error): Pass a Lisp string to
18706         image_error, not a C string.  (Bug#21641)
18708 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
18710         Highlight CSS variable definitions
18712         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
18713         CSS variables.  (Bug#21638)
18715 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
18717         * test/automated/tabulated-list-test.el: New file.
18718         Test bug#21639 and some basic functionality.
18720 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
18722         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
18723         Check if column can be sorted before trying.  (Bug#21639)
18725 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
18727         Add test for `self-insert-command' (bug#21633)
18729         * test/automated/cmds-tests.el: New file.
18731 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
18733         * src/window.c (resize_frame_windows): Don't set root window's
18734         top position when resizing horizontally.
18736 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
18738         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
18739         Document more possible values.
18741 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
18743         * lisp/textmodes/tex-mode.el: Use lexical-binding.
18745 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
18747         * lisp/indent.el (indent--default-inside-comment): New function.
18748         (indent-for-tab-command): Use it for `noindent' indentation.
18750 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
18752         Fix bug in GC_CHECK_MARKED_OBJECTS check
18754         * src/alloc.c (mark_object): Fix bug in checking code.
18755         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
18756         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
18757         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
18758         bucket.  The bug did not affect behavior either in the normal case
18759         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
18760         not have an internal error that a properly-written
18761         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
18763 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
18765         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
18766         Add prettified version for \\Bbb{Q}.
18768 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
18770         * test/automated/package-test.el (package-test-install-single):
18771         Add a test for bug#21625.
18773 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
18775         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
18776           not a package-desc object.  Also clarify documentation.  (Bug#21625)
18778 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
18780         Fix display of characters adjacent to ZWJ and ZWNJ
18782         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
18783         characters the same as directional formatting controls.
18784         (bidi_level_of_next_char): Include all Bn characters in rule L1,
18785         as mandated by the UBA.
18787 2015-10-06  Andreas Schwab  <schwab@suse.de>
18789         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
18790         number.  (Bug#21633)
18792 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
18794         * doc/lispref/objects.texi (Window Type): Add a cross reference.
18796         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
18798 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
18800         * lisp/language/misc-lang.el (composition-function-table):
18801         Fix entries for Arabic and Syriac.
18803 2015-10-05  Damien Cassou  <damien@cassou.me>
18805         Add first unit tests for auth-source.el
18807         * test/automated/auth-source-tests.el: New file.
18809 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
18811         Remove redundant redisplay code
18813         * src/xdisp.c (redisplay_internal, try_cursor_movement)
18814         (try_window_reusing_current_matrix, try_window_id): Remove
18815         redundant restrictions on redisplay optimizations based on the
18816         frame's 'redisplay' flag.  See
18817         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
18818         discussions.
18820 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
18822         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
18824 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
18826         Update tutorials/TUTORIAL.cn
18828         * etc/tutorials/TUTORIAL.cn: Improve translation.
18830 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18832         * src/macfont.m (macfont_encode_char, syms_of_macfont):
18833         Remove unused vars.
18835 2015-10-04  Stefan Merten  <stefan@merten-home.de>
18837         Pull in version numbers from rst.el upstream release.
18839         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
18840         (rst-svn-timestamp, rst-official-version)
18841         (rst-official-cvs-rev, rst-package-emacs-version-alist):
18842         Update version numbers.
18844 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
18846         * test/automated/coding-tests.el: New file.
18848 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
18850         Improve XEmacs compatibility of Tramp
18852         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
18853         Declare if it doesn't exist.
18854         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
18855         (redisplay): Make it an alias if it doesn't exist.
18857         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
18858         `file-remote-p' (due to XEmacs compatibility).
18860         * lisp/net/trampver.el (locate-dominating-file)
18861         (tramp-compat-replace-regexp-in-string): Autoload.
18862         (tramp-repository-get-version): Do not dupe byte-compiler.
18864 2015-09-02  K. Handa  <handa@gnu.org>
18866         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
18868         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
18869         Adjusted for the change of type of elements in the array
18870         MFLTGlyphString.glyphs.
18872 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
18873             Michael Heerdegen  <michael_heerdegen@web.de>
18875         shr: fix too long lines in rendered buffers (Bug#21012)
18877         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
18878         Correct calculation of available width.
18879         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
18880         is nil.
18882 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
18884         Restore blank line before next section, erroneously erased
18885         in my previous commit
18887         * etc/compilation.txt (symbol ant): Add an additional trailing blank
18888         line to this section, so that there are two of them immediately before
18889         the next section.
18891 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
18893         Support MSW filename style for ant compilation error regexp
18895         * etc/compilation.txt (symbol ant):
18896         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
18897         Support MSW filename style.
18899 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
18901         * nt/INSTALL: Minor spelling and quote fixes.
18903         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
18905 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
18907         Maintain ordering of JSON object keys by default
18909         * lisp/json.el (json-object-type): Mention order handling in doc-string.
18910         (json--plist-reverse): New utility function.
18911         (json-read-object): Maintain ordering for alists and plists.
18912         (json-pretty-print): Ensure that ordering is maintained.
18914         * test/automated/json-tests.el (test-json-plist-reverse): New test for
18915         `json--plist-reverse'.
18916         (json-read-simple-alist): Update test to accommodate for changes in
18917         `json-read-object'.
18919         * etc/NEWS: Document the new behavior of the pretty printing functions.
18921 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
18923         * src/coding.c (complement_process_encoding_system): Revert last change.
18925 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
18927         * admin/MAINTAINERS: Add entry for Ulf Jasper.
18929 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
18931         Doc fix for `defmacro'
18933         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
18935 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
18937         More validatation of coding systems
18939         * src/fileio.c (Finsert_file_contents): Remove redundant
18940         coding-system check.
18941         (choose_write_coding_system): Likewise.
18942         * src/coding.c (complement_process_encoding_system): Check argument
18943         for valid coding system.
18945 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
18947         Avoid crashes in coding_inherit_eol_type
18949         * src/coding.c (coding_inherit_eol_type): Check the validity of
18950         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
18951         (Bug#21602)
18953 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
18955         More validatation of coding system in 'write-region'
18957         * src/coding.c (choose_write_coding_system): More validation of
18958         coding-system from various sources.  Suggested by Andreas Schwab
18959         <schwab@linux-m68k.org>.  (Bug#21602)
18961 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
18963         Avoid crashes due to invalid coding-system
18965         * src/fileio.c (choose_write_coding_system)
18966         (Finsert_file_contents): Check validity of coding-system-for-write
18967         and coding-system-for-read bound by the caller.  (Bug#21602)
18969 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
18971         Adapt to new prettify-symbols-unprettify-at-point default
18973         * etc/NEWS: Mention that unprettication of symbol at point is off
18974         by default.
18976 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
18978         Revert my two recent process.c changes
18980         Revert "Improve last commit to process.c" and "Remove callback-handled
18981         channels from Available set" because they did not fix bug#21313.
18983         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
18984         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
18986 2015-10-02  Markus Triska  <triska@metalevel.at>
18988         * lisp/progmodes/prolog.el: Update and extend operator table.
18989         (prolog-smie-grammar): Add multifile, public etc.
18991 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18993         Allow autogen even when Git is not installed
18995         * autogen.sh: Test ‘git status’ before trying to use Git.
18997 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
18999         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
19000         Adjust lto/lfrom when we have uncommitted changes.
19002 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
19004         Fix problems found by clang 3.5.0
19006         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
19007         * src/font.c (font_parse_family_registry):
19008         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
19010 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
19012         * nt/INSTALL: Update instructions for running autogen.sh.
19014         * nt/INSTALL: Point to ezwinports for libXpm binaries.
19016 2015-10-02  Daniel Colascione  <dancol@dancol.org>
19018         Fix winner in cl-lib not loaded case
19020         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
19021         without requiring CL
19023 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
19025         Fix a few problems with directed quotes
19027         This is in response to a problem report by Kaushal Modi in:
19028         http://bugs.gnu.org/21588#25
19029         * lisp/cedet/mode-local.el (describe-mode-local-overload):
19030         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
19031         * lisp/info-xref.el (info-xref-check-all-custom):
19032         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
19033         Prefer directed to undirected single quotes in diagnostics.
19035 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
19037         Revert "Attempt to fix slow redisplay caused by last changes"
19039         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
19040         (try_cursor_movement): Don't relax requirements for redisplay
19041         optimizations for the selected frame.  (Bug#21597)
19043         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
19045 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
19047         Fix slow redisplay when daemon frame exists
19049         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
19050         when looking for frames that need to be redisplayed.  (Bug#21597)
19052 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
19054         Attempt to fix slow redisplay caused by last changes
19056         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
19057         (try_cursor_movement): Relax requirements for redisplay
19058         optimizations for the selected frame.  (Bug#21597)
19060 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
19062         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
19063         Improve doc string.
19065 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
19067         * lisp/minibuffer.el (minibuffer-completion-help):
19068         Set default base-size, in case completion table does not set it.
19070 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
19072         Fix GUD display of GDB output with non-ASCII text
19074         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
19075         (gdb-mi-decode): New function.
19076         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
19077         decode octal escapes in GDB output.  (Bug#21572)
19079 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
19081         * nt/INSTALL: Document where to find XPM support files.
19083 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
19085         Un- and re-prettification are not exclusive
19087         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
19088         Re-apply prettification to previous symbol also when unprettifying
19089         next one.
19091 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
19093         Don't unprettify symbol at point by default
19095         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
19096         Default to disabled (nil).
19098 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
19100         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
19101         Support unprettifying when point is after a symbol.
19103         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
19105 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
19107         Avoid assertion violations in push_prefix_prop
19109         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
19110         a line that has a line-prefix defined starts with an image.  (Bug#21428)
19112 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
19114         Disable some display optimizations when frames need redisplay
19116         These optimizations were previously disabled by the
19117         windows_or_buffers_changed flag, which now is not set
19118         when only some frames need to be redrawn.
19119         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
19120         'redisplay' flag is set.
19121         (try_window_reusing_current_matrix, try_window_id)
19122         (try_cursor_movement): Disable these optimizations when the
19123         frame's 'redisplay' flag is set.
19125 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
19127         Don't modify buffer by unprettification
19129         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
19130         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
19131         modify buffer when setting/removing custom prettify-symbols-start/end
19132         text properties.  Add them to font-lock-extra-managed-props, too.
19134 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
19136         Try to avoid redisplaying all frames when creating a new one
19138         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
19139         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
19140         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
19141         * src/frame.c (x_set_screen_gamma): Set the specific frame's
19142         `redisplay' bit rather than windows_or_buffers_changed.
19144         * src/window.c (apply_window_adjustment): Remove redundant setting of
19145         windows_or_buffers_changed.
19147         * src/xdisp.c (redisplay_internal): Set the specific frame's
19148         `redisplay' bit rather than update_mode_lines in response to
19149         cursor_type_changed.
19150         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
19151         (AINC): Adjust accordingly.
19153 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
19155         Implement unprettification of symbol at point
19157         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
19158         symbol at point.
19159         (prettify-symbols--current-symbol-bounds): New variable.
19160         (prettify-symbols--post-command-hook): New function.
19161         (prettify-symbols-unprettify-at-point): New defcustom.
19162         (prettify-symbols-mode): Use it.
19163         (prettify-symbols--compose-symbol): Use them.
19165 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
19167         * src/macfont.m (mac_font_descriptor_supports_languages):
19168         Regard "zh" as synonym of "zh-Hans".
19170 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
19172         Work around crash when displaying etc/HELLO on OS X 10.11
19174         * src/macfont.m (mac_font_get_weight)
19175         (mac_font_descriptor_get_adjusted_weight): New functions.
19176         (macfont_store_descriptor_attributes): Adjust weight.
19178 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
19180         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
19182 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
19184         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
19185         of the columns.
19187 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
19189         Use unar and lsar to handle RAR archives in arc-mode
19191         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
19192         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
19194 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
19196         Clarify :create in auth-source's docs
19198         * lisp/gnus/auth-source.el (auth-source-search):
19199         Clarify :create's meaning.
19201 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
19203         Avoid empty -path arguments in rgrep
19205         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
19206         the list produced according to grep-find-ignored-directories,
19207         before passing it to Find/Grep invocation.  (Bug#21548)
19209 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
19211         Clarify documentation of pos-visible-in-window-p
19213         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
19214         t for POS.  See
19215         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
19216         for the original report.
19218         * doc/lispref/windows.texi (Window Start and End): Clarify the
19219         meaning of t for the POSITION argument of pos-visible-in-window-p.
19221 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
19223         * lisp/progmodes/prolog.el: Fix various indentation cases.
19224         (prolog-operator-chars): New const (add \\).
19225         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
19226         (prolog-smie-rules): Add rules according to bug#21526.
19228 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
19230         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
19231         (sh-indent-after-continuation): Add new value `always' (bug#17620)
19232         (sh-smie-sh-rules): Remove old handling of continued lines.
19233         (sh-smie--indent-continuation): New function.
19234         (sh-set-shell): Use it.
19236 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
19238         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
19239         Remove redundant :group keyword args.
19240         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
19241         Remove variables.
19242         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
19243         turn them into compile-time variables.
19244         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
19245         Add rules for break, continue, return, global, and persistent.
19246         Refine the rule for "until".
19247         (octave-smie--funcall-p, octave-smie--end-index-p)
19248         (octave-smie--in-parens-p): New functions.
19249         (octave-smie-backward-token, octave-smie-forward-token): Use them to
19250         distinguish the "enumeration" function and the "end" index from
19251         their corresponding keywords.
19252         (octave--block-offset-keywords): New constant.
19253         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
19254         parsing.
19255         (octave-reserved-words): Redefine using octave-smie-grammar.
19256         (octave-font-lock-keywords): Use octave-smie--funcall-p and
19257         octave-smie--end-index-p.
19259 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
19261         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
19263 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
19265         * nt/INSTALL: Remove references to GTK site.
19266         That site no longer offers Windows downloads.
19268 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
19270         * nt/INSTALL: Add instructions for installing Git.
19272 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
19274         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
19275         use colors.  Suggested by Eli Zaretskii.
19277 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
19279         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
19280         not supporting 256 above colors (bug#21557).
19282 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
19284         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
19286         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
19288 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
19290         Add documentation for seq.el
19292         * doc/lispref/sequences.texi: Add documentation regarding extending
19293         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
19294         seq-do and seq-map.
19296 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
19298         Better documentation for seq-some
19300         * doc/lispref/sequences.texi:
19301         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
19302         guarantee that the returned value is the first non-nil value that
19303         resulted from applying the predicate.
19305 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
19307         * lisp/arc-mode.el: Sharp-quote function arguments.
19309 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
19311         Avoid redisplay error in ediff-regions-wordwise
19313         * lisp/vc/ediff-util.el
19314         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
19315         set before activating it.  (Bug#21567)
19317 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
19319         Another attempt to fix crashes due to prematurely freed faces
19321         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
19322         faces for as long as we might have desired matrices that reference
19323         those faces.  (Bug#21428)
19325 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
19327         Add auctex development list email address
19329 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
19331         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
19333 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
19335         Improve wrapfig package support and caption parsing
19337         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
19338         Correct description string and add wraptable environment.
19339         (reftex-default-context-regexps): Improve caption regexp.
19341 2015-09-28  Anders Lindgren  <andlind@gmail.com>
19343         Respect value of frame_resize_pixelwise when handling fullscreen state
19345         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
19346         setting size increments.
19348 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
19350         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
19352 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
19354         Add prettify-symbols-alist for js-mode
19356         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
19357         (js-mode): Use it.
19359 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
19361         * nt/subdirs.el: File deleted (no longer used).
19363 2015-09-26  Alan Mackenzie  <acm@muc.de>
19365         Fix follow-scroll-up/down, making them replacements for scroll-up/down
19367         1. Allow point to move between follow windows in scroll operations.
19368         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
19369         when EOB was isolated in the last follow window.
19371         * lisp/follow.el (follow-fixed-window): New variable.
19372         (follow-get-scrolled-point): New function.
19373         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
19374         Reformulate the code.  Put `scroll-command' properties on the functions.
19375         Correct minor errors in ...-down's doc string and code.
19376         (follow-calc-win-end): Amend incomplete doc string.  Use
19377         `pos-visible-in-window-p' to check whether EOB is in the window.
19378         (follow-estimate-first-window-start): Correct an off-by-1 error.
19379         (follow-adjust-window): Add handling for explicit scrolling operations.
19381 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
19383         * admin/MAINTAINERS: Add self, plus list some more files
19384         sans maintaners.
19386 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
19388         New DWIM commands for changing letter-case
19390         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
19391         New functions.  (Bug#21501)
19393 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
19395         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
19397 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
19399         Make face realization be more frame-specific
19401         * src/frame.h (struct f): New flag face_change.
19402         * src/xfaces.c (Finternal_make_lisp_face)
19403         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
19404         (update_face_from_frame_parameter): Set the face_change flag only
19405         for the frame whose faces are affected.
19406         * src/xdisp.c (init_iterator): If a frame's face_change flag is
19407         set, free faces only on that frame.
19408         (redisplay_internal): Disable "display optimization 1" if the
19409         frame's face_change flag is set.
19410         (redisplay_window): Don't allow skipping a window's redisplay if
19411         its frame's face_change flag is set.
19412         * src/frame.c (x_set_screen_gamma): Instead of calling
19413         Fclear_face_cache, call clear_face_cache and set
19414         windows_or_buffers_changed to a non-zero value.  This avoids
19415         setting the global face_change flag that triggers face realization
19416         on all frames and thorough redisplay of all of them.
19418         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
19419         clear face cache if the selected frame is a GUI frame.
19421 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
19423         Remove font-latex specific check
19425         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
19426         Use syntax-ppss data to identify verbatim contents.
19428 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
19430         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
19431         Fix some false negatives.
19433 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
19435         Reorder Windows version in Emacs manifests
19437         * nt/emacs-x64.manifest:
19438         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
19439         highest.
19441 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
19443         Update Emacs manifest files for Windows 10
19445         * nt/emacs-x86.manifest:
19446         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
19448 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
19450         Avoid non-ASCII decoding errors in C src files
19452         * src/nsterm.m:
19453         * src/lisp.h:
19454         * src/editfns.c:
19455         * src/doprnt.c: Add 'coding' cookies -- these files include
19456         Unicode characters and should be decoded as UTF-8.
19458 2015-09-25  Alan Mackenzie  <acm@muc.de>
19460         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
19462         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
19463         amend to match current modes and functions.
19464         (edebug-set-initial-mode): Uncomment and change from setting a defun's
19465         `edebug-initial-mode''s property to setting the variable
19466         `edebug-initial-mode'.
19467         (top level): Create new binding C-x C-a C-m for
19468         `edebug-set-initial-mode'.
19470         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
19471         `edebug-set-initial-mode' and its new key binding.
19472         (Edebug Options): Mention the new command in the pertinent place.
19474         * etc/NEWS: Write entry for this change.
19476 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
19478         Avoid non-ASCII decoding errors in Texinfo files
19480         * doc/misc/tramp.texi:
19481         * doc/lispref/strings.texi:
19482         * doc/lispref/positions.texi:
19483         * doc/lispref/help.texi:
19484         * doc/lispref/functions.texi:
19485         * doc/lispintro/emacs-lisp-intro.texi:
19486         * doc/emacs/text.texi:
19487         * doc/emacs/modes.texi:
19488         * doc/emacs/mini.texi:
19489         * doc/emacs/display.texi:
19490         * doc/emacs/custom.texi:
19491         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
19492         Unicode characters and should be decoded as UTF-8.
19493         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
19494         apostrophe unnecessarily.
19496 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
19498         Merge from gnulib
19500         This incorporates:
19501         2015-09-25 c-ctype: rewrite to use inline functions
19502         2015-09-24 maint: add coding cookies to non-ASCII sources
19503         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
19504         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
19505         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
19506         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
19507         * lib/set-permissions.c:
19508         Copy from gnulib.
19510 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
19512         Update publicsuffix.txt from upstream
19514         * etc/publicsuffix.txt: Update from
19515         https://publicsuffix.org/list/effective_tld_names.dat
19516         dated 2015-09-24 17:29:21 UTC.
19518 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
19520         Prevent timers from messing up TTY menus
19522         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
19523         the TTY menu is open.  (Bug#21530)
19525 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
19527         No need to mention K&R C in c-mode intro
19529 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
19531         Fix recent bootstrap problems
19533         * src/syntax.c (parse_sexp_propertize): Fix last fix.
19534         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
19535         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
19537 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
19539         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
19541 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
19543         Properly quote nested xml comments (Bug#6267) (Bug#20001)
19545         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
19546         (nxml-mode): Set comment-quote-nested-function.
19548 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
19550         Allow major-modes full control over quoting nested comments
19552         * lisp/newcomment.el (comment-quote-nested-function): New variable.
19553         (comment-quote-nested-default): New function.
19554         (comment-quote-nested): Use `comment-quote-nested-function'.
19556 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
19558         Prefer CALLN in a few more places
19560         * src/macfont.m (macfont_set_family_cache):
19561         * src/nsterm.m (append2):
19562         * src/xterm.c (x_cr_export_frames):
19563         Prefer CALLN to allocating the arg arrays by hand.
19565 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
19567         Adapt file-notify-test02-events test case
19569         * test/automated/file-notify-tests.el (file-notify-test02-events):
19570         Create a new watch for every test.
19572 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
19574         Continue gfilenotify.c implementation of missing parts
19576         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
19577         `gfile-add-watch' call.
19578         (file-notify-rm-watch): Modify `file-notify-descriptors' only
19579         after calling the low level functions.
19581         * src/gfilenotify.c (dir_monitor_callback): Check, whether
19582         event_type is expected.
19583         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
19584         (Fgfile_rm_watch): Fix typo.
19585         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
19587 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
19589         * src/syntax.c (parse_sexp_propertize): Handle spurious
19590         e_property_truncated flag.
19591         (update_syntax_table_forward): Remove invalid assertion.
19593 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
19595         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
19596         space display spec on text-mode terminals, by calling
19597         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
19598         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
19599         test for a GUI frame.
19601 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
19603         Move let-when-compile to lisp-mode.el
19605         This fixes the bootstrapping problem of `let-when-compile' using
19606         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
19608 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19610         * lisp/url/url-http.el (url-http-parse-headers): Do not
19611         automatically include Authorization header in redirect.
19612         (Bug#21350)
19614 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
19616         Clarify documentation of ':relative-width'
19618         * doc/lispref/display.texi (Specified Space): Document that
19619         ':relative-width' is only supported on GUI frames.
19621 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
19623         Fix 'current-column' in presence of :relative-width
19625         * src/indent.c (check_display_width): Support ':relative-width'
19626         in a display spec that specifies a stretch glyph.  (Bug#21533)
19628 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
19630         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
19632         ... to conform better to CONTRIBUTE guidelines.
19634 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
19636         * lisp/progmodes/prolog.el: Fix indentation of empty line
19638         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
19639         `empty-line-token' element.
19640         (smie-indent-empty-line): New function.
19641         (smie-indent-functions): Add it.
19643         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
19644         behavior and use the new `empty-line-token' element (bug#21526).
19645         (prolog-mode-variables): Fix comment-start-skip setting to match
19646         comment-start.
19648         * test/indent/prolog.prolog: Add nested indentation tests.
19650         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
19651         comment-start-skip not to misuse submatch 1.
19653 2015-09-22  Alan Mackenzie  <acm@muc.de>
19655         Make description of `edebug-initial-mode' user friendly
19657         Fixes bug#21365.
19659         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
19660         description of `edebug-initial-mode' from that of its implementation
19661         to that of its visual effect and use.  Move the paragraph higher up.
19663 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
19665         lisp/progmodes/gud.el (gud-format-command): Fix last commit
19667         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
19668         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
19670 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
19672         Improve last commit to process.c
19674 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
19676         Implement gfile-valid-p
19678         * lisp/filenotify.el (file-notify-callback): Fix typo.
19679         (gfile-valid-p): Remove defalias.
19681         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
19682         the file or directory to be watched is deleted.
19683         (Fgfile_add_watch): Make watch_object a triple.
19684         (Fgfile_rm_watch): Check, whether watch is cancelled already.
19685         (Fgfile_valid_p): New defun.
19686         (syms_of_gfilenotify): Declare Sgfile_valid_p.
19688 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
19690         Remove callback-handled channels from Available set
19692         * src/process.c (wait_reading_process_output): Remove channel from
19693         Available set if it is handled by a callback, e.g., dbus or
19694         inotify (bug#21313).
19696 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
19698         Use lunate epsilon for TeX \epsilon
19700         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
19701         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
19702         \epsilon to use GREEK LUNATE EPSILON SYMBOL
19704 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
19706         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
19708         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
19709         rather than outermost paren (bug#21526).
19711 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
19713         Improve git diff hunk headers for .el, .texi
19715         Problem reported by Alan Mackenzie in:
19716         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
19717         * .gitattributes (*.el, *.texi): New patterns.
19718         * autogen.sh: Configure diff.elisp.xfuncname and
19719         diff.texinfo.xfuncname if using Git.
19721 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
19723         Don't rely on defaults in decoding UTF-8 encoded Lisp files
19725         * lisp/replace.el:
19726         * lisp/textmodes/rst.el:
19727         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
19729 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
19731         Clarify or replace a few \u escapes
19733         * doc/lispref/nonascii.texi (Character Properties)
19734         More-detailed commentary for \u escapes.
19735         * lisp/progmodes/python.el (python--prettify-symbols-alist):
19736         * lisp/replace.el (query-replace-from-to-separator):
19737         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
19738         (rst-mode-syntax-table):
19739         * lisp/whitespace.el (whitespace-display-mappings):
19740         Prefer actual character to \u escape when this makes the code
19741         easier to follow in the usual case where Unicode chars can be
19742         displayed.
19744 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
19746         Pacify GCC -Wmaybe-uninitialized in xdisp.c
19748         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
19749         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
19750         charpos.  The loop should always execute at least once anyway.
19752 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
19754         Signal error on invalid regexp
19756         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
19757         Signal an error when the user tries searching with a regexp
19758         matching the empty string.
19760 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
19762         Another fix of file-notify-tests for w32notify
19764         * test/automated/file-notify-tests.el (file-notify-test02-events):
19765         Further adaptation for w32notify: reduce the number of expected
19766         'changed' events.  (Bug#21435)
19768 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
19770         Adapt tests and manual for w32notify
19772         * doc/lispref/os.texi (File Notifications): w32notify does not
19773         send `attribute-changed' events.
19775         * test/automated/file-notify-tests.el (file-notify--test-with-events):
19776         Simplify parameters.  Adapt all callees.
19777         (file-notify-test02-events): w32notify does not send
19778         `attribute-changed' events.
19779         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
19780         Do not skip in case of w32notify.  Simply ignore this part of the test.
19782 2015-09-21  Dima Kogan  <dima@secretsauce.net>
19784         Fix setting breakpoints when remote-debugging
19786         * lisp/progmodes/gud.el (gud-format-command): Send localized file
19787         names to the debugger running on the remote.  (Bug#13304)
19789 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
19791         Better docstring and parameter name for seq-find
19793         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
19794         the parameter `sentinel' to `default'.
19796         * doc/lispref/sequences.texi (Sequence Functions): Update the
19797           documentation for `seq-find' accordingly.
19799 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
19801         Avoid infinite recursion while displaying box face
19803         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
19804         the previous string/buffer character position under bidi
19805         iteration.  (Bug#21428)
19807 2015-09-21  Anders Lindgren  <andlind@gmail.com>
19809         Keep upper edge unchanged when changing size of NS frame
19811         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
19812         (Bug#21415).
19814 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
19816         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
19817         (prolog-smie-rules): Accommodate standard if/then/else special
19818         indentation.
19819         (prolog-mode): Add . to electric-indent-chars.
19820         (prolog-electric--if-then-else): Re-indent the line before adding space
19821         after the new char (bug#21526).
19823 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
19825         Add prettify symbols to python-mode
19827         * lisp/progmodes/python.el (python-prettify-symbols-alist):
19828         New variable.
19829         (python-mode): Use it
19831 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
19833         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
19835 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
19837         (compilation-error-regexp-alist-alist): Tone down guile-file
19839         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
19840         Make guile-file a bit less enthusiastic (bug#21496).
19842 2015-09-20  Drew Csillag  <drew@thecsillags.com>
19844         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
19845         Fix m4_* highlighting.
19847         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
19848         of commands when they have a "m4_" prefix.
19850 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
19852         '.' -> `.' in doc string
19854         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
19855         individual chars with grave quotes instead of straight quotes, as
19856         this works better when they are translated to curved quotes.
19858 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
19860         Improve file notifications, especially for Tramp
19862         * doc/lispref/files.texi (Magic File Names):
19863         Mention `file-notify-valid-p'.
19865         * doc/lispref/os.texi (File Notifications):
19866         Describe `file-notify-valid-p'.
19868         * etc/NEWS: Add `file-notify-valid-p'.
19870         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
19871         Improve implementation.
19872         (tramp-gvfs-monitor-file-process-filter): Rename from
19873         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
19874         process if appropriate.
19876         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
19877         Improve implementation.
19878         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
19879         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
19880         if appropriate.
19881         (tramp-sh-inotifywait-process-filter): Rename from
19882         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
19883         appropriate.
19885         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
19886         Use `delete-process'.
19887         (tramp-handle-file-notify-valid-p): Check also, that file or
19888         directory to be watched still exists.
19890         * test/automated/file-notify-tests.el (file-notify--test-timeout):
19891         New defun.  Use it at all places a timeout is needed.
19892         (file-notify--test-cleanup): Delete directories recursively.
19893         Cleanup also Tramp connections.
19894         (file-notify-test02-events): Add tests for `attribute-change'.
19895         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
19896         Add tests for `file-notify-rm-watch'.
19898 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
19900         Use %s to format strings instead of splicing them
19902         If FOO might contain quotes that are part of a file or variable
19903         name, the quotes should not be translated when showing FOO’s name
19904         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
19905         is not quite right, as it would translate FOO’s quotes.
19906         Change it to (message "%s: bar" FOO) instead.
19907         * lisp/allout.el (allout-process-exposed):
19908         * lisp/calc/calc-ext.el (calc-do-prefix-help):
19909         * lisp/calc/calc-store.el (calc-store-into):
19910         * lisp/calendar/todo-mode.el (todo-category-completions):
19911         * lisp/cedet/semantic/complete.el (semantic-completion-message):
19912         * lisp/org/ob-latex.el (convert-pdf):
19913         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
19914         * lisp/org/ox-latex.el (org-latex-compile):
19915         * lisp/org/ox-man.el (org-man-compile):
19916         * lisp/org/ox-odt.el (org-odt--export-wrap):
19917         * lisp/org/ox-texinfo.el (org-texinfo-compile):
19918         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
19919         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
19920         (verilog-signals-combine-bus, verilog-read-defines)
19921         (verilog-getopt-file, verilog-expand-dirnames)
19922         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
19923         * lisp/term/ns-win.el (ns-spi-service-call):
19924         Use %s to avoid translating quotes of file names etc. in diagnostics.
19926 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
19928         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
19929         (js-mode): Don't set syntax-begin-function.
19931 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
19933         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
19934         syntax-begin-function is a symbol.
19936 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
19938         Improve documentation of 'run-at-time'
19939         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
19940         In particular, don't refer to 'diary-entry-time', because it is
19941         unavailable until diary-lib is loaded.  Also, refer to
19942         'timer-duration-words', not 'timer-duration', as the latter's doc
19943         string says nothing about the accepted strings.
19945 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
19947         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
19949 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
19951         Repair pdbtrack remote file tracking
19952         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
19953         Rectify pdbtrack so it follows transitions from one remote source
19954         file to the next.
19956 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
19958         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
19960 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
19962         Adapt vc-src to the old-new vc-checkin API
19963         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
19964         additional optional parameter.
19966 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
19968         Add overflow module to CSS property list
19969         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
19970         from CSS Overflow Module Level 3.
19972 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
19974         Fix documentation of "C-u C-x v v"
19975         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
19976         documentation of "C-u C-x v v" match what the code does.
19978         Resurrect the ability to specify a revision in vc-next-action
19979         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
19980         * lisp/vc/vc-dav.el (vc-dav-checkin):
19981         * lisp/vc/vc-git.el (vc-git-checkin):
19982         * lisp/vc/vc-hg.el (vc-hg-checkin):
19983         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
19984         an additional optional argument, the revision to checkin.
19985         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
19986         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
19987         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
19988         a revision to checkin.
19989         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
19990         revision when checking in files.
19991         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
19992         for the details.
19994 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
19996         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
19997         (verilog-decls-princ, verilog-modport-princ)
19998         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
20000 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
20002         Fix the routine for help on Calc's prefixes
20003         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
20004         (calc-do-prefix-help): Use `read-char' to determine the next Calc
20005         command.
20007 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
20009         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
20010         (font-lock-fontify-block): Don't let-bind it.
20011         (font-lock-compile-keywords): Don't use it.
20012         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
20013         start one slot earlier, instead.
20014         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
20015         Don't declare.
20016         (syntax-ppss): Don't use it either.
20017         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
20018         from docstring.
20019         * doc/emacs/display.texi (Font Lock): Don't mention
20020         font-lock-beginning-of-syntax-function.
20021         * doc/lispref/modes.texi (Font Lock Basics): Update description of
20022         font-lock-defaults.
20023         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
20024         * lisp/loadhist.el (unload-feature-special-hooks):
20025         Remove font-lock-beginning-of-syntax-function.
20026         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
20027         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
20028         font-lock-beginning-of-syntax-function.
20030 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
20032         Backslash cleanup in Elisp source files
20033         This patch should not change behavior.  It typically omits backslashes
20034         where they are redundant (e.g., in the string literal "^\$").
20035         In a few places, insert backslashes where they make regular
20036         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
20037         "^\\*", which has the same effect as a regular expression.
20038         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
20039         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
20040         RCS IDs, as that makes it clearer that the backslash is intended.
20042         Some more minor backslash fixes
20043         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
20044         * test/automated/info-xref.el (info-xref-test-write-file):
20045         Double backslashes in strings.
20047         Fix several backslash typos in Elisp strings
20048         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
20049         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
20050         (todo-reset-done-string, todo-reset-comment-string)
20051         (todo-reset-highlight-item):
20052         * lisp/erc/erc-networks.el (erc-networks-alist):
20053         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
20054         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
20055         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
20056         (nntp-telnet-shell-prompt):
20057         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
20058         * lisp/image-dired.el (image-dired-rotate-original):
20059         (image-dired-get-exif-file-name):
20060         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
20061         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
20062         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
20063         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
20064         * lisp/net/shr-color.el (shr-color->hexadecimal):
20065         * lisp/org/org-bibtex.el (org-bibtex-fields):
20066         * lisp/org/org-docview.el (org-docview-export):
20067         * lisp/org/org-entities.el (org-entities):
20068         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
20069         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
20070         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
20071         (ebnf-style-database):
20072         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
20073         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
20074         * lisp/progmodes/sql.el (sql-product-alist):
20075         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
20076         (verilog-error-font-lock-keywords)
20077         (verilog-assignment-operator-re):
20078         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
20079         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
20080         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
20081         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
20082         For example, to get the regular expression ‘\.’ use the string
20083         literal "\\.", not "\." (which is equivalent to ".").
20084         * lisp/emulation/viper-util.el (viper-glob-unix-files):
20085         Remove stray ‘\j’ from string.
20086         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
20087         (nntp-telnet-shell-prompt):
20088         Treat > like $ when matching a shell prompt.
20089         * lisp/progmodes/make-mode.el (makefile-browse):
20090         Properly quote a diagnostic.
20092         Fix minor quoting problems in diagnostics
20093         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
20094         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
20095         Follow text-quoting-style in diagnostic, and quote a file name.
20097 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
20099         * doc/lispref/frames.texi (Cursor Parameters):
20100         Document 'x-stretch-cursor'.
20102 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
20104         Omit unnecessary \ before paren in C docstrings
20105         Although \( is needed in docstrings in Elisp code, it is not needed in
20106         docstrings in C code, since C function definitiions do not start with
20107         a parenthesis.  The backslashes made the docstrings a bit harder to
20108         read and to format in columns.  Also, some C docstrings had ( in
20109         column 1 and this did not appear to be causing any problems.  So,
20110         simplify C docstrings by replacing \( with ( and \) with ).
20112         A few more minor quoting fixes in a script and a text file
20114         Minor quoting fixes in scripts and doc
20115         Prefer straight quotes in random script files, as they are not
20116         converted.  Prefer grave quotes in a couple of places in the manual
20117         that were missed earlier, as these quotes are converted.
20119         Minor backslash fixes in manuals and scripts
20120         * Makefile.in (install-arch-indep):
20121         * admin/charsets/compact.awk:
20122         * admin/charsets/gb180302.awk (gb_to_index):
20123         * admin/charsets/gb180304.awk (gb_to_index):
20124         Avoid undefined behavior in Awk regular expression backslashes.
20125         * doc/misc/efaq.texi (Matching parentheses):
20126         Omit unnecessary backslashes.
20127         * doc/misc/gnus-faq.texi (FAQ 5-8):
20128         Avoid undefined behavior in suggested sed backslash usage.
20130         Add -Wswitch to --enable-gcc-warnings
20131         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
20132         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
20133         * lib-src/etags.c (main, consider_token, C_entries):
20134         * src/coding.c (encode_invocation_designation):
20135         * src/data.c (Ftype_of):
20136         * src/eval.c (Fdefvaralias, default_toplevel_binding)
20137         (Fbacktrace__locals, mark_specpdl):
20138         * src/lisp.h (record_xmalloc):
20139         * src/syntax.c (scan_lists, scan_sexps_forward):
20140         * src/window.c (window_relative_x_coord):
20141         * src/xdisp.c (push_it, pop_it):
20142         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
20143         Error out or do nothing (as appropriate) if a switch statement
20144         with an enum value does not cover all of the enum.
20145         * src/dispextern.h (struct iterator_stack_entry.u.comp):
20146         Remove unused member discovered by using -Wswitch.
20147         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
20148         * src/vm-limit.c (check_memory_limits):
20149         Simplify warning-diagnostic computation by using a table.
20151         etags ‘fatal’ function is now printf-like
20152         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
20153         Also, now static; not clear why it needed to be extern.
20154         (verror): New function, with most of the old contents of ‘error’.
20155         (fatal, error): Use it.
20157 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
20159         More adaptations in file-notify-tests.el
20160         * test/automated/file-notify-tests.el
20161         (file-notify-test05-dir-validity): Skip for w32notify in
20162         batch-mode.  (Bug#21432)
20164 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
20166         Adapt test in file-notify-tests.el
20167         * test/automated/file-notify-tests.el
20168         (file-notify-test04-file-validity): Skip for w32notify in
20169         batch-mode.  Add test lost last commit.
20171 2015-09-16  Dima Kogan  <dima@secretsauce.net>
20173         winner no longer holds on to dead frames
20174         * lisp/winner.el (winner-change-fun): Cull dead frames.
20175         This prevents a potentially massive memory leak.  See:
20176         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
20178 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
20180         Use common report_file_notify_error function
20181         * src/fileio.c (report_file_notify_error): New function.
20182         * src/inotify.c (report_inotify_error): Remove function.
20183         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
20184         (Finotify_rm_watch): Use report_file_notify_error.
20185         * src/lisp.h (report_file_notify_error): Declare external function.
20186         * src/w32notify.c (report_w32notify_error): Remove function.
20187         (Fw32notify_add_watch, Fw32notify_rm_watch):
20188         Use report_file_notify_error.
20190 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
20192         Fix documentation.
20193         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
20194         the documentation of the root mean square.
20196 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
20198         Remove tool_bar_redisplayed_once and associated code.
20199         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
20200         * src/frame.c (make_frame, x_set_font): Remove initialization of
20201         f->tool_bar_redisplayed_once.
20202         * src/w32fns.c (x_change_tool_bar_height):
20203         * src/xfns.c (x_change_tool_bar_height): Don't check for
20204         f->tool_bar_redisplayed_once.
20205         * src/xdisp.c (redisplay_internal): Remove handling of
20206         f->tool_bar_redisplayed_once.
20208 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
20210         Restore some of the quoting in the manuals
20211         * doc/lispref/windows.texi (Coordinates and Windows)
20212         (Coordinates and Windows):
20213         * doc/lispref/variables.texi (Lexical Binding)
20214         (File Local Variables):
20215         * doc/lispref/text.texi (Format Properties):
20216         * doc/lispref/symbols.texi (Symbol Components):
20217         * doc/lispref/strings.texi (Creating Strings):
20218         * doc/lispref/sequences.texi (Sequence Functions):
20219         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
20220         (Search and Replace):
20221         * doc/lispref/processes.texi (Bindat Spec):
20222         * doc/lispref/os.texi (Idle Timers):
20223         * doc/lispref/objects.texi (Basic Char Syntax):
20224         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
20225         * doc/lispref/nonascii.texi (Character Properties):
20226         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
20227         (Mode Line Variables):
20228         * doc/lispref/minibuf.texi (Text from Minibuffer):
20229         * doc/lispref/loading.texi (Autoload):
20230         * doc/lispref/keymaps.texi (Controlling Active Maps):
20231         * doc/lispref/frames.texi (Frame Layout, Size and Position)
20232         (Size Parameters, Implied Frame Resizing):
20233         * doc/lispref/files.texi (Changing Files, Magic File Names):
20234         * doc/lispref/eval.texi (Self-Evaluating Forms):
20235         * doc/lispref/display.texi (Progress, Abstract Display)
20236         (Abstract Display Example, Bidirectional Display):
20237         * doc/lispref/commands.texi (Event Mod):
20238         * doc/emacs/windows.texi (Displaying Buffers):
20239         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
20240         * doc/emacs/text.texi (Enriched Text):
20241         * doc/emacs/programs.texi (MixedCase Words):
20242         * doc/emacs/picture-xtra.texi (Insert in Picture)
20243         (Tabs in Picture):
20244         * doc/emacs/misc.texi (Emacs Server, Printing):
20245         * doc/emacs/mini.texi (Minibuffer History):
20246         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
20247         (Pulling / Pushing):
20248         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
20249         * doc/emacs/help.texi (Help, Help Echo):
20250         * doc/emacs/glossary.texi (Glossary):
20251         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
20252         (Frame Commands):
20253         * doc/emacs/files.texi (Reverting, Saving, Directories):
20254         * doc/emacs/entering.texi (Exiting):
20255         * doc/emacs/emacs.texi (Top):
20256         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
20257         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
20258         appropriate or replace quoting with @dfn.
20259         * doc/misc/ediff.texi (Window and Frame Configuration):
20260         * doc/lispref/processes.texi (Network Feature Testing):
20261         * doc/lispref/display.texi (Display Margins): Quote the phrase
20262         after "a.k.a." where appropriate.
20264 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
20266         Clarify reftex-extra-bindings docs
20267         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
20268         * doc/misc/reftex.texi (Key Bindings): Document that the variable
20269         only has an effect at load-time.
20271 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
20273         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
20274         search argument.  (Bug#21492) (Bug#21493)
20276 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
20278         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
20279         Add pretty symbols for \qquad and \varrho.
20281 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
20283         Add new functions for the root mean square of a (Calc) vector
20284         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
20285         New functions.
20286         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
20287         `calc-vector-rms', add autoloads for `calc-vector-rms' and
20288         `calcFunc-rms'.
20289         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
20290         `calcFunc-rms'.
20291         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
20292         `calc-vector-rms'.
20293         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
20294         command.
20296 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
20298         Add monotone EDE generic project
20299         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
20300         Add monotone generic project.
20302         Revert premature commit
20303         * doc/lispref/files.texi: Revert premature commit of change to
20304         file-name-all-completions.
20306         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
20307         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
20308         with cl-generic defaults.
20309         (elisp--xref-find-references): Add doc string.
20310         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
20311         tests to find bug.
20313         Fix bugs in eieio-oref-default related to class symbols
20314         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
20315         (eieio-oref-default): Handle class properly.
20317 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20319         Quote “fullboth” when defining it
20320         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
20321         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
20323 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
20325         Minor doc fix in emacs/ack.texi
20326         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
20327         first argument.
20329 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
20331         Adapt tests in auto-revert-tests.el
20332         * test/automated/auto-revert-tests.el (auto-revert--timeout):
20333         Make it a defconst.
20334         (auto-revert--wait-for-revert): New defun.
20335         (auto-revert-test00-auto-revert-mode)
20336         (auto-revert-test01-auto-revert-tail-mode)
20337         (auto-revert-test02-auto-revert-mode-dired): Use it.
20339 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
20341         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
20342         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
20343         (cl-lib-fdefs): Add defgeneric.
20344         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
20345         (eieio-kw, cl-lib-kw, el-kw): Remove.
20347 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20349         Quote less in manuals
20350         The manuals often used quotes ``...'' when it is better to use @dfn or
20351         @code or capitalized words or no quoting at all.  For example, there is
20352         no need for the `` and '' in “if a variable has one effect for
20353         @code{nil} values and another effect for ``non-@code{nil}'' values”.
20354         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
20355         unnecessary quoting like this, and to use @dfn etc. instead when called
20356         for (Bug#21472).
20358 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
20360         * lisp/custom.el (load-theme): Only compute hash when needed.
20362 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20364         Pacify --enable-gcc-warnings
20365         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
20367 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
20369         Improve error reports in inotify.c
20370         * src/inotify.c (report_inotify_error): New function.  Clone of
20371         report_w32notify_error.
20372         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
20373         (Finotify_rm_watch): Use it.
20375 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
20377         Fix the file-notify tests for watch validation on w32
20378         * test/automated/file-notify-tests.el
20379         (file-notify-test04-file-validity): Move the directory deletion
20380         out of the file-notify--test-with-events macro.
20381         (file-notify-test04-file-validity)
20382         (file-notify-test05-dir-validity): Enlarge the timeout of
20383         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
20385 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
20387         Use OPEN BOX instead of space for \quad.
20388         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
20389         character for \quad instead of a space.
20391 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
20393         Add missing *.pbm images
20394         * etc/images/connect.pbm: New file.
20395         * etc/images/custom/down-pushed.pbm: New file.
20396         * etc/images/custom/down.pbm: New file.
20397         * etc/images/custom/right-pushed.pbm: New file.
20398         * etc/images/custom/right.pbm: New file.
20399         * etc/images/describe.pbm: New file.
20400         * etc/images/disconnect.pbm: New file.
20401         * etc/images/ezimage/bits.pbm: New file.
20402         * etc/images/ezimage/bitsbang.pbm: New file.
20403         * etc/images/ezimage/box-minus.pbm: New file.
20404         * etc/images/ezimage/box-plus.pbm: New file.
20405         * etc/images/ezimage/box.pbm: New file.
20406         * etc/images/ezimage/checkmark.pbm: New file.
20407         * etc/images/ezimage/dir-minus.pbm: New file.
20408         * etc/images/ezimage/dir-plus.pbm: New file.
20409         * etc/images/ezimage/dir.pbm: New file.
20410         * etc/images/ezimage/doc-minus.pbm: New file.
20411         * etc/images/ezimage/doc-plus.pbm: New file.
20412         * etc/images/ezimage/doc.pbm: New file.
20413         * etc/images/ezimage/info.pbm: New file.
20414         * etc/images/ezimage/key.pbm: New file.
20415         * etc/images/ezimage/label.pbm: New file.
20416         * etc/images/ezimage/lock.pbm: New file.
20417         * etc/images/ezimage/mail.pbm: New file.
20418         * etc/images/ezimage/page-minus.pbm: New file.
20419         * etc/images/ezimage/page-plus.pbm: New file.
20420         * etc/images/ezimage/page.pbm: New file.
20421         * etc/images/ezimage/tag-gt.pbm: New file.
20422         * etc/images/ezimage/tag-minus.pbm: New file.
20423         * etc/images/ezimage/tag-plus.pbm: New file.
20424         * etc/images/ezimage/tag-type.pbm: New file.
20425         * etc/images/ezimage/tag-v.pbm: New file.
20426         * etc/images/ezimage/tag.pbm: New file.
20427         * etc/images/ezimage/unlock.pbm: New file.
20428         * etc/images/gnus/important.pbm: New file.
20429         * etc/images/gnus/mail-send.pbm: New file.
20430         * etc/images/gnus/receipt.pbm: New file.
20431         * etc/images/gnus/toggle-subscription.pbm: New file.
20432         * etc/images/gnus/unimportant.pbm: New file.
20433         * etc/images/gud/all.pbm: New file.
20434         * etc/images/gud/rcont.pbm: New file.
20435         * etc/images/gud/recstart.pbm: New file.
20436         * etc/images/gud/recstop.pbm: New file.
20437         * etc/images/gud/rfinish.pbm: New file.
20438         * etc/images/gud/rnext.pbm: New file.
20439         * etc/images/gud/rnexti.pbm: New file.
20440         * etc/images/gud/rstep.pbm: New file.
20441         * etc/images/gud/rstepi.pbm: New file.
20442         * etc/images/gud/thread.pbm: New file.
20443         * etc/images/lock-broken.pbm: New file.
20444         * etc/images/lock-ok.pbm: New file.
20445         * etc/images/lock.pbm: New file.
20446         * etc/images/mail/copy.pbm: New file.
20447         * etc/images/mail/forward.pbm: New file.
20448         * etc/images/mail/not-spam.pbm: New file.
20449         * etc/images/mail/outbox.pbm: New file.
20450         * etc/images/mail/preview.pbm: New file.
20451         * etc/images/mail/save-draft.pbm: New file.
20452         * etc/images/mh-logo.pbm: New file.
20453         * etc/images/mpc/add.pbm: New file.
20454         * etc/images/mpc/ffwd.pbm: New file.
20455         * etc/images/mpc/next.pbm: New file.
20456         * etc/images/mpc/pause.pbm: New file.
20457         * etc/images/mpc/play.pbm: New file.
20458         * etc/images/mpc/prev.pbm: New file.
20459         * etc/images/mpc/rewind.pbm: New file.
20460         * etc/images/mpc/stop.pbm: New file.
20461         * etc/images/redo.pbm: New file.
20462         * etc/images/smilies/braindamaged.pbm: New file.
20463         * etc/images/smilies/cry.pbm: New file.
20464         * etc/images/smilies/dead.pbm: New file.
20465         * etc/images/smilies/evil.pbm: New file.
20466         * etc/images/smilies/forced.pbm: New file.
20467         * etc/images/smilies/grin.pbm: New file.
20468         * etc/images/smilies/indifferent.pbm: New file.
20469         * etc/images/sort-ascending.pbm: New file.
20470         * etc/images/sort-column-ascending.pbm: New file.
20471         * etc/images/sort-criteria.pbm: New file.
20472         * etc/images/sort-descending.pbm: New file.
20473         * etc/images/sort-row-ascending.pbm: New file.
20474         * etc/images/unchecked.pbm: New file.
20475         * etc/images/zoom-in.pbm: New file.
20476         * etc/images/README: Update instructions for PBM files.
20478         Add separator.pbm tool-bar image
20479         * etc/images/separator.pbm: New file.  Having it avoids the side
20480         effect of changing the tool-bar height when the default font's size
20481         changes and XPM image support is not available, due to the SPC
20482         characters that are left in the Lisp string used to display the tool
20483         bar, because there are no images to display instead of those SPC
20484         characters.
20486         Make show-paren-match face visible on mono-color displays
20487         * lisp/faces.el (show-paren-match): Use the underline face for
20488         mono-color displays.  (Bug#21481)
20490 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
20492         Don’t double-encode non-ASCII mail clipboard
20493         * lisp/mail/mailclient.el (mailclient-send-it):
20494         Also fix the case when mailclient-place-body-on-clipboard-flag
20495         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
20497 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
20499         Adapt file-notify-tests.el test cases
20500         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
20501         * src/inotify.c (Finotify_valid_p): Adapt docstring.
20502         * test/automated/file-notify-tests.el
20503         (file-notify-test03-autorevert)
20504         (file-notify-test04-file-validity)
20505         (file-notify-test04-file-validity-remote)
20506         (file-notify-test05-dir-validity)
20507         (file-notify-test05-dir-validity-remote): Adapt docstring.
20508         (file-notify-test04-file-validity): Let events arrive before
20509         calling final `file-notify-valid-p'.  Do not ignore errors.
20510         (file-notify-test05-dir-validity): Do not manipulate
20511         `temporary-file-directory', it isn't necessary.  Let events arrive
20512         before calling final `file-notify-valid-p'.  Do not ignore errors.
20514 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
20516         Don’t double-encode non-ASCII for mail client
20517         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
20518         Use RFC 6068’s list of unreserved characters.
20519         (mailclient-send-it): When encoding the body as a URL,
20520         first decode it as per Content-Type: and Content-Transfer-Encoding:,
20521         as URLs must use percent-encoded UTF-8 (Bug#21471).
20522         * doc/misc/url.texi (mailto): Update RFC number.
20524 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
20526         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
20528 2015-09-14  Alan Mackenzie  <acm@muc.de>
20530         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
20531         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
20532         `cadr/car'.
20534 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
20536         Clarify documentation of char-table extra slots
20537         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
20538         slot numbers are zero-based.  (Bug#21467)
20540 2015-09-14  Alan Mackenzie  <acm@muc.de>
20542         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
20543         Fixes bug#21449.
20544         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
20545         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
20546         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
20547         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
20548         Insert "\\|\\\\." into regexps which match symbols.
20550 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
20552         Improve the doc string of w32notify-valid-p
20553         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
20554         that removing a watch makes its object invalid.
20556 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
20558         Fix tests for file-notify-valid-p
20559         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
20560         Use delete-directory to delete file-notify--test-tmpfile if it is
20561         a directory.  Likewise for file-notify--test-tmpfile1.
20562         (file-notify-test04-file-validity)
20563         (file-notify-test05-dir-validity): Delete the parent directory of
20564         the test.  Ignore errors when cleaning up after the test.
20566 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
20568         Report file-notify-error in w32notify.c
20569         * src/w32notify.c (report_w32notify_error): New function.
20570         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
20571         errors, instead of calling report_file_error.  (Bug#21432)
20573         Implement w32notify-valid-p
20574         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
20575         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
20576         'identity'.
20578 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
20580         Test file-notify-valid-p
20581         * test/automated/file-notify-tests.el
20582         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
20583         New tests.
20585 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
20587         Fix markup in ELisp manual
20588         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
20589         of the 'alpha' parameter value.  (Bug#21470)
20591 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
20593         Introduce `file-notify-valid-p'
20594         * lisp/filenotify.el (file-notify-valid-p): New defun.
20595         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
20596         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
20597         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
20598         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
20599         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
20600         <file-notify-valid-p>: Add handler.
20601         * lisp/net/tramp.el (tramp-file-name-for-operation):
20602         Add `file-notify-valid-p'.
20603         (tramp-handle-file-notify-valid-p): New defun.
20604         * src/inotify.c (Finotify_valid_p): New defun.
20605         (syms_of_inotify): Declare Sinotify_valid_p.
20607 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
20609         Port Unicode char detection to FreeBSD+svgalib
20610         Problem reported by Ashish SHUKLA in:
20611         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
20612         * configure.ac: Check for struct unipair.unicode instead of for
20613         <linux/kd.h>, since that’s more specific to what the code
20614         actually needs.
20615         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
20617         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
20619 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
20621         Fix vertical cursor motion across overlay strings with newlines
20622         * src/indent.c (Fvertical_motion): Don't leave point in the middle
20623         of an overlay string with newlines, as that will position the
20624         cursor after the string at whatever column is there.  (Bug#21468)
20626 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
20628         Fix tests in file-notify-tests.el
20629         * test/automated/file-notify-tests.el: Remove Tramp declarations.
20630         (file-notify-test00-availability): Print remote command w/o Tramp
20631         internal functions.
20632         (file-notify-test02-events, file-notify-test02-events-remote):
20633         Adapt docstring.
20634         (file-notify-test03-autorevert): Use `format-message' when
20635         inspecting *Messages* buffer.
20637 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
20639         Bind inhibit-modification-hooks rather than a/b-c-f
20640         * lisp/wid-edit.el (widget-editable-list-insert-before)
20641         (widget-editable-list-delete-at):
20642         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
20643         (cperl-font-lock-unfontify-region-function):
20644         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
20645         * lisp/obsolete/longlines.el (longlines-mode):
20646         * lisp/obsolete/fast-lock.el (save-buffer-state):
20647         * lisp/mouse.el (mouse-save-then-kill-delete-region):
20648         * lisp/gnus/message.el (message-hide-headers):
20649         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
20650         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
20651         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
20652         than after/before-change-functions to nil.
20654 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
20656         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
20657         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
20658         the buffers, even if the forced redisplay is interrupted.
20660         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
20662         Merge syntax-propertize--done and parse-sexp-propertize-done
20663         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
20664         (syntax-propertize): Set syntax-propertize--done even if
20665         syntax-propertize-function is nil.  Avoid recursive invocations.
20666         (syntax-propertize-chunks): New var.
20667         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
20668         Simplify.
20669         (parse-sexp-propertize-function): Don't set any more.
20670         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
20671         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
20672         Call Qinternal__syntax_propertize instead of
20673         Vparse_sexp_propertize_function.  Truncate e_property if needed.
20674         (update_syntax_table_forward): Streamline.
20675         (syms_of_syntax): Define Qinternal__syntax_propertize.
20676         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
20678 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
20680         Prefer straight quoting in some text files
20681         Mostly this just changes ` to ' in static text.  Some exceptions:
20682         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
20683         typically does that now.
20684         * admin/quick-install-emacs (TRY, top level):
20685         Use straight quoting in diagnostics.
20686         * src/README: Fix working-directory confusion.
20688         * CONTRIBUTE: Move send-email here from git-workflow.
20690 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
20692         Improve file notifications in Tramp
20693         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
20694         Set proper events to watch for.
20695         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
20696         watched events.
20698 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
20700         Fix NS build with --enable-checking='glyphs'
20701         * src/nsfns.m (unwind_create_frame): Make the preprocessor
20702         conditionals for referencing 'dpyinfo' consistent throughout the
20703         function.  (Bug#21426)
20705 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
20707         Add seq-find
20708         This function is similar to `seq-some' but returns the found element.
20709         In the cases where nil can be the found element, a sentinel optional
20710         argument can be provided to avoid ambiguities.
20711         * lisp/emacs-lisp/seq.el (seq-find): New function.
20712         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
20713         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
20714         seq-find.
20716 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
20718         Document file-notify--test-with-events.
20719         * test/automated/file-notify-tests.el (file-notify--test-with-events):
20720         Add docstring.
20722 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
20724         Report used native library in file-notify-tests.el
20725         * test/automated/file-notify-tests.el
20726         (tramp-get-remote-gvfs-monitor-dir)
20727         (tramp-get-remote-inotifywait): Declare them.
20728         (file-notify-test00-availability): Print used native library.
20730 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
20732         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
20733         (mpc-file-local-copy): Check for absolute path.  Check more config
20734         locations.
20736 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
20738         Improve documentation of categories
20739         * doc/lispref/syntax.texi (Categories): Clarify the example of
20740         using define-category and modify-category-entry.  (Bug#21448)
20742 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
20744         Revert some stray curved quotes I missed earlier
20745         Problem reported by David Kastrup in:
20746         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
20747         * lisp/international/mule-cmds.el (leim-list-header):
20748         Use format-message with an ASCII-only format.
20750         Prefer NUMBERP to spelling it out
20751         * src/editfns.c (styled_format):
20752         * src/frame.h (NUMVAL):
20753         * src/image.c (parse_image_spec):
20754         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
20755         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
20756         * src/process.c (Fsignal_process):
20757         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
20758         * src/xfaces.c (check_lface_attrs):
20759         * src/xselect.c (x_fill_property_data, x_send_client_event):
20760         Use NUMBERP rather than INTEGERP || FLOATP.
20762 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
20764         Improve file-notify-tests
20765         * test/automated/file-notify-tests.el: Use lexical-binding.
20766         (file-notify--test-cleanup): New function.
20767         (file-notify-test00-availability, file-notify-test01-add-watch)
20768         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
20769         (file-notify--test-with-events): New macro.
20770         (file-notify-test02-events): Use it.
20772 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
20774         Add patch-sending instructions to git-workflow
20775         From a suggestion by Mitchel Humpherys in:
20776         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
20777         * admin/notes/git-workflow (Sending patches): New section.
20779         Port to GIFLIB 5.0.6 and later
20780         Problem reported by Mitchel Humpherys in:
20781         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
20782         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
20783         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
20784         (gif_load) [HAVE_GIF]: Use it.
20786 2015-09-10  Glenn Morris  <rgm@gnu.org>
20788         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
20790 2015-09-09  Glenn Morris  <rgm@gnu.org>
20792         * test/automated/file-notify-tests.el (file-notify-test02-events):
20793         Fix recent change.
20795 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20797         Refix movemail GCC pacification
20798         Problem reported by Ken Brown in:
20799         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
20800         * lib-src/movemail.c (main): Fix previous change.
20802 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20804         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
20805         Mark unused vars with underscore.
20807         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
20808         (parse_sexp_propertize): ...from here.
20810         * lisp/filenotify.el: Use lexical-binding
20811         (file-notify-add-watch): Avoid add-to-list.
20813 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
20815         Start checking event types in file-notify tests
20816         * test/automated/file-notify-tests.el (file-notify--test-events):
20817         New variable.
20818         (file-notify--test-event-handler): Append received event to
20819         file-notify--test-events for later analysis.
20820         (file-notify-test02-events): Assert that the expected notifications have
20821         arrived in the expected order.
20823 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20825         Merge from gnulib and texinfo
20826         This incorporates:
20827         2015-08-03 Improve port of stdalign to C++11
20828         * lib/stdalign.in.h: Copy from gnulib.
20829         * doc/misc/texinfo.tex: Copy from texinfo.
20831 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20833         Make syntax.c call syntax-propertize on demand
20834         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
20835         (parse-sexp-propertize-function): Use it.
20836         (syntax-propertize): Disable parse-sexp-propertize-function.
20837         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
20838         New functions.
20839         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
20840         `parse-sexp-propertize-function'.
20841         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
20842         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
20843         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
20844         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
20845         Don't assume `point' is set.
20847 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
20849         Fix indentation of an @example in ELisp manual
20850         * doc/lispref/syntax.texi (Categories): Untabify the example.
20851         (Bug#21448)
20853 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20855         Define internal-char-font even if --without-x
20856         The function is used now even in non-graphical environments.
20857         Problem reported by Glenn Morris in:
20858         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
20859         * src/font.c (Finternal_char_font): Move here ...
20860         * src/fontset.c (Finternal_char_font): ... from here.
20862 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20864         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
20865         Remove warning.
20867 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
20869         Fix display of complex local data types in GDB-MI
20870         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
20871         variable has no value, display "<complex data type>" as a
20872         placeholder, instead of a confusing "nil".  (Bug#21438)
20874 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
20876         Remove redundant redefinition of seq-drop-while from seq.el
20877         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
20879 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
20881         * lisp/emacs-lisp/package.el (package--ensure-init-file):
20882         More robust check for `package-initialize' calls in init file.
20883         This function accepts an optional argument, but calls passing
20884         an argument would not have been detected.
20886 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20888         Port movemail to RHEL 6 with --enable-gcc-warnings
20889         * lib-src/movemail.c (main): Declare local only if needed.
20891         Port recent Linux console changes to RHEL 6
20892         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
20894         Improvements for curved quotes on Linux consule
20895         This should help Emacs work better out-of-the-box on Linux consoles,
20896         which have only limited support for displaying Unicode characters.
20897         Also, undo the recent change that caused text-quoting-style to
20898         affect quote display on terminals, so that the two features are
20899         independent.  See Alan Mackenzie in:
20900         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
20901         Finally, add a style parameter to startup--setup-quote-display,
20902         so that this function can also be invoked after startup, with
20903         different styles depending on user preference at the time.
20904         * configure.ac: Check for linux/kd.h header.
20905         * doc/emacs/display.texi (Text Display): Document quote display.
20906         * doc/lispref/display.texi (Active Display Table):
20907         * etc/NEWS:
20908         * lisp/startup.el (startup--setup-quote-display, command-line):
20909         text-quoting-style no longer affects quote display.
20910         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
20911         * lisp/international/mule-util.el (char-displayable-p):
20912         * lisp/startup.el (startup--setup-quote-display):
20913         On a text terminal supporting glyph codes, use the reported
20914         glyph codes instead of the terminal coding system, as this
20915         is more accurate on the Linux console.
20916         * lisp/startup.el (startup--setup-quote-display):
20917         New optional arg STYLE.
20918         * src/fontset.c (Finternal_char_font):
20919         Report glyph codes for a text terminal, if they are available.
20920         Currently this is supported only for the Linux console.
20921         * src/termhooks.h (struct terminal): New member glyph-code-table.
20922         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
20923         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
20924         (terminal_glyph_code): New function.
20926 2015-09-08  Juri Linkov  <juri@linkov.net>
20928         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
20929         underline.  (Bug#21433)
20931 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
20933         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
20935 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
20937         Fix double-reporting of rename events with inotify
20938         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
20939         of rename events with inotify (bug#21435).
20941 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
20943         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
20944         (tetris-mode-map): Use it.
20946 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
20948         Remove a few simple cases of global redisplay
20949         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
20950         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
20951         rather than returning a "resized_p" boolean.
20952         (redisplay_internal): Adjust call accordingly.
20953         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
20954         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
20955         tracking of this undesirable situation.
20957         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
20958         * src/process.c (status_notify): Only set the update_mode_line on the
20959         relevant buffers rather than setting it globally.
20961 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
20963         * lisp/electric.el (electric-quote-post-self-insert-function):
20964         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
20965         (electric-quote-mode): Activate everywhere in message-mode.
20967 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
20969         Go back to grave quoting in source-code docstrings etc.
20970         This reverts almost all my recent changes to use curved quotes
20971         in docstrings and/or strings used for error diagnostics.
20972         There are a few exceptions, e.g., Bahá’í proper names.
20973         * admin/unidata/unidata-gen.el (unidata-gen-table):
20974         * lisp/abbrev.el (expand-region-abbrevs):
20975         * lisp/align.el (align-region):
20976         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
20977         (outlineify-sticky):
20978         * lisp/apropos.el (apropos-library):
20979         * lisp/bookmark.el (bookmark-default-annotation-text):
20980         * lisp/button.el (button-category-symbol, button-put)
20981         (make-text-button):
20982         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
20983         * lisp/calc/calc-embed.el (calc-do-embedded):
20984         * lisp/calc/calc-ext.el (calc-user-function-list):
20985         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
20986         * lisp/calc/calc-help.el (calc-describe-key)
20987         (calc-describe-thing, calc-full-help):
20988         * lisp/calc/calc-lang.el (calc-c-language)
20989         (math-parse-fortran-vector-end, math-parse-tex-sum)
20990         (math-parse-eqn-matrix, math-parse-eqn-prime)
20991         (calc-yacas-language, calc-maxima-language, calc-giac-language)
20992         (math-read-giac-subscr, math-read-math-subscr)
20993         (math-read-big-rec, math-read-big-balance):
20994         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
20995         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
20996         (calc-auto-recompute):
20997         * lisp/calc/calc-prog.el (calc-fix-token-name)
20998         (calc-read-parse-table-part, calc-user-define-invocation)
20999         (math-do-arg-check):
21000         * lisp/calc/calc-store.el (calc-edit-variable):
21001         * lisp/calc/calc-units.el (math-build-units-table-buffer):
21002         * lisp/calc/calc-vec.el (math-read-brackets):
21003         * lisp/calc/calc-yank.el (calc-edit-mode):
21004         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
21005         * lisp/calendar/appt.el (appt-display-message):
21006         * lisp/calendar/diary-lib.el (diary-check-diary-file)
21007         (diary-mail-entries, diary-from-outlook):
21008         * lisp/calendar/icalendar.el (icalendar-export-region)
21009         (icalendar--convert-float-to-ical)
21010         (icalendar--convert-date-to-ical)
21011         (icalendar--convert-ical-to-diary)
21012         (icalendar--convert-recurring-to-diary)
21013         (icalendar--add-diary-entry):
21014         * lisp/calendar/time-date.el (format-seconds):
21015         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
21016         (timeclock-make-hours-explicit, timeclock-log-data):
21017         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
21018         (todo-item-mark, todo-check-format)
21019         (todo-insert-item--next-param, todo-edit-item--next-key)
21020         (todo-mode):
21021         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
21022         * lisp/cedet/mode-local.el (describe-mode-local-overload)
21023         (mode-local-print-binding, mode-local-describe-bindings-2):
21024         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
21025         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
21026         * lisp/cus-start.el (standard):
21027         * lisp/cus-theme.el (describe-theme-1):
21028         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
21029         (custom--sort-vars-1, load-theme):
21030         * lisp/descr-text.el (describe-text-properties-1, describe-char):
21031         * lisp/dired-x.el (dired-do-run-mail):
21032         * lisp/dired.el (dired-log):
21033         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
21034         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
21035         (ad-disable-advice, ad-remove-advice, ad-set-argument)
21036         (ad-set-arguments, ad--defalias-fset, ad-activate)
21037         (ad-deactivate):
21038         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
21039         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
21040         (byte-optimize-while, byte-optimize-apply):
21041         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
21042         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
21043         (byte-compile-log-file, byte-compile-format-warn)
21044         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
21045         (byte-compile-cl-warn)
21046         (byte-compile-warn-about-unresolved-functions)
21047         (byte-compile-file, byte-compile--declare-var)
21048         (byte-compile-file-form-defmumble, byte-compile-form)
21049         (byte-compile-normal-call, byte-compile-check-variable)
21050         (byte-compile-variable-ref, byte-compile-variable-set)
21051         (byte-compile-subr-wrong-args, byte-compile-setq-default)
21052         (byte-compile-negation-optimizer)
21053         (byte-compile-condition-case--old)
21054         (byte-compile-condition-case--new, byte-compile-save-excursion)
21055         (byte-compile-defvar, byte-compile-autoload)
21056         (byte-compile-lambda-form)
21057         (byte-compile-make-variable-buffer-local, display-call-tree)
21058         (batch-byte-compile):
21059         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
21060         * lisp/emacs-lisp/chart.el (chart-space-usage):
21061         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
21062         (check-declare-warn, check-declare-file)
21063         (check-declare-directory):
21064         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
21065         (checkdoc-message-text-engine):
21066         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
21067         (cl--describe-class):
21068         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
21069         (cl--generic-describe, cl-generic-generalizers):
21070         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
21071         (cl-symbol-macrolet):
21072         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
21073         * lisp/emacs-lisp/copyright.el (copyright)
21074         (copyright-update-directory):
21075         * lisp/emacs-lisp/edebug.el (edebug-read-list):
21076         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
21077         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
21078         (eieio-oref):
21079         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
21080         * lisp/emacs-lisp/eieio-speedbar.el:
21081         (eieio-speedbar-child-make-tag-lines)
21082         (eieio-speedbar-child-description):
21083         * lisp/emacs-lisp/eieio.el (defclass, change-class):
21084         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
21085         (elint-init-form, elint-check-defalias-form)
21086         (elint-check-let-form):
21087         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
21088         (ert-results-pop-to-backtrace-for-test-at-point)
21089         (ert-results-pop-to-messages-for-test-at-point)
21090         (ert-results-pop-to-should-forms-for-test-at-point)
21091         (ert-describe-test):
21092         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
21093         (find-function-library):
21094         * lisp/emacs-lisp/generator.el (iter-yield):
21095         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
21096         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
21097         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
21098         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
21099         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
21100         (advice--make, define-advice):
21101         * lisp/emacs-lisp/package-x.el (package-upload-file):
21102         * lisp/emacs-lisp/package.el (package-version-join)
21103         (package-disabled-p, package-activate-1, package-activate)
21104         (package--download-one-archive)
21105         (package--download-and-read-archives)
21106         (package-compute-transaction, package-install-from-archive)
21107         (package-install, package-install-selected-packages)
21108         (package-delete, package-autoremove, describe-package-1)
21109         (package-install-button-action, package-delete-button-action)
21110         (package-menu-hide-package, package-menu--list-to-prompt)
21111         (package-menu--perform-transaction)
21112         (package-menu--find-and-notify-upgrades):
21113         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
21114         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
21115         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
21116         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
21117         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
21118         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
21119         (rx-form):
21120         * lisp/emacs-lisp/smie.el (smie-config-save):
21121         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
21122         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
21123         * lisp/emacs-lisp/testcover.el (testcover-1value):
21124         * lisp/emacs-lisp/timer.el (timer-event-handler):
21125         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
21126         (viper-toggle-search-style, viper-kill-buffer)
21127         (viper-brac-function):
21128         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
21129         * lisp/env.el (setenv):
21130         * lisp/erc/erc-button.el (erc-nick-popup):
21131         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
21132         * lisp/eshell/em-dirs.el (eshell/cd):
21133         * lisp/eshell/em-glob.el (eshell-glob-regexp)
21134         (eshell-glob-entries):
21135         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
21136         * lisp/eshell/esh-opt.el (eshell-show-usage):
21137         * lisp/facemenu.el (facemenu-add-new-face)
21138         (facemenu-add-new-color):
21139         * lisp/faces.el (read-face-name, read-face-font, describe-face)
21140         (x-resolve-font-name):
21141         * lisp/files-x.el (modify-file-local-variable):
21142         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
21143         (set-auto-mode, hack-one-local-variable--obsolete)
21144         (dir-locals-set-directory-class, write-file, basic-save-buffer)
21145         (delete-directory, copy-directory, recover-session)
21146         (recover-session-finish, insert-directory)
21147         (file-modes-char-to-who, file-modes-symbolic-to-number)
21148         (move-file-to-trash):
21149         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
21150         * lisp/find-cmd.el (find-generic, find-to-string):
21151         * lisp/finder.el (finder-commentary):
21152         * lisp/font-lock.el (font-lock-fontify-buffer):
21153         * lisp/format.el (format-write-file, format-find-file)
21154         (format-insert-file):
21155         * lisp/frame.el (get-device-terminal, select-frame-by-name):
21156         * lisp/fringe.el (fringe--check-style):
21157         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
21158         * lisp/help-fns.el (help-fns--key-bindings)
21159         (help-fns--compiler-macro, help-fns--parent-mode)
21160         (help-fns--obsolete, help-fns--interactive-only)
21161         (describe-function-1, describe-variable):
21162         * lisp/help.el (describe-mode)
21163         (describe-minor-mode-from-indicator):
21164         * lisp/image.el (image-type):
21165         * lisp/international/ccl.el (ccl-dump):
21166         * lisp/international/fontset.el (x-must-resolve-font-name):
21167         * lisp/international/mule-cmds.el (prefer-coding-system)
21168         (select-safe-coding-system-interactively)
21169         (select-safe-coding-system, activate-input-method)
21170         (toggle-input-method, describe-current-input-method)
21171         (describe-language-environment):
21172         * lisp/international/mule-conf.el (code-offset):
21173         * lisp/international/mule-diag.el (describe-character-set)
21174         (list-input-methods-1):
21175         * lisp/mail/feedmail.el (feedmail-run-the-queue):
21176         * lisp/mouse.el (minor-mode-menu-from-indicator):
21177         * lisp/mpc.el (mpc-playlist-rename):
21178         * lisp/msb.el (msb--choose-menu):
21179         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
21180         * lisp/net/imap.el (imap-interactive-login):
21181         * lisp/net/mairix.el (mairix-widget-create-query):
21182         * lisp/net/newst-backend.el (newsticker--sentinel-work):
21183         * lisp/net/newst-treeview.el (newsticker--treeview-load):
21184         * lisp/net/rlogin.el (rlogin):
21185         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
21186         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
21187         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
21188         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
21189         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
21190         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
21191         (org-babel-goto-named-result):
21192         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
21193         * lisp/org/ob-ref.el (org-babel-ref-resolve):
21194         * lisp/org/org-agenda.el (org-agenda-prepare):
21195         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
21196         (org-clock-resolve):
21197         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
21198         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
21199         * lisp/org/org-habit.el (org-habit-parse-todo):
21200         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
21201         (org-mouse-context-menu):
21202         * lisp/org/org-table.el (org-table-edit-formulas):
21203         * lisp/org/ox.el (org-export-async-start):
21204         * lisp/proced.el (proced-log):
21205         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
21206         (ada-check-matching-start, ada-goto-matching-start):
21207         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
21208         * lisp/progmodes/ada-xref.el (ada-find-executable):
21209         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
21210         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
21211         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
21212         (flymake-start-syntax-check-process):
21213         * lisp/progmodes/python.el (python-shell-get-process-or-error)
21214         (python-define-auxiliary-skeleton):
21215         * lisp/progmodes/sql.el (sql-comint):
21216         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
21217         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
21218         * lisp/recentf.el (recentf-open-files):
21219         * lisp/replace.el (query-replace-read-from)
21220         (occur-after-change-function, occur-1):
21221         * lisp/scroll-bar.el (scroll-bar-columns):
21222         * lisp/server.el (server-get-auth-key):
21223         * lisp/simple.el (execute-extended-command)
21224         (undo-outer-limit-truncate, list-processes--refresh)
21225         (compose-mail, set-variable, choose-completion-string)
21226         (define-alternatives):
21227         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
21228         (command-line-1):
21229         * lisp/subr.el (noreturn, define-error, add-to-list)
21230         (read-char-choice, version-to-list):
21231         * lisp/term/common-win.el (x-handle-xrm-switch)
21232         (x-handle-name-switch, x-handle-args):
21233         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
21234         * lisp/textmodes/reftex-ref.el (reftex-label):
21235         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
21236         * lisp/textmodes/two-column.el (2C-split):
21237         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
21238         (tutorial--find-changed-keys):
21239         * lisp/type-break.el (type-break-noninteractive-query):
21240         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
21241         (wdired-do-perm-changes):
21242         * lisp/whitespace.el (whitespace-report-region):
21243         Prefer grave quoting in source-code strings used to generate help
21244         and diagnostics.
21245         * lisp/faces.el (face-documentation):
21246         No need to convert quotes, since the result is a docstring.
21247         * lisp/info.el (Info-virtual-index-find-node)
21248         (Info-virtual-index, info-apropos):
21249         Simplify by generating only curved quotes, since info files are
21250         typically that ways nowadays anyway.
21251         * lisp/international/mule-diag.el (list-input-methods):
21252         Don’t assume text quoting style is curved.
21253         * lisp/org/org-bibtex.el (org-bibtex-fields):
21254         Revert my recent changes, going back to the old quoting style.
21256 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21258         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
21259         (package--autoloads-file-name)
21260         (package--activate-autoloads-and-load-path): New function.
21261         (package-activate-1): Delegate autoloading and load-path
21262         configuration to `package--activate-autoloads-and-load-path'.
21263         (package--compile): Before compilation, call
21264         `package--activate-autoloads-and-load-path' instead of
21265         `package-activate-1'.
21267 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
21269         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
21271 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
21273         Fix deletion of symlinks to directories on MS-Windows
21274         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
21275         symlink to a directory, try again with 'rmdir'.
21276         (is_symlink): If the argument is a symlink to a directory, set a
21277         bit in the return value to indicate that fact.
21279 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
21281         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
21282         When `package-initialize' is called as part of loading the init file,
21283         the user probably doesn't want it to be called again afterwards.
21284         In this situation, `package-initialize' now sets
21285         `package-enable-at-startup' to nil to prevent that.  The user can have
21286         the old behavior by setting this variable to t after the call to
21287         `package-initialize'.  (Bug#21423)
21288         * doc/emacs/package.texi (Package Installation): Document it.
21289         * doc/lispref/package.texi (Packaging Basics): Document it.
21290         * etc/NEWS: Document it.
21292 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
21294         Bump version of ntlm.el to 2.00
21295         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
21296         Add comm keyword.
21298 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
21300         * doc/misc/gnus.texi (Mail Source Specifiers):
21301         Allow :mailbox to be a list.
21303 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
21305         * lisp/progmodes/etags.el (etags-tags-completion-table):
21306         Allow even one non-regular character before the implicit tag name.
21307         Reported at http://emacs.stackexchange.com/questions/15269/.
21309 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
21311         Add support for NTLMv2 authentication
21312         * lisp/net/ntlm.el (ntlm): New customization group.
21313         (ntlm-compatibility-level): New defcustom.
21314         (ntlm-compute-timestamp): New function.
21315         (ntlm-generate-nonce): Likewise.
21316         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
21318 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
21320         * lisp/emacs-lisp/package.el: Rename custom faces.
21321         All of the recently introduced faces, like `package-name-face', have
21322         been renamed to no end in `-face' to comply with the convention
21323         described in (info "(elisp) Defining Faces").
21324         (package-name, package-description)
21325         (package-status-built-in, package-status-external)
21326         (package-status-available, package-status-new)
21327         (package-status-held, package-status-disabled)
21328         (package-status-installed, package-status-dependency)
21329         (package-status-unsigned, package-status-incompat)
21330         (package-status-avail-obso): New faces.
21331         (package-menu--print-info-simple): Use them.
21333 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
21335         mail-source.el: Make the imap mail-source's :mailbox handle a list
21336         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
21337         Allow :mailbox to be  a list.
21339 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
21341         nnimap.el: Handle nil arg to nnimap-request-group
21342         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
21343         This arg isn't always passed in, check it's not nil before making it
21344         into a list.  The active arg will also be nil if the group is new,
21345         check for that.
21347 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
21349         File notifications: Support renaming over directory boundaries
21350         * lisp/filenotify.el (file-notify-handle-event):
21351         (file-notify--pending-event): Adapt docstring.
21352         (file-notify--descriptor, file-notify-callback): Reimplement in
21353         order to support renaming over directory boundaries.
21354         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
21355         * doc/lispref/os.texi (File Notifications): Remove limitation of
21356         file renaming to the same directory.
21358 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
21360         Spelling fix (Bug#21420)
21362 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
21364         Improve the semantic of map-some
21365         Update map-some to return the returned by the predicate, similar to
21366         seq-some.
21367         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
21368           return value of the predicate.
21369         * test/automated/map-tests.el (test-map-some): Update the test to check
21370           for non-nil values only.
21372         Rename map-contains-key-p and map-some-p
21373         Remove the "-p" suffix from both function names.
21374         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
21375           Rename the functions.
21376         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
21377           Update both test functions.
21379         Improve the semantic of seq-some
21380         Update seq-some to return non-nil if the predicate returns non-nil for
21381         any element of the seq, in which case the returned value is the one
21382         returned by the predicate.
21383         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
21384           docstring.
21385         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
21386         * doc/lispref/sequences.texi (Sequence Functions): Update the
21387           documentation for seq-some.
21389         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
21390         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
21391           without the "-p" prefix.
21392         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
21393           the tests accordingly.
21394         * doc/lispref/sequences.texi (Sequence Functions): Update the
21395           documentation for seq.el.
21397 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
21399         text-quoting-style for usage of fn names with ‘’
21400         * lisp/help.el (help--docstring-quote): Don’t assume
21401         text-quoting-style is ‘curve’ when generating usage strings for
21402         functions whose names contain curved quotes.
21404 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
21406         Fix fix for describe-function keybinding confusion
21407         This fixes a bug introduced by the previous patch.
21408         * lisp/help-fns.el (help-fns--signature):
21409         Last arg of help-fns--signature is now a buffer, or nil if a
21410         raw signature is wanted.  All callers changed.
21411         (describe-function-1): Use this to do the right thing with signatures.
21413 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
21415         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
21417         Use PAT rather than UPAT in pcase macros
21418         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
21419         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
21420           than UPAT.
21422 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
21424         Fix describe-function keybinding confusion
21425         * lisp/help-fns.el (describe-function-1): Compute signature
21426         in the original buffer, not in standard-output, so that
21427         substitute-command-keys uses the proper keybindings.
21428         This fixes Bug#21412, introduced in commit
21429         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
21431 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
21433         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
21435 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
21437         Avoid read error messages from 'inotify'
21438         * src/process.c (wait_reading_process_output): Add a
21439         'tls_available' set and manipulate it instead of 'Available' when
21440         checking TLS inputs.  Assign the value to 'Available' only if we
21441         find any TLS data waiting to be read.  This avoids error messages
21442         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
21444 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
21446         Avoid errors in thing-at-point with 2nd argument non-nil
21447         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
21448         sequences.  (Bug#21391)
21450 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
21452         Fix segfaults due to using a stale face ID
21453         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
21454         (display_echo_area_1, redisplay_internal): Call it to avoid
21455         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
21456         faces, which could case a segfault if the frame's face cache was
21457         freed since the last redisplay.  (Bug#21394)
21458         * src/xfaces.c (free_realized_faces):
21459         Call forget_escape_and_glyphless_faces.
21460         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
21462 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
21464         Fix minor problems with " in manual
21466 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
21468         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
21469         multi-hop files.
21471 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
21473         Support automated ‘make check’ in non-C locale
21474         This lets the builder optionally test Emacs behavior in other locales.
21475         The C locale is still the default for tests.
21476         * test/automated/Makefile.in (TEST_LOCALE): New macro.
21477         (emacs): Use it.
21478         * test/automated/flymake-tests.el (flymake-tests--current-face):
21479         Use C locale for subprocesses so that tests behave as expected.
21480         * test/automated/python-tests.el:
21481         (python-shell-prompt-validate-regexps-1)
21482         (python-shell-prompt-validate-regexps-2)
21483         (python-shell-prompt-validate-regexps-3)
21484         (python-shell-prompt-validate-regexps-4)
21485         (python-shell-prompt-validate-regexps-5)
21486         (python-shell-prompt-validate-regexps-6)
21487         (python-shell-prompt-set-calculated-regexps-1):
21488         Adjust expected output to match locale.
21489         * test/automated/tildify-tests.el (tildify-test--test)
21490         (tildify-space-test--test, tildify-space-undo-test--test):
21491         This test assumes UTF-8 encoding.
21493 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
21495         Fix some more docstring etc. quoting problems
21496         Mostly these fixes prevent the transliteration of apostrophes
21497         that should stay apostrophes.  Also, prefer curved quotes in
21498         Bahá’í proper names, as that’s the preferred Bahá’í style and
21499         these names are chock-full of non-ASCII characters anyway.
21500         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
21501         (eieio-defclass-internal):
21502         * lisp/emacs-lisp/eieio.el (defclass):
21503         * lisp/hi-lock.el (hi-lock-mode):
21504         Don’t transliterate Lisp apostrophes when generating a
21505         doc string or diagnostic.
21506         * lisp/international/mule-diag.el (list-coding-systems-1):
21507         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
21508         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
21509         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
21510         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
21511         Substitute quotes before putting them in the help buffer.
21513 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
21515         Re-add the notion of echo_prompt lost in the translation
21516         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
21517         echo_prompt which contains the actual string.  Update all uses.
21518         * src/keyboard.c (kset_echo_prompt): New function.
21519         (echo_update): Add echo_prompt at the very beginning.
21520         (read_char): Remove workaround for bug#19875, not needed any more.
21521         (read_key_sequence): Set echo_prompt rather than echo_string
21522         (bug#21403).
21523         (mark_kboards): Mark echo_prompt.
21525         Fix disassembly of non-compiled lexical functions (bug#21377)
21526         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
21527         * lisp/emacs-lisp/disass.el: Use lexical-binding.
21528         (disassemble): Recognize `closure's as well.
21529         (disassemble-internal): Use indirect-function and
21530         help-function-arglist, and accept `closure's.
21531         (disassemble-internal): Use interactive-form.
21532         (disassemble-1): Use functionp.
21534         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
21535         Don't compose inside verbatim blocks!
21537 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
21539         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
21540         (bug#19441).
21542         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
21544 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
21546         vc-git-mode-line-string: Explicitly re-apply the face
21547         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
21548         the face (bug#21404).
21550 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
21552         Treat initial-scratch-message as a doc string
21553         * doc/emacs/building.texi (Lisp Interaction):
21554         * doc/lispref/os.texi (Startup Summary):
21555         * etc/NEWS: Document this.
21556         * lisp/startup.el (initial-scratch-message):
21557         Look up find-file’s key rather than hardcoding it.
21558         (command-line-1): Substitute the doc string.
21559         This also substitutes the quotes, which will help test display
21560         quoting at startup.
21562         Fix describe-char bug with glyphs on terminals
21563         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
21564         buffers too, so don’t treat them differently from graphic displays.
21565         Without this fix, describe-char would throw an error on a terminal
21566         if given a glyph with a non-default face.
21568         Follow text-quoting-style in display table init
21569         This attempts to fix a problem reported by Alan Mackenzie in:
21570         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
21571         * doc/lispref/display.texi (Active Display Table):
21572         Mention how text-quoting-style affects it.
21573         * doc/lispref/help.texi (Keys in Documentation):
21574         Say how to set text-quoting-style in ~/.emacs.
21575         * etc/NEWS: Document the change.
21576         * lisp/startup.el (startup--setup-quote-display):
21577         Follow user preference if text-quoting-style is set.
21578         (command-line): Setup quote display again if user expresses
21579         a preference in .emacs.
21581 2015-09-02  K. Handa  <handa@gnu.org>
21583         Fix typo
21584         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
21585         -> OTF_positioning_type_components_mask.
21587         Fix previous change
21588         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
21589         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
21591 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
21593         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
21594         Rename from vc-find-file-hook and make interactive.
21595         (vc-find-file-hook): Redefine as obsolete alias.
21597 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21599         Escape ` and ' in doc
21600         Escape apostrophes and grave accents in docstrings if they are
21601         are supposed to stand for themselves and are not quotes.  Remove
21602         apostrophes from docstring examples like ‘'(calendar-nth-named-day
21603         -1 0 10 year)’ that confuse source code with data.  Do some other
21604         minor docstring fixups as well, e.g., insert a missing close quote.
21606 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
21608         Generalize the prefix-command machinery of C-u
21609         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
21610         (prefix-command-preserve-state-hook): New hooks.
21611         (internal-echo-keystrokes-prefix): New function.
21612         (prefix-command--needs-update, prefix-command--last-echo): New vars.
21613         (prefix-command-update, prefix-command-preserve): New functions.
21614         (reset-this-command-lengths): New compatibility definition.
21615         (universal-argument--mode): Call prefix-command-update.
21616         (universal-argument, universal-argument-more, negative-argument)
21617         (digit-argument): Call prefix-command-preserve-state.
21618         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
21619         the "prefix argument" to echo.
21620         (this_command_key_count_reset, before_command_key_count)
21621         (before_command_echo_length): Delete variables.
21622         (echo_add_key): Always add a space.
21623         (echo_char): Remove.
21624         (echo_dash): Don't give up when this_command_key_count is 0, since that
21625         is now the case after a prefix command.
21626         (echo_update): New function, extracted from echo_now.
21627         (echo_now): Use it.
21628         (add_command_key, read_char, record_menu_key): Remove old disabled code.
21629         (command_loop_1): Don't refrain from pushing an undo boundary when
21630         prefix-arg is set.  Remove other prefix-arg special case, now handled
21631         directly in the prefix commands instead.  But call echo_now if there's
21632         a prefix state to echo.
21633         (read_char, record_menu_key): Use echo_update instead of echo_char.
21634         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
21635         (Freset_this_command_lengths): Delete function.
21636         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
21637         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
21638         * lisp/simple.el: Use those new hooks for C-u.
21639         (universal-argument--description): New function.
21640         (prefix-command-echo-keystrokes-functions): Use it.
21641         (universal-argument--preserve): New function.
21642         (prefix-command-preserve-state-hook): Use it.
21643         (command-execute): Call prefix-command-update if needed.
21644         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
21645         (kmacro-step-edit-prefix-index): Delete variables.
21646         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
21647         support for prefix arg commands.
21648         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
21649         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
21650         (cua--shift-control-prefix): Use prefix-command-preserve-state.
21651         Remove now unused arg `arg'.
21652         (cua--prefix-override-handler, cua--prefix-repeat-handler)
21653         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
21654         Update accordingly.
21655         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
21656         any more.
21657         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
21658         if the mark is not set.
21660 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21662         Rework quoting in Emacs Lisp Introduction
21663         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
21664         (if in more detail, type-of-animal in detail, else): Rework the
21665         early example to use " rather than ' so that we don’t burden
21666         complete novices with the low-priority detail of text quoting style.
21667         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
21668         (kill-new function, kill-ring-yank-pointer)
21669         (Complete forward-sentence, Loading Files)
21670         (Code for current-kill, Code for current-kill, yank):
21671         Resurrect the Emacs 22 versions of the code, which uses grave
21672         quoting style in doc strings.
21673         (Complete zap-to-char): Mention how quoting works in doc strings.
21675         Setup quote display only if interactive
21676         * lisp/startup.el (command-line):
21677         Skip call to startup--setup-quote-display if noninteractive.
21678         Without this change, python-shell-prompt-validate-regexps-1
21679         fails in test/automated/python-tests.el when run in an
21680         en_US.utf8 locale on Fedora.
21682 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
21684         Use defalias at the top level
21685         * lisp/gnus/gnus-util.el (gnus-format-message):
21686         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
21687         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
21689 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21691         terminal-init-w32console mimics command-line
21692         Problem reported by Eli Zaretskii.
21693         * lisp/startup.el (startup--setup-quote-display):
21694         New function, refactored from a part of ‘command-line’.
21695         (command-line): Use it.
21696         * lisp/term/w32console.el (terminal-init-w32console):
21697         Use it, so that this function stays consistent with ‘command-line’.
21699         Display replacement quotes with shadow glyphs
21700         * lisp/startup.el (command-line): When displaying ASCII
21701         replacements for curved quotes, use a shadow glyph instead of a
21702         regular one, to avoid ambiguity.
21704 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
21706         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
21708 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21710         Docstring fixes re quotes in C code
21711         Fix some docstring quoting problems, mostly by escaping apostrophe.
21713 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
21715         Some Tramp password fixes
21716         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
21717         of the hops.
21718         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
21719         at the beginning of the command.  Otherwise, it could be
21720         interpreted as password prompt if the remote host echoes the
21721         command.
21722         (tramp-remote-coding-commands): Add "openssl enc -base64".
21724 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
21726         Make vc-git-working-revision always return the commit hash
21727         * lisp/vc/vc-git.el (vc-git-working-revision):
21728         Return the commit hash (bug#21383).
21729         (vc-git--symbolic-ref): New function, extracted from above.
21730         (vc-git-mode-line-string): Use it.
21732 2015-09-01  K. Handa  <handa@gnu.org>
21734         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
21735         * src/ftfont.c (MFLTGlyphFT): New type.
21736         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
21737         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
21738         elements in the array MFLTGlyphString.glyphs.
21740 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
21742         Improve comments in elisp-mode.el, elisp-mode-tests.el
21743         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
21745         Delete Emacs 25 test in mode-local.el
21746         * lisp/cedet/mode-local.el (describe-mode-local-overload):
21747         Fix missed an edit in previous commit.
21749         Show all known mode-local overrides in *Help*
21750         * lisp/cedet/mode-local.el (describe-mode-local-overload):
21751         Assume Emacs 25. Add all known mode-local overrides.
21753 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
21755         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
21756         Ensure that the article where the search word is found is displayed
21757         and pointed to in the summary buffer.
21759 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
21761         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
21762         When the region is active, but is empty (length 0), act as though
21763         the region was not active; that is, put a comment at the end of
21764         the line.  (Bug#21119)
21766 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
21768         Port tls.el to older Emacs
21769         * lisp/net/tls.el (tls-format-message):
21770         Alias to format-message, or format if not available.
21771         (open-tls-stream): Use it.
21773 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
21775         hideif.el: Recognize .h++ as C++ header
21776         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
21778         isearch: Document character folding mode
21779         * lisp/isearch.el (isearch-forward):
21780         Mention `isearch-toggle-character-fold' in doc string.
21782 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21784         Quoting fixes in ERC and Eshell
21785         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
21786         * lisp/erc/erc-backend.el (define-erc-response-handler):
21787         * lisp/erc/erc-fill.el (erc-fill-static-center):
21788         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
21789         * lisp/eshell/em-glob.el (eshell-glob-entries):
21790         * lisp/eshell/em-hist.el (eshell-save-some-history):
21791         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
21792         (eshell-shuffle-files):
21793         * lisp/eshell/esh-cmd.el (eshell-do-eval):
21794         * lisp/eshell/esh-proc.el (eshell-process-interact)
21795         (eshell-query-kill-processes):
21796         Respect ‘text-quoting-style’ in diagnostics and doc strings.
21798         Quoting fixes in Gnus
21799         * lisp/gnus/gnus-agent.el:
21800         (gnus-agent-possibly-synchronize-flags-server):
21801         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
21802         * lisp/gnus/gnus-eform.el (gnus-edit-form):
21803         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
21804         (gnus-group-nnimap-edit-acl):
21805         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
21806         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
21807         * lisp/gnus/message.el (message-strip-subject-encoded-words)
21808         (message-check-recipients, message-send-form-letter):
21809         * lisp/gnus/mm-decode.el (mm-display-part):
21810         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
21811         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
21812         (mml-smime-get-ldap-cert):
21813         * lisp/gnus/spam-report.el (spam-report-process-queue):
21814         Respect ‘text-quoting-style’ in diagnostics.
21815         * lisp/gnus/gnus-art.el (article-display-face)
21816         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
21817         Use straight quoting in email.
21818         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
21819         Escape apostrophes in doc strings.
21821         Quoting fixes in lisp mail, mh-e, net, url
21822         * lisp/mail/emacsbug.el (report-emacs-bug)
21823         (report-emacs-bug-hook): Use straight quotes in outgoing email,
21824         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
21825         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
21826         * lisp/mail/rmailout.el (rmail-output-read-file-name):
21827         * lisp/net/imap.el (imap-interactive-login):
21828         * lisp/net/tls.el (open-tls-stream):
21829         * lisp/url/url-auth.el (url-register-auth-scheme):
21830         Respect ‘text-quoting-style’ in diagnostics.
21831         * lisp/mh-e/mh-e.el (mh-sortm-args):
21832         Quote docstring example using text quotes, not as a Lisp quote.
21834 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
21836         Fix some byte-compiler warnings in EDE
21837         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
21838         existing autoloader list, rather than add to it.
21839         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
21840         argument to eieio class constructor.
21841         (ede-show-supported-projects): New.
21842         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
21843         with (oref ... name).
21844         (ede-auto-load-project): Use slot name, not initarg key.
21845         * lisp/cedet/ede/generic.el (ede-generic-load)
21846         (ede-generic-find-matching-target): Use slot name, not initarg key.
21847         (ede-find-target): Use oref-default on class name.
21848         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
21849         class constructor.
21850         (ede-enable-generic-projects): Make project type names unique.
21852 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
21854         Fix directory accessibility tests for w32 network volumes
21855         * src/w32.c (faccessat): Don't fail with network volumes without a
21856         share.
21857         (w32_accessible_directory_p): Handle network volumes without a
21858         share.
21860         Fix handling long file names in readdir on MS-Windows
21861         * src/w32.c (sys_readdir): Append "\*" to the directory after
21862         converting it to UTF-16/ANSI, not before, to avoid overflowing the
21863         260-character limit on file names in filename_to_utf16/ansi.
21865         Make file-accessible-directory-p reliable on MS-Windows
21866         * src/w32.c (w32_accessible_directory_p): New function.
21867         * src/w32.h (w32_accessible_directory_p): Add prototype.
21868         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
21869         w32_accessible_directory_p to test a directory for accessibility
21870         by the current user.  (Bug#21346)
21871         (Ffile_accessible_directory_p): Remove the w32 specific caveat
21872         from the doc string.
21874 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
21876         Don't call do_pending_window_change in signal handlers (Bug#21380)
21877         * src/gtkutil.c (xg_frame_resized):
21878         * src/xterm.c (x_set_window_size):
21879         * src/w32term.c (x_set_window_size): Don't call
21880         do_pending_window_change.
21882 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21884         Quoting fixes in lisp/org
21885         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
21886         (org-tags-view):
21887         * lisp/org/org-capture.el (org-capture-mode)
21888         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
21889         (org-ctags-ask-append-topic):
21890         * lisp/org/org.el (org-time-string-to-time)
21891         (org-time-string-to-absolute):
21892         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
21893         (org-ctags-ask-append-topic):
21894         * lisp/org/org.el (org-time-string-to-time)
21895         (org-time-string-to-absolute):
21896         Respect ‘text-quoting-style’ in diagnostics.
21897         * lisp/org/org-agenda.el (org-agenda-custom-commands)
21898         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
21899         * lisp/org/org-capture.el (org-capture-fill-template):
21900         Avoid contraction in output file that might be ASCII.
21901         * lisp/org/org-compat.el (format-message):
21902         Define if not already defined, for backward compatibility.
21903         * lisp/org/org-src.el (org-edit-src-save):
21904         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
21905         Escape apostrophes in diagnostics.
21907         Treat “instead” strings as docstrings
21908         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
21909         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
21910         Substitute quotes in instead strings.
21912 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
21914         Better documentation of seq-let
21915         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
21916         documentation of seq-let.
21918 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21920         * lisp/international/ccl.el: Fix quoting.
21922         Quoting fixes in lisp/international and lisp/leim
21923         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
21924         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
21925         * lisp/international/mule-cmds.el:
21926         (select-safe-coding-system-interactively, leim-list-file-name):
21927         * lisp/international/quail.el (quail-use-package, quail-help):
21928         * lisp/international/titdic-cnv.el (tit-process-header)
21929         (miscdic-convert):
21930         Respect text quoting style in doc strings and diagnostics.
21931         * lisp/international/quail.el (lisp/international/quail.el):
21932         * lisp/leim/quail/ethiopic.el ("ethiopic"):
21933         Escape apostrophes in doc strings.
21935         Make ‘text-quoting-style’ a plain defvar
21936         It doesn’t need customization, as it’s likely useful only by experts.
21937         Suggested by Stefan Monnier in:
21938         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
21939         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
21941         Quoting fixes in lisp/textmodes
21942         * lisp/textmodes/bibtex.el (bibtex-validate)
21943         (bibtex-validate-globally, bibtex-search-entries):
21944         * lisp/textmodes/ispell.el (ispell-command-loop):
21945         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
21946         * lisp/textmodes/texinfmt.el (texinfmt-version)
21947         (texinfo-format-region, texinfo-format-buffer-1):
21948         * lisp/textmodes/two-column.el (2C-split):
21949         Respect text quoting style in doc strings and diagnostics.
21950         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
21951         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
21952         Escape apostrophes in doc strings.
21954         Documentation fixes re quotes
21955         Prefer curved quotes in examples if users will typically see
21956         curved quotes when the examples run.
21957         Mention format-message when appropriate.
21958         Don’t use @code in examples.
21959         Quote an apostrophe with @kbd.
21961         Quoting fixes in lisp/progmodes
21962         * lisp/progmodes/cc-engine.el (c-bos-report-error):
21963         * lisp/progmodes/cpp.el (cpp-edit-reset):
21964         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
21965         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
21966         (etags-tags-apropos, list-tags, tags-apropos):
21967         * lisp/progmodes/executable.el (executable-set-magic):
21968         * lisp/progmodes/octave.el (octave-sync-function-file-names)
21969         (octave-help, octave-find-definition-default-filename)
21970         (octave-find-definition):
21971         Respect text quoting style in doc strings and diagnostics.
21972         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
21973         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
21974         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
21975         Escape apostrophes in doc strings.
21976         * lisp/progmodes/cmacexp.el (c-macro-expansion):
21977         Use straight quoting in ASCII comment.
21978         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
21979         (idlwave-pad-keyword):
21980         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
21981         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
21982         (vhdl-electric-semicolon, vhdl-electric-comma)
21983         (vhdl-electric-period, vhdl-electric-equal):
21984         Use directed quotes in diagnostics and doc strings.
21986 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
21988         Minor documentation and NEWS tweak
21989         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
21990         Add an index entry.
21991         * etc/NEWS: Fix a typo in character-fold-to-regexp.
21993 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
21995         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
21996         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
21997         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
21998         Adapt test.
22000 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
22002         Text quoting fixes in cedet, emulation, emacs-lisp
22003         * lisp/cedet/ede.el (ede-check-project-directory):
22004         * lisp/cedet/semantic/analyze/debug.el
22005         (semantic-analyzer-debug-insert-include-summary):
22006         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
22007         * lisp/cedet/semantic/decorate/include.el
22008         (semantic-decoration-unknown-include-describe)
22009         (semantic-decoration-all-include-summary):
22010         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
22011         * lisp/emulation/edt.el (edt-load-keys):
22012         * lisp/emulation/viper-cmd.el
22013         (viper-display-current-destructive-command)
22014         (viper-query-replace, viper-brac-function):
22015         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
22016         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
22017         Respect text quoting style in doc string or diagnostic.
22018         * lisp/cedet/mode-local.el (describe-mode-local-overload):
22019         Use format-message to avoid overtranslating quotes.
22020         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
22021         Escape an apostrophe in a docstring.
22022         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
22024 2015-08-29  Daniel Colascione  <dancol@dancol.org>
22026         Fix which-func for curly quotes: look for symbol, not message
22027         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
22028         imenu-unavailable error symbol instead of trying to match message
22029         exactly.
22030         * lisp/imenu.el (imenu-unavailable): New error.
22031         (imenu-unavailable-error): New function.
22033 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
22035         Fix Python tests on MS-Windows
22036         * test/automated/python-tests.el
22037         (python-shell-calculate-command-1): Run python-shell-interpreter
22038         through shell-quote-argument before comparing with what
22039         python-shell-calculate-command returns.
22040         (python-shell-calculate-pythonpath-1)
22041         (python-shell-calculate-pythonpath-2)
22042         (python-shell-calculate-process-environment-2): Use path-separator
22043         instead of a literal ':'.
22044         (python-shell-calculate-exec-path-2)
22045         (python-shell-calculate-exec-path-3)
22046         (python-shell-calculate-exec-path-4)
22047         (python-shell-with-environment-1)
22048         (python-shell-with-environment-2): Run "/env/bin" through
22049         expand-file-name before comparing with exec-path.  (Bug#21375)
22051 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
22053         Use Core Text types/functions/variables/enumerators directly
22054         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
22055         (CharacterCollection): Remove typedefs.  All uses replaced with
22056         definitions.
22057         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
22058         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
22059         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
22060         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
22061         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
22062         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
22063         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
22064         definitions.
22065         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
22066         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
22067         (MAC_FONT_FORMAT_BITMAP)
22068         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
22069         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
22070         All uses replaced with definitions.
22071         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
22072         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
22073         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
22074         Add compatibility enumerators for older versions.
22075         (mac_font_descriptor_create_with_attributes)
22076         (mac_font_descriptor_create_matching_font_descriptors)
22077         (mac_font_descriptor_create_matching_font_descriptor)
22078         (mac_font_descriptor_copy_attribute)
22079         (mac_font_descriptor_supports_languages)
22080         (mac_font_create_with_name, mac_font_get_size)
22081         (mac_font_copy_family_name, mac_font_copy_character_set)
22082         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
22083         (mac_font_get_descent, mac_font_get_leading)
22084         (mac_font_get_underline_position)
22085         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
22086         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
22087         replaced with definitions.
22088         (mac_font_create_preferred_family_for_attributes)
22089         (mac_font_get_advance_width_for_glyph)
22090         (mac_font_get_bounding_rect_for_glyph)
22091         (mac_font_create_available_families, mac_font_shape):
22092         Remove macros for renamed functions.
22093         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
22094         * src/macfont.m (mac_font_descriptor_supports_languages):
22095         Rename from mac_ctfont_descriptor_supports_languages.
22096         (mac_font_create_preferred_family_for_attributes): Rename from
22097         mac_ctfont_create_preferred_family_for_attributes.
22098         (mac_font_get_advance_width_for_glyph): Rename from
22099         mac_ctfont_get_advance_width_for_glyph.
22100         Use kCTFontOrientationDefault also for older versions.
22101         (mac_font_get_bounding_rect_for_glyph): Rename from
22102         mac_ctfont_get_bounding_rect_for_glyph.
22103         Use kCTFontOrientationDefault also for older versions.
22104         (mac_font_create_available_families): Rename from
22105         mac_ctfont_create_available_families.
22106         (mac_font_equal_in_postscript_name): Rename from
22107         mac_ctfont_equal_in_postscript_name.  All uses changed.
22108         (mac_font_create_line_with_string_and_font): Rename from
22109         mac_ctfont_create_line_with_string_and_font.  All uses changed.
22110         (mac_font_shape): Rename from mac_ctfont_shape.
22111         (mac_font_family_compare): Remove unused declaration.
22113 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
22115         Fix minor text quoting in calc, calendar, vc
22116         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
22117         * lisp/calc/calc-help.el (calc-j-prefix-help):
22118         * lisp/calc/calc-misc.el (calc-help):
22119         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
22120         Escape an apostrophe in a docstring.
22121         * lisp/calc/calc-forms.el (calc-hms-notation):
22122         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
22123         Escape an apostrophe in a diagnostic.
22124         * lisp/calc/calc-misc.el (calc-help):
22125         * lisp/calendar/diary-lib.el (diary-include-files):
22126         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
22127         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
22128         * lisp/vc/ediff-diff.el (ediff-same-contents):
22129         * lisp/vc/ediff-merg.el (ediff-re-merge):
22130         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
22131         * lisp/vc/ediff-util.el (ediff-test-save-region)
22132         (ediff-status-info):
22133         * lisp/vc/ediff.el (ediff-merge-revisions)
22134         (ediff-merge-revisions-with-ancestor):
22135         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
22136         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
22137         Respect text quoting style in doc string or diagnostic.
22138         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
22139         * lisp/vc/add-log.el (change-log-goto-source):
22140         Avoid double-formatting.
22141         * lisp/vc/ediff-init.el (format-message):
22142         New backward-compatibility alias.
22144 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
22146         Fix minor text quoting problems in lisp top level
22147         * lisp/apropos.el (apropos-describe-plist):
22148         * lisp/cus-theme.el (customize-themes):
22149         * lisp/dired.el (dired-log):
22150         * lisp/help-fns.el (describe-variable):
22151         * lisp/hexl.el (hexl-insert-multibyte-char):
22152         * lisp/info.el (Info-finder-find-node):
22153         * lisp/json.el (json-read-string):
22154         * lisp/novice.el (disabled-command-function)
22155         (disabled-command-function):
22156         * lisp/startup.el (normal-mouse-startup-screen):
22157         * lisp/woman.el (WoMan-log, WoMan-warn):
22158         Respect text quoting style in doc string or diagnostic.
22159         * lisp/replace.el (replace-character-fold):
22160         * src/syntax.c (Fmodify_syntax_entry):
22161         Escape an apostrophe in a docstring.
22162         * lisp/tempo.el (tempo-define-template):
22163         Remove confusing apostrophe from docstring.
22164         * lisp/whitespace.el (whitespace-mark-x):
22165         Use directed quotes in docstring.
22167 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
22169         Fix indentation rule in css-mode
22170         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
22171         brackets in presence of pseudo-selectors.  (Bug#21328)
22173 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
22175         Fix a bug in recording a macro while flyspell-mode is active
22176         * lisp/subr.el (sit-for): Don't call read-event when recording a
22177         macro.  (Bug#21329)
22179 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
22181         Tweak startup screen quoting
22182         * lisp/startup.el (normal-splash-screen): Use standard
22183         "M-" abbrevation rather than a confusingly-different one.
22184         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
22186 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
22188         Add test case for ‘format’ bug and refactor
22189         * src/editfns.c (styled_format): Refactor internally, mostly by
22190         moving declarations closer to uses.  This should not affect behavior.
22191         * test/automated/textprop-tests.el (textprop-tests-format): New test.
22193         Fix ‘format’ bug with property offsets
22194         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
22195         bug in calculating string property offsets (Bug#21351).
22197         Use straight quotes in lib-src diagnostics
22198         These auxiliary programs can’t use Emacs’s text-quoting-style,
22199         and it’s too much trouble to redo that mechanism by hand.
22200         So just use straight quotes for now.
22201         * lib-src/ebrowse.c (main):
22202         * lib-src/emacsclient.c (decode_options, main):
22203         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
22204         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
22205         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
22206         (none_help, print_language_names, print_help, add_regex)
22207         (suggest_asking_for_help):
22208         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
22209         Use straight quotes in diagnostics.
22211         ‘text-quoting-style’ fixes for admin
22212         * admin/admin.el (cusver-scan, cusver-check):
22213         * admin/authors.el (authors-canonical-file-name):
22214         * admin/bzrmerge.el (bzrmerge-missing):
22215         Respect ‘text-quoting-style’ in diagnostics.
22217 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
22219         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
22220         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
22221         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
22222         * doc/lispref/internals.texi (Writing Emacs Primitives):
22223         * etc/NEWS:
22224         Document the change.
22225         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
22226         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
22227         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
22228         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
22229         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
22230         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
22231         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
22232         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
22233         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
22234         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
22235         Remove.  All uses removed.  The code now assumes
22236         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
22237         * src/bytecode.c (relocate_byte_stack):
22238         Rename from unmark_byte_stack, since it now only relocates.
22239         All callers changed.
22240         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
22241         with GCPROs removed.
22242         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
22243         * test/automated/finalizer-tests.el (finalizer-basic)
22244         (finalizer-circular-reference, finalizer-cross-reference)
22245         (finalizer-error):
22246         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
22247         Remove tests, as they depend on gc-precise.
22249 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
22251         Improve seq-concatenate for new sequence types
22252         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
22253         ensure that concatenation happens on sequences only.  This makes it
22254         possible to use `seq-concatenate' for new types of seqs.
22255         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
22256         New function used in `seq-concatenate'.
22257         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
22258         for seq-into-sequence.
22260 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
22262         Add mode local overrides to xref-find-definitions
22263         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
22264         (xref-mode-local-overload): New; add mode local overrides to
22265         xref-find-definitions.
22266         * test/automated/elisp-mode-tests.el: Add mode local override tests.
22267         (xref-elisp-test-run): Handle indented defuns.
22268         (xref-elisp-generic-*): Improve doc strings.
22269         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
22270         (elisp--xref-find-definitions): Use it.
22272         Add mode local overrides to describe-function
22273         * lisp/cedet/mode-local.el (describe-mode-local-overload):
22274         New; add mode local overrides to describe-function.
22275         * etc/NEWS: Document change.
22277 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
22279         Prefer straight quoting in some etc text files
22280         These files are plain text and might be used by non-Emacs apps.
22281         They’re mostly ASCII, so just use straight quotes.
22283         Fix quoting in ‘message_with_string’
22284         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
22285         should work now.
22286         * src/xdisp.c (message_to_stderr): New function, refactored from
22287         part of ‘message3_nolog’.
22288         (message3_nolog): Use it.
22289         (message_with_string): Use it.  Don’t mishandle NUL bytes when
22290         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
22291         Use ‘format-message’, not ‘format’, so that quotes are translated.
22293 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
22295         Mention false positives of file-accessible-directory on w32
22296         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
22297         (Bug#21346)
22299 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
22301         Treat error strings as help
22302         * src/print.c (print_error_message): Translate quotes and command
22303         keys in errmsg so that users see, e.g., "Symbol’s value as
22304         variable is void: foo" when text-quoting-style is curved.
22306 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
22308         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
22310 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
22312         Top-level elisp files respect ‘text-quoting-style’
22313         In top-level elisp files, use format-message in diagnostic formats,
22314         so that they follow user preference as per ‘text-quoting-style’
22315         rather than being hard-coded to quote `like this'.
22316         * lisp/allout.el (allout-get-configvar-values):
22317         * lisp/apropos.el (apropos-symbols-internal):
22318         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
22319         (dired-do-create-files-regexp, dired-create-files-non-directory):
22320         * lisp/dired-x.el (dired-do-run-mail):
22321         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
22322         * lisp/disp-table.el (standard-display-european):
22323         * lisp/find-dired.el (find-dired):
22324         * lisp/forms.el (forms-mode):
22325         * lisp/ido.el (ido-buffer-internal):
22326         * lisp/info.el (Info-index-next):
22327         * lisp/outline.el (outline-invent-heading):
22328         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
22329         * lisp/proced.el (proced-log):
22330         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
22331         * lisp/recentf.el (recentf-open-files, recentf-save-list):
22332         * lisp/savehist.el (savehist-save):
22333         * lisp/server.el (server-ensure-safe-dir):
22334         * lisp/ses.el (ses-rename-cell):
22335         * lisp/simple.el (list-processes--refresh):
22336         * lisp/startup.el (command-line):
22337         * lisp/strokes.el (strokes-unset-last-stroke)
22338         (strokes-execute-stroke):
22339         Use format-message so that quotes are restyled.
22340         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
22341         Don’t quote ‘raised’.
22342         * lisp/descr-text.el (describe-char):
22343         * lisp/dirtrack.el (dirtrack-debug-message):
22344         * lisp/hexl.el (hexl-insert-multibyte-char):
22345         Apply substitute-command-keys to help string.
22346         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
22347         (wdired-do-perm-changes):
22348         Let dired-log do the formatting.
22350 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22352         Go back to grave quoting in Tramp
22353         * lisp/net/tramp-adb.el:
22354         * lisp/net/tramp-cache.el:
22355         * lisp/net/tramp-compat.el:
22356         * lisp/net/tramp-gvfs.el:
22357         * lisp/net/tramp-gw.el:
22358         * lisp/net/tramp-sh.el:
22359         * lisp/net/tramp-smb.el:
22360         * lisp/net/tramp.el:
22361         Stick with grave quoting in diagnostics strings.  This is more
22362         portable to older Emacs, desirable for Tramp.
22363         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
22364         for diagnostic that needs requoting.
22365         * lisp/net/tramp-compat.el (format-message):
22366         Fall back on simple ‘format’, since that’s good enough now.
22368         Go back to grave quoting in Gnus
22369         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
22370         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
22371         (gnus-agent-fetch-headers):
22372         * lisp/gnus/gnus-int.el (gnus-start-news-server):
22373         * lisp/gnus/gnus-registry.el:
22374         (gnus-registry--split-fancy-with-parent-internal)
22375         (gnus-registry-post-process-groups):
22376         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
22377         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
22378         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
22379         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
22380         * lisp/gnus/spam.el (spam-check-blackholes):
22381         Stick with grave quoting in diagnostics strings.  This is more
22382         portable to older Emacs, desirable for Gnus.
22384         Fix customization of text-quoting-style
22385         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
22386         * lisp/wid-edit.el (widget-docstring):
22387         Get raw docstring here since it’s cooked later and should not be
22388         cooked twice.
22389         * lisp/cus-edit.el (custom-group-value-create):
22390         Cook the docstring before inserting it.
22391         * lisp/cus-start.el (text-quoting-style): Quote the customization
22392         docstrings according to the new rules.  Give curved examples.
22394         format-message now curves ` and '
22395         That way, the caller doesn’t have to use curved quotes to
22396         get diagnostics that match the text-quoting-style preferences.
22397         Suggested by Dmitry Gutov in:
22398         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
22399         This means we no longer need %qs, so remove that format.
22400         While we’re at it, fix an unlikely bug and lessen the pressure
22401         on the garbage collector by processing the string once rather
22402         than twice in the usual case.
22403         * doc/lispref/strings.texi (Formatting Strings):
22404         * etc/NEWS: Document this.
22405         * lisp/subr.el (format-message): Remove; now done in C.
22406         * src/callint.c (Fcall_interactively):
22407         * src/editfns.c (Fmessage, Fmessage_box):
22408         Use Fformat_message instead of Finternal__text_restyle
22409         followed by Fformat.
22410         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
22411         uLSQM and uRSQM.
22412         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
22413         when pure ASCII now suffices.  Fix unlikely bug when parsing
22414         unibyte string containing non-ASCII bytes.  Use inline code
22415         rather than memcpy, as it’s a tiny number of bytes.
22416         (Finternal__text_restyle): Remove; no longer used.
22417         (syms_of_doc): Don’t declare it.
22418         * src/editfns.c (Fformat): Rewrite in terms of new function
22419         ‘styled_format’.
22420         (Fformat_message): New function, moved here from subr.el.
22421         (styled_format): New function, with the old guts of Fformat,
22422         except it now optionally transliterates quotes, and it transliterates
22423         traditional grave accent and apostrophe quoting as well.
22424         Remove recently-added q flag; no longer needed or used.
22425         (syms_of_editfns): Define format-message.
22426         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
22427         Remove; no longer need to be global symbols.
22428         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
22429         so that callers can use `%s'.
22430         * src/image.c (image_size_error, xbm_load_image, xbm_load)
22431         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
22432         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
22433         (svg_load_image, gs_load, x_kill_gs_process):
22434         * src/lread.c (load_warn_old_style_backquotes):
22435         * src/xfaces.c (load_pixmap):
22436         * src/xselect.c (x_clipboard_manager_error_1):
22437         Use `%s' instead of %qs in formats.
22439 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
22441         Minor fixes in doc/emacs/search.texi
22442         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
22443         (Special Isearch): Use @w{} to generate several consecutive spaces
22444         with Texinfo 6.  (Bug#21345)
22446 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
22448         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
22449         (tramp-awk-coding-test): New defconsts.
22450         (tramp-remote-coding-commands): Use them.
22451         (tramp-find-inline-encoding): Check for Perl only if necessary.
22453 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
22455         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
22456         index entries for the special form `quote'.
22458 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22460         Spelling fixes
22462         Gnus format-message typo fix
22463         * lisp/gnus/gnus-util.el (gnus-format-message):
22464         Fix typo when running in older Emacs.
22466         Prefer directed to neutral quotes in docstings and diagnostics.
22467         In docstrings, escape apostrophes that would otherwise be translated
22468         to curved quotes using the newer, simpler rules.
22469         * admin/unidata/unidata-gen.el (unidata-gen-table):
22470         * lisp/align.el (align-region):
22471         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
22472         * lisp/bookmark.el (bookmark-default-annotation-text):
22473         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
22474         * lisp/calc/calc-lang.el (math-read-giac-subscr)
22475         (math-read-math-subscr):
22476         * lisp/calc/calc-misc.el (report-calc-bug):
22477         * lisp/calc/calc-prog.el (calc-fix-token-name)
22478         (calc-read-parse-table-part):
22479         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
22480         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
22481         * lisp/dabbrev.el (dabbrev-expand):
22482         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
22483         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
22484         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
22485         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
22486         * lisp/erc/erc-button.el (erc-nick-popup):
22487         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
22488         * lisp/eshell/em-dirs.el (eshell/cd):
22489         * lisp/eshell/em-glob.el (eshell-glob-regexp):
22490         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
22491         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
22492         * lisp/eshell/esh-opt.el (eshell-show-usage):
22493         * lisp/files-x.el (modify-file-local-variable):
22494         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
22495         (filesets-update-pre010505):
22496         * lisp/find-cmd.el (find-generic, find-to-string):
22497         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
22498         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
22499         (gnus-agent-fetch-headers):
22500         * lisp/gnus/gnus-int.el (gnus-start-news-server):
22501         * lisp/gnus/gnus-registry.el:
22502         (gnus-registry--split-fancy-with-parent-internal):
22503         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
22504         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
22505         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
22506         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
22507         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
22508         * lisp/gnus/spam.el (spam-check-blackholes):
22509         * lisp/mail/feedmail.el (feedmail-run-the-queue):
22510         * lisp/mpc.el (mpc-playlist-rename):
22511         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
22512         * lisp/net/mairix.el (mairix-widget-create-query):
22513         * lisp/net/tramp-cache.el:
22514         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
22515         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
22516         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
22517         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
22518         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
22519         (org-babel-goto-named-result):
22520         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
22521         * lisp/org/ob-ref.el (org-babel-ref-resolve):
22522         * lisp/org/org-agenda.el (org-agenda-prepare):
22523         * lisp/org/org-bibtex.el (org-bibtex-fields):
22524         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
22525         (org-clock-resolve):
22526         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
22527         * lisp/org/org-habit.el (org-habit-parse-todo):
22528         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
22529         (org-mouse-context-menu):
22530         * lisp/org/org-table.el (org-table-edit-formulas):
22531         * lisp/org/ox.el (org-export-async-start):
22532         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
22533         (dun-rooms, dun-endgame-questions):
22534         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
22535         * lisp/progmodes/ada-xref.el (ada-find-executable):
22536         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
22537         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
22538         (flymake-start-syntax-check-process):
22539         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
22540         * lisp/progmodes/sql.el (sql-comint):
22541         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
22542         * lisp/server.el (server-get-auth-key):
22543         * lisp/subr.el (version-to-list):
22544         * lisp/textmodes/reftex-ref.el (reftex-label):
22545         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
22546         * lisp/vc/ediff-diff.el (ediff-same-contents):
22547         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
22548         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
22549         Use directed rather than neutral quotes in diagnostics.
22551         Treat ' like ’ even when not matching `
22552         This is simpler and easier to explain, and should encourage better
22553         typography.  Do this in Electric Quote mode and when translating
22554         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
22555         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
22556         * doc/emacs/text.texi (Quotation Marks):
22557         * doc/lispref/help.texi (Keys in Documentation):
22558         * etc/NEWS:
22559         Document this.
22560         * lisp/electric.el (electric-quote-post-self-insert-function):
22561         * src/doc.c (Fsubstitute_command_keys):
22562         Always treat ' like ’ even when not matched by an open quote.
22564 2015-08-25  Glenn Morris  <rgm@gnu.org>
22566         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
22567         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
22569 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
22571         * src/macfont.m (macfont_create_family_with_symbol):
22572         Accept localized names.
22574 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22576         Tramp diagnostics as per ‘text-quoting-style’
22577         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
22578         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
22579         (tramp-adb-handle-delete-directory)
22580         (tramp-adb-handle-delete-file)
22581         (tramp-adb-handle-file-local-copy)
22582         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
22583         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
22584         (tramp-adb-maybe-open-connection):
22585         * lisp/net/tramp-cache.el:
22586         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
22587         (tramp-compat-octal-to-decimal)
22588         (tramp-compat-coding-system-change-eol-conversion):
22589         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
22590         (tramp-gvfs-do-copy-or-rename-file)
22591         (tramp-gvfs-handle-delete-directory)
22592         (tramp-gvfs-handle-delete-file)
22593         (tramp-gvfs-handle-expand-file-name)
22594         (tramp-gvfs-handle-file-local-copy)
22595         (tramp-gvfs-handle-file-notify-add-watch)
22596         (tramp-gvfs-handle-make-directory)
22597         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
22598         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
22599         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
22600         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
22601         (tramp-sh-handle-set-visited-file-modtime)
22602         (tramp-sh-handle-set-file-modes)
22603         (tramp-sh-handle-file-name-all-completions)
22604         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
22605         (tramp-do-copy-or-rename-file-directly)
22606         (tramp-do-copy-or-rename-file-out-of-band)
22607         (tramp-sh-handle-make-directory)
22608         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
22609         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
22610         (tramp-sh-handle-start-file-process)
22611         (tramp-sh-handle-file-local-copy)
22612         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
22613         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
22614         (tramp-find-file-exists-command, tramp-open-shell)
22615         (tramp-find-shell)
22616         (tramp-open-connection-setup-interactive-shell)
22617         (tramp-find-inline-encoding, tramp-find-inline-compress)
22618         (tramp-compute-multi-hops, tramp-maybe-open-connection)
22619         (tramp-wait-for-output, tramp-send-command-and-check)
22620         (tramp-send-command-and-read, tramp-get-remote-path)
22621         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
22622         (tramp-get-ls-command-with-quoting-style)
22623         (tramp-get-test-command, tramp-get-remote-ln)
22624         (tramp-get-remote-perl, tramp-get-remote-stat)
22625         (tramp-get-remote-readlink, tramp-get-remote-trash)
22626         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
22627         (tramp-get-remote-inotifywait, tramp-get-remote-id)
22628         (tramp-get-remote-python):
22629         * lisp/net/tramp-smb.el (tramp-smb-errors)
22630         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
22631         (tramp-smb-handle-delete-directory)
22632         (tramp-smb-handle-delete-file)
22633         (tramp-smb-handle-file-local-copy)
22634         (tramp-smb-handle-make-directory)
22635         (tramp-smb-handle-make-directory-internal)
22636         (tramp-smb-handle-make-symbolic-link)
22637         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
22638         (tramp-smb-handle-set-file-modes)
22639         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
22640         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
22641         (tramp-process-actions):
22642         Generate diagnostics according to ‘text-quoting-style’, by
22643         using curved quotes in format strings and ‘format-message’
22644         when appropriate.
22645         * lisp/net/tramp-compat.el (format-message):
22646         Define a replacement, if it’s an older version of Emacs
22647         that doesn’t have it already.
22649         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
22651 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
22653         Fix documentation for `save-excursion'
22654         * doc/lispref/positions.texi (Excursions):
22655         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
22656         (Template for save-excursion, Point and mark): `save-excursion'
22657         does not save&restore the mark any more.
22659 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
22661         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
22662         New defconsts.
22663         (tramp-do-file-attributes-with-stat)
22664         (tramp-do-directory-files-and-attributes-with-stat): Use them.
22665         (tramp-convert-file-attributes): Remove double slashes in symlinks.
22666         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
22667         Handle symlinks with "//" in the file name.
22669         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
22671 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
22673         Fix cl-subseq and cl-concatenate
22674         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
22675         seq functions.
22676         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
22677         seq-concatenate.
22679 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
22681         Fix full-screen code when there is no window manager (Bug#21317)
22682         * src/xterm.h (x_wm_supports): Declare external.
22683         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
22684         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
22685         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
22686         `fullscreen' frame parameter.
22687         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
22688         without a window manager.
22690 2015-08-24  Glenn Morris  <rgm@gnu.org>
22692         * lisp/version.el (emacs-version): No longer include build host.
22693         * doc/lispref/intro.texi (Version Info): Update example.
22695 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22697         * doc/lispref/elisp.texi: Fix typo in previous change.
22699         More-conservative ‘format’ quote restyling
22700         Instead of restyling curved quotes for every call to ‘format’,
22701         create a new function ‘format-message’ that does the restyling,
22702         and using the new function instead of ‘format’ only in contexts
22703         where this seems appropriate.
22704         Problem reported by Dmitry Gutov and Andreas Schwab in:
22705         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
22706         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
22707         * doc/lispref/commands.texi (Using Interactive):
22708         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
22709         * doc/lispref/display.texi (Displaying Messages, Progress):
22710         * doc/lispref/elisp.texi:
22711         * doc/lispref/help.texi (Keys in Documentation):
22712         * doc/lispref/minibuf.texi (Minibuffer Misc):
22713         * doc/lispref/strings.texi (Formatting Strings):
22714         * etc/NEWS:
22715         Document the changes.
22716         * lisp/abbrev.el (expand-region-abbrevs):
22717         * lisp/apropos.el (apropos-library):
22718         * lisp/calc/calc-ext.el (calc-record-message)
22719         (calc-user-function-list):
22720         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
22721         * lisp/calc/calc-lang.el (math-read-big-balance):
22722         * lisp/calc/calc-store.el (calc-edit-variable):
22723         * lisp/calc/calc-units.el (math-build-units-table-buffer):
22724         * lisp/calc/calc-yank.el (calc-edit-mode):
22725         * lisp/calendar/icalendar.el (icalendar-export-region)
22726         (icalendar--add-diary-entry):
22727         * lisp/cedet/mode-local.el (mode-local-print-binding)
22728         (mode-local-describe-bindings-2):
22729         * lisp/cedet/semantic/complete.el (semantic-completion-message):
22730         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
22731         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
22732         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
22733         * lisp/descr-text.el (describe-text-properties-1, describe-char):
22734         * lisp/dframe.el (dframe-message):
22735         * lisp/dired-aux.el (dired-query):
22736         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
22737         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
22738         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
22739         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
22740         (cconv-analyze-form):
22741         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
22742         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
22743         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
22744         * lisp/emacs-lisp/edebug.el (edebug-format):
22745         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
22746         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
22747         (eldoc-message):
22748         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
22749         * lisp/emacs-lisp/find-func.el (find-function-library):
22750         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
22751         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
22752         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
22753         * lisp/emacs-lisp/package.el (package-compute-transaction)
22754         (package-install-button-action, package-delete-button-action)
22755         (package-menu--list-to-prompt):
22756         * lisp/emacs-lisp/timer.el (timer-event-handler):
22757         * lisp/emacs-lisp/warnings.el (lwarn, warn):
22758         * lisp/emulation/viper-cmd.el:
22759         (viper-toggle-parse-sexp-ignore-comments)
22760         (viper-kill-buffer, viper-brac-function):
22761         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
22762         * lisp/facemenu.el (facemenu-add-new-face):
22763         * lisp/faces.el (face-documentation, read-face-name)
22764         (face-read-string, read-face-font, describe-face):
22765         * lisp/files.el (find-alternate-file, hack-local-variables)
22766         (hack-one-local-variable--obsolete, write-file)
22767         (basic-save-buffer, delete-directory):
22768         * lisp/format.el (format-write-file, format-find-file)
22769         (format-insert-file):
22770         * lisp/help-fns.el (help-fns--key-bindings)
22771         (help-fns--compiler-macro, help-fns--obsolete)
22772         (help-fns--interactive-only, describe-function-1)
22773         (describe-variable):
22774         * lisp/help.el (describe-mode):
22775         * lisp/info-xref.el (info-xref-output):
22776         * lisp/info.el (Info-virtual-index-find-node)
22777         (Info-virtual-index, info-apropos):
22778         * lisp/international/kkc.el (kkc-error):
22779         * lisp/international/mule-cmds.el:
22780         (select-safe-coding-system-interactively)
22781         (select-safe-coding-system, describe-input-method):
22782         * lisp/international/mule-conf.el (code-offset):
22783         * lisp/international/mule-diag.el (describe-character-set)
22784         (list-input-methods-1):
22785         * lisp/international/quail.el (quail-error):
22786         * lisp/minibuffer.el (minibuffer-message):
22787         * lisp/mpc.el (mpc--debug):
22788         * lisp/msb.el (msb--choose-menu):
22789         * lisp/net/ange-ftp.el (ange-ftp-message):
22790         * lisp/net/gnutls.el (gnutls-message-maybe):
22791         * lisp/net/newst-backend.el (newsticker--sentinel-work):
22792         * lisp/net/newst-treeview.el (newsticker--treeview-load):
22793         * lisp/net/nsm.el (nsm-query-user):
22794         * lisp/net/rlogin.el (rlogin):
22795         * lisp/net/soap-client.el (soap-warning):
22796         * lisp/net/tramp.el (tramp-debug-message):
22797         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
22798         * lisp/nxml/nxml-parse.el (nxml-parse-error):
22799         * lisp/nxml/rng-cmpct.el (rng-c-error):
22800         * lisp/nxml/rng-match.el (rng-compile-error):
22801         * lisp/nxml/rng-uri.el (rng-uri-error):
22802         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
22803         * lisp/org/org-ctags.el:
22804         (org-ctags-ask-rebuild-tags-file-then-find-tag):
22805         * lisp/proced.el (proced-log):
22806         * lisp/progmodes/ebnf2ps.el (ebnf-log):
22807         * lisp/progmodes/flymake.el (flymake-log):
22808         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
22809         * lisp/replace.el (occur-1):
22810         * lisp/simple.el (execute-extended-command)
22811         (undo-outer-limit-truncate, define-alternatives):
22812         * lisp/startup.el (command-line):
22813         * lisp/subr.el (error, user-error, add-to-list):
22814         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
22815         (tutorial--find-changed-keys):
22816         * src/callint.c (Fcall_interactively):
22817         * src/editfns.c (Fmessage, Fmessage_box):
22818         Restyle the quotes of format strings intended for use as a
22819         diagnostic, when restyling seems appropriate.
22820         * lisp/subr.el (format-message): New function.
22821         * src/doc.c (Finternal__text_restyle): New function.
22822         (syms_of_doc): Define it.
22824 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
22826         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
22828 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22830         python.el: Fix python-shell-buffer-substring on indented code
22831         (Bug#21086)
22832         * lisp/progmodes/python.el (python-shell-buffer-substring):
22833         Respect current line indentation when calculating string.
22834         * test/automated/python-tests.el
22835         (python-shell-buffer-substring-10)
22836         (python-shell-buffer-substring-11)
22837         (python-shell-buffer-substring-12): New tests.
22839 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
22841         Fix minor glitches from ‘format’ reversion
22842         * doc/lispref/strings.texi (Formatting Strings):
22843         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
22844         Documentation’, not below.
22845         * src/syntax.c (Finternal_describe_syntax_value):
22846         Prefer AUTO_STRING to build_string where either will do, as
22847         AUTO_STRING is a bit faster.
22849 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22851         python.el: Defer shell setup code until first interactive prompt
22852         * lisp/progmodes/python.el
22853         (python-shell-comint-watch-for-first-prompt-output-filter):
22854         New function.
22855         (inferior-python-mode): Use it.
22856         (python-shell-first-prompt-hook): New hook.
22857         (python-shell-send-setup-code)
22858         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
22859         this hook instead of inferior-python-hook.
22861 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
22863         Remove the calls to `seq-into` from `seq-concatenate`
22864         Since most new types of seq would have to be defined as sequences (cons
22865         cells or CL structs, mostly), there is no need to convert the seqs to
22866         sequences (which can be a fairly expensive operation).
22867         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
22868         sequences.
22870 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22872         python.el: Fix completion for pdb interactions
22873         * lisp/progmodes/python.el (python-shell-completion-setup-code):
22874         Simplify.  Toggle print_mode for native wrapped completer.
22875         (python-shell-completion-native-setup): Ensure process buffer.
22876         Add print_mode attribute to completer wrapper to toggle returning
22877         or printing candidates.
22878         (python-shell-completion-native-get-completions): Cleanup.
22879         (python-shell-completion-get-completions): Cleanup.
22880         (python-shell-completion-at-point): Perform prompt checks.
22881         Force fallback completion in pdb interactions.
22883 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
22885         Make seq.el more extensible by using cl-defmethod
22886         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
22887         make it easier to extend seq.el with new "seq types".
22888         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
22889         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
22890         subseq in cl-extra.el, and use it in seq.el.
22892 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22894         python.el: Fix prompt detection with user overridden interpreter
22895         * lisp/progmodes/python.el (python-shell-prompt-detect):
22896         Honor buffer local python-shell-interpreter and
22897         python-shell-interpreter-interactive-arg.
22899 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
22901         Support exec-directory with non-ASCII characters on Windows
22902         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
22903         in the system's ANSI codepage, when it is used for invoking
22904         cmdproxy.
22906 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
22908         Revert "Extend ‘format’ to translate curved quotes"
22909         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
22911         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
22912         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
22914 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
22916         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
22917         Clarify "invisible window".
22919 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
22921         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
22922         magic-fallback-mode-alist.
22924 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22926         python.el: fallback completion, ffap and eldoc setup enhancements
22927         Setup codes are now sent continuously so that the current frame is
22928         always taken into account.  This allows working within debuggers
22929         and always keeping a fresh version of setup codes that will return
22930         proper results.
22931         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
22932         (python-shell-send-setup-code): Send code only when
22933         python-shell-setup-codes is non-nil.
22934         (python-shell-completion-string-code): Cleanup trailing newline.
22935         (python-shell-completion-get-completions): Always use
22936         python-shell-completion-setup-code.
22937         (python-ffap-setup-code): Work with any object, not only modules.
22938         (python-ffap-string-code): Cleanup trailing newline.
22939         (python-ffap-module-path): Always use python-ffap-setup-code.
22940         (python-eldoc-string-code): Cleanup trailing newline.
22941         (python-eldoc--get-doc-at-point): Always use
22942         python-eldoc-setup-code.  Return non-nil only if docstring is
22943         found.
22945         python.el: Increase native completion robustness
22946         * lisp/progmodes/python.el (python-shell-completion-native-setup):
22947         Make completer print real candidates and just return dummy ones to
22948         avoid input modification.
22949         (python-shell-completion-native-get-completions): Set
22950         comint-redirect-insert-matching-regexp to non-nil and make
22951         comint-redirect-finished-regexp match the last dummy candidate.
22952         Use python-shell-accept-process-output to wait for the full list
22953         of candidates.
22955 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
22957         Fix invocation of programs via cmdproxy.exe
22958         * src/w32proc.c (sys_spawnve): Use exec-directory, not
22959         invocation-directory, for finding cmdproxy.exe.  When Emacs is
22960         run from the source tree, look for cmdproxy.exe in the same source
22961         tree.  (Bug#21323)
22963 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
22965         Handle comments inside unquoted URIs in css-mode
22966         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
22967         (css-syntax-propertize-function): New defconst.
22968         (css--font-lock-keywords): Handle parens around unquoted URIs.
22969         (css-mode): Set `syntax-propertize-function'.
22971 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
22973         Support invocation of Hunspell with multiple dictionaries
22974         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
22975         Support lists of dictionaries of the form "DICT1,DICT2,...".
22976         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
22978         Minor formatting changes in ispell.el
22979         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
22980         (ispell-print-if-debug, ispell-aspell-find-dictionary)
22981         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
22982         (ispell-hunspell-dictionary-alist)
22983         (ispell-hunspell-fill-dictionary-entry)
22984         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
22985         (ispell-buffer-with-debug, ispell-complete-word)
22986         (ispell-current-dictionary, ispell-current-personal-dictionary)
22987         (ispell-accept-output, ispell-minor-mode)
22988         (ispell-personal-dictionary, ispell-dictionary-alist)
22989         (ispell-really-aspell, ispell-really-hunspell)
22990         (ispell-encoding8-command, ispell-aspell-supports-utf8)
22991         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
22992         Fix whitespace, inconsistent capitalization, and arguments in doc
22993         strings.
22995 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
22997         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
22998         function refused to resize a size-preserved window.
23000 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
23002         * doc/lispref/windows.texi (Selecting Windows): Improve
23003         documentation and indexing of 'window-use-time'.
23005 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
23007         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
23008         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
23009         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
23010         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
23011         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
23012         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
23013         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
23014         Fix up commenting style.
23016 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23018         text-quoting-style in emacs-lisp diagnostics
23019         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
23020         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
23021         (ad-disable-advice, ad-remove-advice, ad-set-argument)
23022         (ad-set-arguments):
23023         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
23024         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
23025         (byte-optimize-while, byte-optimize-apply):
23026         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
23027         (byte-compile-log-file, byte-compile-format-warn)
23028         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
23029         (byte-compile-cl-warn)
23030         (byte-compile-warn-about-unresolved-functions)
23031         (byte-compile-file, byte-compile-fix-header)
23032         (byte-compile--declare-var, byte-compile-file-form-defmumble)
23033         (byte-compile-form, byte-compile-normal-call)
23034         (byte-compile-variable-ref, byte-compile-variable-set)
23035         (byte-compile-subr-wrong-args, byte-compile-setq-default)
23036         (byte-compile-negation-optimizer)
23037         (byte-compile-condition-case--old)
23038         (byte-compile-condition-case--new, byte-compile-save-excursion)
23039         (byte-compile-defvar, byte-compile-autoload)
23040         (byte-compile-lambda-form)
23041         (byte-compile-make-variable-buffer-local, display-call-tree)
23042         (batch-byte-compile):
23043         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
23044         (cconv-analyze-form):
23045         * lisp/emacs-lisp/chart.el (chart-space-usage):
23046         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
23047         (check-declare-warn, check-declare-file)
23048         (check-declare-directory):
23049         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
23050         (checkdoc-message-text-engine):
23051         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
23052         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
23053         (cl-symbol-macrolet):
23054         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
23055         * lisp/emacs-lisp/copyright.el (copyright)
23056         (copyright-update-directory):
23057         * lisp/emacs-lisp/edebug.el (edebug-read-list):
23058         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
23059         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
23060         (eieio-oref, eieio-oset-default):
23061         * lisp/emacs-lisp/eieio-speedbar.el:
23062         (eieio-speedbar-child-make-tag-lines)
23063         (eieio-speedbar-child-description):
23064         * lisp/emacs-lisp/eieio.el (defclass, change-class):
23065         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
23066         (elint-init-form, elint-check-defalias-form)
23067         (elint-check-let-form):
23068         * lisp/emacs-lisp/ert.el (ert-get-test):
23069         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
23070         (find-function-library):
23071         * lisp/emacs-lisp/generator.el (iter-yield):
23072         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
23073         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
23074         * lisp/emacs-lisp/package-x.el (package-upload-file):
23075         * lisp/emacs-lisp/package.el (package-version-join)
23076         (package-disabled-p, package-activate-1, package-activate)
23077         (package--download-one-archive)
23078         (package--download-and-read-archives)
23079         (package-compute-transaction, package-install-from-archive)
23080         (package-install, package-install-selected-packages)
23081         (package-delete, package-autoremove)
23082         (package-install-button-action, package-delete-button-action)
23083         (package-menu-hide-package, package-menu--list-to-prompt)
23084         (package-menu--perform-transaction)
23085         (package-menu--find-and-notify-upgrades):
23086         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
23087         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
23088         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
23089         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
23090         * lisp/emacs-lisp/smie.el (smie-config-save):
23091         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
23092         * lisp/emacs-lisp/testcover.el (testcover-1value):
23093         Use curved quotes in diagnostic format strings.
23095 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
23097         python.el: Ensure remote process-environment on non-interactive processes
23098         * lisp/progmodes/python.el
23099         (python-shell-tramp-refresh-process-environment): New function.
23100         (python-shell-with-environment): Use it.
23101         * test/automated/python-tests.el (python-shell-with-environment-2):
23102         Update.
23104         python.el: Enhancements to process environment setup.
23105         * lisp/progmodes/python.el (python-shell-process-environment)
23106         (python-shell-extra-pythonpaths, python-shell-exec-path)
23107         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
23108         (python-shell-setup-codes): Remove :safe.
23109         (python-shell-remote-exec-path): New defcustom.
23110         (python-shell--add-to-path-with-priority): New macro.
23111         (python-shell-calculate-pythonpath): Give priority to
23112         python-shell-extra-pythonpaths.  Update docstring.
23113         (python-shell-calculate-process-environment): Give priority to
23114         python-shell-process-environment.  Update docstring.
23115         (python-shell-calculate-exec-path): Give priority to
23116         python-shell-exec-path and calculated virtualenv bin directory.
23117         Update docstring.
23118         (python-shell-tramp-refresh-remote-path): New function.
23119         (python-shell-with-environment): Use it when working remotely and
23120         do not modify tramp-remote-path.  Allow nesting.
23121         (python-shell-calculate-command): Remove useless
23122         python-shell-with-environment call.
23123         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
23124         (python-shell-calculate-pythonpath-2)
23125         (python-shell-calculate-process-environment-6)
23126         (python-shell-calculate-process-environment-7)
23127         (python-shell-calculate-process-environment-8)
23128         (python-shell-calculate-exec-path-3)
23129         (python-shell-calculate-exec-path-4)
23130         (python-shell-calculate-exec-path-5)
23131         (python-shell-calculate-exec-path-6)
23132         (python-shell-with-environment-3): New tests.
23133         (python-shell-calculate-process-environment-2)
23134         (python-shell-calculate-process-environment-3)
23135         (python-shell-calculate-process-environment-4)
23136         (python-shell-calculate-process-environment-5)
23137         (python-shell-calculate-exec-path-1)
23138         (python-shell-calculate-exec-path-2)
23139         (python-shell-with-environment-1)
23140         (python-shell-with-environment-2): Update and simplify.
23142 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23144         Avoid hard-coding "M-x command" in docstrings
23145         * lisp/calendar/todo-mode.el (todo-mode):
23146         * lisp/desktop.el (desktop-save-mode):
23147         * lisp/edmacro.el (edit-kbd-macro):
23148         * lisp/emacs-lisp/package.el (package-menu-execute):
23149         * lisp/emulation/viper-cmd.el (viper-ask-level):
23150         * lisp/emulation/viper-init.el (viper-expert-level):
23151         * lisp/filesets.el (filesets-add-buffer):
23152         * lisp/follow.el (follow-mode):
23153         * lisp/gnus/auth-source.el (auth-sources):
23154         * lisp/international/ogonek.el (ogonek-informacja)
23155         (ogonek-information):
23156         * lisp/net/tramp.el (tramp-process-actions):
23157         * lisp/org/org-gnus.el (org-gnus-no-new-news):
23158         * lisp/org/org.el (org-ellipsis):
23159         * lisp/progmodes/python.el (python-shell-get-process-or-error):
23160         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
23161         * lisp/server.el (server-start):
23162         * lisp/type-break.el (type-break-noninteractive-query):
23163         * lisp/userlock.el (ask-user-about-supersession-help):
23164         * lisp/whitespace.el (whitespace-report-region):
23165         Prefer (substitute-command-keys "`\\[foo-command]'")
23166         to "`M-x foo-command'" in docstrings and the like.
23168 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
23170         Use add-function for prettify-symbols-compose-predicate
23171         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
23172         prettify-symbols-compose-predicate in terms of add-function.
23173         * etc/NEWS: Mention prettify-symbols-compose-predicate and
23174         prettify-symbols-mode support in tex-mode.
23176 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
23178         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
23179         (smie-indent-exps, smie-indent-keyword): Use it.
23180         * test/indent/css-mode.css: Test alignment with leading comment.
23182 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23184         Respect text-quoting-style in (*Finder*) menus
23185         * lisp/info.el (info--prettify-description):
23186         Treat description as a docstring, so that it's requoted as
23187         per text-quoting-style.
23189 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
23191         Document `window-use-time' in Elisp manual
23192         * doc/lispref/windows.texi (Selecting Windows): Document
23193         `window-use-time'.
23195 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
23197         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
23198         This is a cleaner fix for Bug#21260 than the previous change.
23200 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23202         Respect text-quoting-style in calc
23203         In calc, tespect text-quoting-style preference in diagnostic
23204         formats and fix a few similar problems in docstrings.
23205         * lisp/calc/calc-aent.el (math-read-factor):
23206         * lisp/calc/calc-embed.el (calc-do-embedded):
23207         * lisp/calc/calc-ext.el (calc-user-function-list)
23208         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
23209         * lisp/calc/calc-help.el (calc-describe-key)
23210         (calc-describe-thing):
23211         * lisp/calc/calc-lang.el (calc-c-language)
23212         (math-parse-fortran-vector-end, math-parse-tex-sum)
23213         (math-parse-eqn-matrix, math-parse-eqn-prime)
23214         (calc-yacas-language, calc-maxima-language, calc-giac-language)
23215         (math-read-big-rec, math-read-big-balance):
23216         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
23217         (calc-auto-recompute):
23218         * lisp/calc/calc-prog.el (calc-user-define-invocation)
23219         (math-do-arg-check):
23220         * lisp/calc/calc-store.el (calc-edit-variable):
23221         * lisp/calc/calc-units.el (math-build-units-table-buffer):
23222         * lisp/calc/calc-vec.el (math-read-brackets):
23223         * lisp/calc/calc-yank.el (calc-edit-mode):
23224         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
23225         Use curved quotes in diagnostic format strings.
23226         * lisp/calc/calc-help.el (calc-describe-thing):
23227         Format docstrings with substitute-command-keys.
23228         * lisp/calc/calc-help.el (calc-j-prefix-help):
23229         * lisp/calc/calc-misc.el (calc-help):
23230         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
23231         Escape a docstring "`".
23233 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
23235         Fix documentation of 'menu-set-font' and 'set-frame-font'
23236         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
23237         * doc/lispref/frames.texi (Frame Font): Document that
23238         set-frame-font with the last argument 't' will also make the font
23239         the default for the future GUI frames.
23241         Document '--create-frame' option to emacsclient
23242         * doc/emacs/misc.texi (emacsclient Options): Document the
23243         '--create-frame' option.  (Bug#21308)
23245 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
23247         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
23249 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
23251         Document 'get-mru-window' in the ELisp manual
23252         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
23253         'get-mru-window'.  (Bug#21306)
23255         Clarify documentation of 'get-buffer-window-list'
23256         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
23257         current window, if relevant, will be the first in the list
23258         returned by 'get-buffer-window-list'.
23259         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
23261 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
23263         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
23264         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
23265         `switch-to-buffer'.
23267 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
23269         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
23270         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
23271         `display-buffer' instead of `switch-to-buffer'.
23273 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
23275         Follow user preference in calendar diagnostics
23276         Respect text-quoting-style preference in diagnostic formats by
23277         using curved quotes (which are translated as per text-quoting-style)
23278         instead of grave accent and apostrophe (which are not).
23279         * lisp/calendar/appt.el (appt-display-message):
23280         * lisp/calendar/diary-lib.el (diary-check-diary-file)
23281         (diary-mail-entries, diary-from-outlook):
23282         * lisp/calendar/icalendar.el (icalendar-export-region)
23283         (icalendar--convert-float-to-ical)
23284         (icalendar--convert-date-to-ical)
23285         (icalendar--convert-ical-to-diary)
23286         (icalendar--convert-recurring-to-diary)
23287         (icalendar--add-diary-entry):
23288         * lisp/calendar/time-date.el (format-seconds):
23289         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
23290         (timeclock-make-hours-explicit):
23291         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
23292         (todo-item-mark, todo-check-format)
23293         (todo-insert-item--next-param, todo-edit-item--next-key)
23294         (todo-mode):
23295         Use curved quotes in diagnostic format strings.
23296         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
23297         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
23298         Just use straight quoting for simple test case.
23300 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
23302         * src/gfilenotify.c (Fgfile_add_watch):
23303         Handle errors from g_file_monitor.
23305 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
23307         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
23308         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
23309         frame" instead of "non-minibuffer frame".
23311         Fix frame geometry related text
23312         * doc/lispref/frames.texi (Frame Layout):
23313         Rename `x-frame-geometry' to `frame-geometry'.
23314         * doc/lispref/frames.texi (Mouse Position):
23315         * doc/lispref/windows.texi (Coordinates and Windows):
23316         Use `set-mouse-absolute-pixel-position' instead of
23317         `x-set-mouse-absolute-pixel-position'.
23319         Sanitize frame geometry related functions
23320         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
23321         (Fx_frame_edges): Rename to Fns_frame_edges.
23322         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
23323         (Fx_frame_edges): Rename to Fw32_frame_edges.
23324         (Fx_mouse_absolute_pixel_position): Rename to
23325         Fw32_mouse_absolute_pixel_position.
23326         (Fx_set_mouse_absolute_pixel_position): Rename to
23327         Fw32_set_mouse_absolute_pixel_position.
23328         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
23329         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
23330         (ns-frame-edges, w32-mouse-absolute-pixel-position)
23331         (x-mouse-absolute-pixel-position)
23332         (w32-set-mouse-absolute-pixel-position)
23333         (x-set-mouse-absolute-pixel-position): Declare.
23334         (frame-geometry, mouse-absolute-pixel-position)
23335         (set-mouse-absolute-pixel-position): New functions.
23336         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
23338 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
23340         Fix MinGW64 build broken by latest w32uniscribe.c changes
23341         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
23342         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
23343         (Bug#21260)
23345 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
23347         Add TeX defaults for prettify-symbol-mode
23348         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
23349         Rename from tex-prettify-symbols-alist.
23350         (tex--prettify-symbols-compose-p): New function.
23351         (tex-common-initialization): Use them as prettify-symbols-alist
23352         and prettify-symbols-compose-predicate.
23354         Generalize prettify-symbols to arbitrary modes
23355         * lisp/progmodes/prog-mode.el
23356         (prettify-symbols-default-compose-p): New function.
23357         (prettify-symbols-compose-predicate): New variable.
23358         (prettify-symbols--compose-symbol): Use it.
23360 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
23362         Don't quote symbols 'like-this' in docstrings etc.
23363         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
23364         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
23365         * lisp/allout.el (allout-add-resumptions, allout-mode):
23366         * lisp/calculator.el (calculator-operators):
23367         * lisp/cedet/data-debug.el (dd-propertize):
23368         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
23369         * lisp/cedet/semantic/analyze/debug.el:
23370         (semantic-analyzer-debug-global-miss-text):
23371         * lisp/cedet/semantic/lex-spp.el:
23372         (semantic-lex-spp-replace-or-symbol-or-keyword):
23373         * lisp/cedet/semantic/symref.el:
23374         (semantic-symref-cleanup-recent-buffers-fcn):
23375         * lisp/cedet/semantic/tag.el (semantic-tag-class):
23376         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
23377         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
23378         * lisp/gnus/pop3.el (pop3-authentication-scheme):
23379         * lisp/help-fns.el (describe-function-orig-buffer):
23380         * lisp/imenu.el (imenu--history-list):
23381         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
23382         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
23383         (feedmail-queue-default-file-slug)
23384         (feedmail-queue-buffer-file-name):
23385         * lisp/net/mairix.el (mairix-searches-mode-map):
23386         * lisp/net/newst-backend.el (newsticker-retrieval-method)
23387         (newsticker-auto-mark-filter-list):
23388         * lisp/obsolete/vi.el (vi-mode):
23389         * lisp/progmodes/cc-engine.el (c-literal-type):
23390         * lisp/progmodes/cpp.el (cpp-face):
23391         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
23392         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
23393         * lisp/progmodes/pascal.el (pascal-auto-lineup):
23394         * lisp/progmodes/prog-mode.el (prog-widen):
23395         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
23396         (verilog-auto-lineup, verilog-auto-reset-widths)
23397         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
23398         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
23399         (flyspell-maybe-correct-doubling):
23400         * lisp/textmodes/table.el (table-justify, table-justify-cell)
23401         (table-justify-row, table-justify-column, table-insert-sequence)
23402         (table--justify-cell-contents):
23403         * lisp/url/url-auth.el (url-get-authentication):
23404         * lisp/window.el (display-buffer-record-window):
23405         * lisp/xml.el (xml-parse-file, xml-parse-region):
23406         * src/gfilenotify.c (Fgfile_add_watch):
23407         Don't quote symbols with apostrophes in doc strings.
23408         Use asymmetric quotes instead.
23409         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
23410         Likewise for symbol in diagnostic.
23411         * lisp/image.el (image-extension-data):
23412         * lisp/register.el (frame-configuration-to-register):
23413         * src/buffer.c (syms_of_buffer):
23414         Remove bogus apostrophes after symbols.
23415         * lisp/thumbs.el (thumbs-conversion-program):
23416         Quote Lisp string values using double-quotes, not apostrophes.
23418 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
23420         Describe frame geometry and related functions in Elisp manual
23421         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
23422         (Showing Images): Update references.
23423         * doc/lispref/elisp.texi (Top): Update node listing.
23424         * doc/lispref/frames.texi (Frame Geometry): New node.
23425         Move `Size and Position' section here.
23426         (Size Parameters): Update references.
23427         (Mouse Position): Update references and nomenclature.
23428         Describe new functions `x-mouse-absolute-pixel-position' and
23429         `x-set-mouse-absolute-pixel-position'.
23430         * doc/lispref/windows.texi (Window Sizes): Update references.
23431         (Resizing Windows): Update references.  Move description of
23432         `fit-frame-to-buffer' here.
23433         (Coordinates and Windows): Update nomenclature and references.
23434         Describe new arguments of `window-edges'.  Comment out
23435         descriptions of `window-left-column', `window-top-line',
23436         `window-pixel-left' and `window-pixel-top'.  Describe
23437         `window-absolute-pixel-position'.
23439 2015-08-20  Alan Mackenzie  <acm@muc.de>
23441         Handling of `c-parse-state'.  Fix low level bug.
23442         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
23443         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
23445 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
23447         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
23448         window instead of deleting it.
23450 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
23452         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
23453         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
23454         determine whether frame has a titlebar.
23455         Suggested by Eli Zaretskii <eliz@gnu.org>
23457 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
23459         Add a prettify-symbols-alist for (La)TeX
23460         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
23461         New variable holding an alist suitable as prettify-symbols-alist in
23462         (La)TeX modes.
23464 2015-08-19  Alan Mackenzie  <acm@muc.de>
23466         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
23467         Fixes debbugs#21275.
23468         In Emacs >= 25, let electric-pair-mode take precedence over
23469         delete-selection-mode.
23470         * lisp/delsel.el (delete-selection-uses-region-p): New function,
23471         previously a lambda expression in a property value for
23472         `self-insert-command'.
23473         (top-level): Set the `delete-selection' property of
23474         `self-insert-command' to `delete-selection-uses-region-p'.
23475         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
23476         property for c-electric-\(brace\|paren\) the value
23477         `delete-selection-uses-region-p' when the latter function exists.
23479 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23481         Fix key binding quoting in tutorial *Help*
23482         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
23483         When generating help for custom key bindings, use the user-preferred
23484         quoting style rather than hardcoding the grave style.
23486 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
23488         Improve and future-proof OTF fonts support in w32uniscribe.c
23489         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
23490         about the expected results and why the new Uniscribe APIs are not
23491         used in this function.
23492         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
23493         (ScriptGetFontFeatureTags_Proc): New function typedefs.
23494         (uniscribe_new_apis): New static variable.
23495         (uniscribe_check_features): New function, implements OTF features
23496         verification while correctly accounting for features in the list
23497         after the nil member, if any.
23498         (uniscribe_check_otf_1): New function, retrieves the features
23499         supported by the font for the requested script and language using
23500         the Uniscribe APIs available from Windows Vista onwards.
23501         (uniscribe_check_otf): If the new Uniscribe APIs are available,
23502         use them in preference to reading the font data directly.  Call
23503         uniscribe_check_features to verify that the requested features are
23504         supported, replacing the original incomplete code.
23505         (syms_of_w32uniscribe): Initialize function pointers for the new
23506         Uniscribe APIs.  (Bug#21260)
23507         (otf_features): Scan the script, langsys, and feature arrays back
23508         to front, so that the result we return has them in alphabetical
23509         order, like ftfont.c does.
23510         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
23511         New variable for debugging w32uniscribe.c code.
23513 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
23515         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
23516         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
23517         clause of `isearch-search-fun-default'.  That lax variable does not
23518         refer to lax-whitespacing.  Related to (bug#21777).
23519         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
23520         * lisp/character-fold.el (character-fold-search): Set to nil.
23521         Default to nil for now, until someone implements proper
23522         lax-whitespacing with char-fold searching.
23524 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
23526         Fix doc-string of `help-mode-finish'.
23527         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
23529         In nsimage.m include coding.h (Bug#21292)
23530         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
23532         Move window edge functions to Elisp.
23533         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
23534         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
23535         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
23536         Move to window.el.
23537         (calc_absolute_offset): Remove.
23538         * lisp/frame.el (frame-edges): New function.
23539         * lisp/window.el (window-edges, window-pixel-edges)
23540         (window-absolute-pixel-edges): Move here from window.c.
23541         (window-body-edges, window-body-pixel-edges)
23542         (window-absolute-body-pixel-edges): Move here from window.c and
23543         rename "inside" to "body".  Keep old names as aliases.
23544         (window-absolute-pixel-position): New function.
23546 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
23548         [Gnus]: Use overlay functions directly
23549         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
23550         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
23551         (gnus-article-highlight-signature, gnus-article-extend-url-button)
23552         (gnus-article-add-button, gnus-insert-prev-page-button)
23553         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
23554         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
23555         (gnus-cite-add-face):
23556         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
23557         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
23558         (gnus-tree-recenter, gnus-highlight-selected-tree):
23559         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
23560         (gnus-summary-show-thread, gnus-summary-hide-thread)
23561         (gnus-highlight-selected-summary):
23562         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
23563         * lisp/gnus/message.el (message-fix-before-sending)
23564         (message-toggle-image-thumbnails):
23565         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
23566         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
23567         Use overlay functions directly instead of using gnus-overlay-*,
23568         message-overlay-*, and sieve-overlay-*.
23569         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
23570         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
23571         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
23572         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
23573         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
23574         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
23575         (message-overlay-get, message-overlay-put, message-overlays-in):
23576         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
23577         (sieve-overlays-at): Remove.
23579 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
23581         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
23582         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
23583         builds can use the declaration from the system headers.
23584         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
23585         definition of TITLEBAR_INFO.
23586         Suggested by Eli Zaretskii  <eliz@gnu.org>
23588 2015-08-19  Glenn Morris  <rgm@gnu.org>
23590         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
23592 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23594         Use new q ‘format’ flag when fixing quotes in C
23595         * src/image.c (image_size_error): New function.  All uses of
23596         image_error with "Invalid image size ..."  changed to use it.
23597         * src/image.c (image_size_error, xbm_load_image, xbm_load)
23598         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
23599         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
23600         (imagemagick_load, svg_load, svg_load_image, gs_load)
23601         (x_kill_gs_process):
23602         * src/lread.c (load_warn_old_style_backquotes):
23603         * src/xfaces.c (load_pixmap):
23604         * src/xselect.c (x_clipboard_manager_error_1):
23605         Use %qs, not uLSQM and uRSQM.
23606         * src/syntax.c (Finternal_describe_syntax_value):
23607         Prefer Fsubstitute_command_keys to Fformat, as this lets
23608         us use AUTO_STRING.
23609         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
23610         as it's now guaranteed to be ASCII.
23611         * src/xselect.c (x_clipboard_manager_error_2):
23612         Avoid grave accent in low-level stderr diagnostic.
23614 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
23616         New q flag for ‘format’
23617         * doc/lispref/processes.texi (Sentinels):
23618         Don't hardwire grave quoting style in example.
23619         * doc/lispref/strings.texi (Formatting Strings):
23620         * etc/NEWS:
23621         Document new q flag.
23622         * src/editfns.c (Fformat): Implement it.
23624 2015-08-18  Daiki Ueno  <ueno@gnu.org>
23626         pinentry.el: Add debugging support
23627         * lisp/net/pinentry.el (pinentry-debug): New variable.
23628         (pinentry-debug-buffer): New variable.
23629         (pinentry--process-filter): Send input to the debug buffer, if
23630         `pinentry-debug' is set.
23632         pinentry.el: Improve multiline prompt
23633         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
23634         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
23635         command.
23637 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
23639         Fix multibyte confusion in diagnostics
23640         * src/print.c (print_error_message):
23641         Don't assume that the caller's name is unibyte.
23642         * src/xdisp.c (vadd_to_log):
23643         Don't assume that the formatted diagnostic is unibyte.
23645         Fix file name encodings in diagnostics
23646         Also, close some minor races when opening image files, by opening
23647         them once instead of multiple times.
23648         * src/gtkutil.c (xg_get_image_for_pixmap):
23649         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
23650         (svg_load):
23651         * src/nsimage.m (allocInitFromFile:):
23652         * src/xfns.c (xg_set_icon):
23653         Encode file name, since x_find_image_file no longer does that.
23654         * src/image.c (x_find_image_fd): New function.
23655         (x_find_image_file): Use it.  Do not encode resulting file name,
23656         since callers sometimes need it decoded.
23657         (slurp_file): File arg is now a fd, not a file name.
23658         All callers changed.  This saves us having to open the file twice.
23659         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
23660         (svg_load):
23661         Use x_find_image_fd and fdopen to save a file-open.
23662         Report file name that failed.
23663         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
23665 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
23667         Allow blink-matching-paren to jump off screen
23668         * doc/emacs/programs.texi (Matching): Mention the
23669         `blink-matching-paren' value `jump-offscreen'.
23670         * lisp/simple.el (blink-matching-paren): New possible value.
23671         (blink-matching-paren-on-screen): Clarify the docstring.
23672         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
23674         Refine the previous change
23675         * lisp/simple.el (blink-matching-open): Use minibuffer-message
23676         outside of save-excursion (bug#21286).
23678 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
23680         Rewrite and add frame geometry related functions.
23681         * src/frame.c (Fframe_position): New function.
23682         (Fset_frame_position): Rename parameters and rewrite doc-string.
23683         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
23684         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
23685         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
23686         Qtitle_bar_size.
23687         * src/nsfns.m (frame_geometry): New function.
23688         (Fx_frame_geometry): Call frame_geometry.
23689         (Fx_frame_edges): New function.
23690         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
23691         (GetTitleBarInfo_Proc): Define these so we can use the
23692         GetTitleBarInfo API.
23693         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
23694         (Fx_frame_geometry): Rewrite.
23695         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
23696         (Fx_set_mouse_absolute_pixel_position): New functions.
23697         * src/xfns.c (frame_geometry): New function.
23698         (Fx_frame_geometry): Call frame_geometry.
23699         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
23700         (Fx_set_mouse_absolute_pixel_position): New functions.
23702 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
23704         Improve Tramp's compatibility
23705         * lisp/net/tramp.el (tramp-get-method-parameter):
23706         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
23707         (tramp-adb-get-device):
23708         * lisp/net/trampver.el (tramp-repository-get-version):
23709         Use `tramp-compat-replace-regexp-in-string'.
23711 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
23713         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
23714         Encode/decode string.
23716 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
23718         Clarify what happens to match data on failure
23719         Problem reported by Ernesto Alfonso (Bug#21279).
23720         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
23721         Document more carefully what happens to match data after a failed
23722         search.
23723         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
23724         the return value is undefined if the last search failed.
23725         (Fmatch_data): Simplify doc string line 1.
23727 2015-08-18  Daiki Ueno  <ueno@gnu.org>
23729         Revert "pinentry.el: Support external passphrase cache"
23730         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
23731         pinentry.el shouldn't directly interact with the secrets service,
23732         but ask the caller to cache the passphrase.
23734 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
23736         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
23737         Message mode hooks.
23739 2015-08-17  Daiki Ueno  <ueno@gnu.org>
23741         epg.el: Make gpgconf output parsing future proof
23742         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
23743         --list-options" output.
23745         pinentry.el: Support external passphrase cache
23746         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
23747         (pinentry--allow-external-password-cache): New local variable.
23748         (pinentry--key-info): New local variable.
23749         (secrets-enabled, secrets-search-items, secrets-get-secret):
23750         Declare.
23751         (pinentry--send-passphrase): New function, split from
23752         `pinentry--process-filter'.
23753         (pinentry--process-filter): Use secrets.el to retrieve passphrase
23754         from login keyring.
23756         pinentry.el: Popup window for multiline prompt
23757         * lisp/net/pinentry.el (pinentry): New custom group.
23758         (pinentry-popup-prompt-window): New user option.
23759         (pinentry-prompt-window-height): New user option.
23760         (pinentry--prompt-buffer): New variable.
23761         (pinentry-prompt-mode-map): New variable.
23762         (pinentry-prompt-mode): New function.
23763         (pinentry--prompt): New function.
23764         (pinentry--process-filter): Use `pinentry--prompt' instead of
23765         `read-passwd' and `y-or-n-p'.
23767 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
23769         message.el: Silent the byte compiler
23770         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
23771         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
23772         (message-delete-overlay, message-window-inside-pixel-edges):
23773         Declare before using.
23775         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
23776         (message-window-inside-pixel-edges): XEmacs compatible functions.
23778 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
23780         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
23782 2015-08-17  Noah Friedman  <friedman@splode.com>
23784         * lisp/simple.el (blink-matching-open): Restore point before
23785         calling minibuffer-message.
23787 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
23789         * lisp/play/dunnet.el: Update version number in header (now
23790         matches help).
23792 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
23794         Curved quotes in --batch diagnostics in non-UTF-8
23795         When run with --batch, check that curved quotes are compatible with
23796         the system locale before outputting them in diagnostics.
23797         Problem reported by Eli Zaretskii in:
23798         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
23799         * lisp/startup.el (command-line): Set internal--text-quoting-flag
23800         after the standard display table is initialized.
23801         * src/doc.c (default_to_grave_quoting_style): New function.
23802         (text_quoting_style): Use it.
23803         (text_quoting_flag): New static var, visible to Lisp as
23804         internal--text-quoting-flag.
23805         * src/emacs.c: Include <wchar.h> if available.
23806         (using_utf8): New function.
23807         (main): Use it to initialize text_quoting_flag.
23808         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
23809         Don't define, as it's not needed and it clashes with wchar.h.
23811 2015-08-17  Glenn Morris  <rgm@gnu.org>
23813         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
23814         from makeinfo about spurious "Note:" cross-reference, and for grammar.
23816 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
23818         Minor change in variable initialization on MS-Windows
23819         * src/w32fns.c <after_dead_key>: Initialize to -1.
23820         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
23821         non-zero.
23823         Fix a bug with LWindow key remapping on MS-Windows
23824         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
23826 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
23828         Improve fontset support for latest OTF script tags
23829         * lisp/international/fontset.el (otf-script-alist): Add some
23830         missing script tags.
23831         (setup-default-fontset): Include settings for v2 versions of the
23832         script tags used by some modern OTF/TTF fonts.
23834 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
23836         Spelling fixes
23838 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
23840         Use curved quotes in core elisp diagnostics
23841         In the core elisp files, use curved quotes in diagnostic formats,
23842         so that they follow user preference as per ‘text-quoting-style’
23843         rather than being hard-coded to quote `like this'.
23844         * lisp/abbrev.el (expand-region-abbrevs):
23845         * lisp/button.el (button-category-symbol, button-put)
23846         (make-text-button):
23847         * lisp/cus-start.el:
23848         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
23849         (custom--sort-vars-1, load-theme):
23850         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
23851         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
23852         (cl-generic-generalizers):
23853         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
23854         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
23855         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
23856         (advice--make, define-advice):
23857         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
23858         * lisp/emacs-lisp/timer.el (timer-event-handler):
23859         * lisp/env.el (setenv):
23860         * lisp/facemenu.el (facemenu-add-new-face)
23861         (facemenu-add-new-color):
23862         * lisp/faces.el (face-documentation, read-face-name)
23863         (face-read-string, read-face-font, face-spec-set-match-display)
23864         (read-color, x-resolve-font-name):
23865         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
23866         (set-auto-mode, hack-local-variables)
23867         (hack-one-local-variable--obsolete)
23868         (dir-locals-set-directory-class, write-file)
23869         (basic-save-buffer, delete-directory, copy-directory)
23870         (recover-session, recover-session-finish, insert-directory)
23871         (file-modes-char-to-who, file-modes-symbolic-to-number)
23872         (move-file-to-trash):
23873         * lisp/font-lock.el (font-lock-fontify-buffer):
23874         * lisp/format.el (format-write-file, format-find-file)
23875         (format-insert-file):
23876         * lisp/frame.el (get-device-terminal, select-frame-by-name):
23877         * lisp/fringe.el (fringe--check-style):
23878         * lisp/help.el (describe-minor-mode-from-indicator):
23879         * lisp/image.el (image-type):
23880         * lisp/international/fontset.el (x-must-resolve-font-name):
23881         * lisp/international/mule-cmds.el (prefer-coding-system)
23882         (select-safe-coding-system-interactively)
23883         (select-safe-coding-system, activate-input-method)
23884         (toggle-input-method, describe-current-input-method):
23885         * lisp/international/mule-conf.el (code-offset):
23886         * lisp/mouse.el (minor-mode-menu-from-indicator):
23887         * lisp/replace.el (query-replace-read-from)
23888         (occur-after-change-function, occur-1):
23889         * lisp/scroll-bar.el (scroll-bar-columns):
23890         * lisp/simple.el (execute-extended-command)
23891         (undo-outer-limit-truncate, compose-mail, set-variable)
23892         (choose-completion-string, define-alternatives):
23893         * lisp/startup.el (site-run-file, tty-handle-args)
23894         (command-line, command-line-1):
23895         * lisp/subr.el (noreturn, define-error, add-to-list)
23896         (read-char-choice):
23897         * lisp/term/common-win.el (x-handle-xrm-switch)
23898         (x-handle-name-switch, x-handle-args):
23899         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
23900         Use curved quotes in diagnostics.
23901         * lisp/international/mule.el (find-auto-coding):
23902         Use " to quote in a diagnostic, to be consistent with the rest of
23903         this file.
23905         Convert lisp/term/x-win.el to UTF-8
23906         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
23907         runtime behavior, and the file is multilingual so compile-time
23908         appearance shouldn't be an issue.
23909         * admin/notes/unicode: Document this.
23911 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
23913         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
23914         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
23915         issues and comments, bug#943.
23916         (verilog-type-font-keywords): Cycle delay operators like ##1 and
23917         ##[0:$] are now highlighted in their entirety similarly to the #
23918         delay-control operator.  Likewise, the followed-by operators #-#
23919         and #=# are no longer partially highlighed.
23920         (verilog-backward-syntactic-ws-quick)
23921         (verilog-skip-backward-comments): Minor performance improvements
23922         to buffer traversal functions for reduced latency.
23923         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
23924         keyword 'final' follows 'assert/assume/cover', then it is part of
23925         a deferred immediate assertion item and should not be treated as a
23926         final construct for indentation.  Reported by Yuri Sugihara.
23927         (verilog-do-indent): Virtual task/function/class definition lines
23928         should not be considered as declarations.  Reported by Enzo Chi.
23929         (verilog-do-indent): Do not falsely indent to '=' of
23930         property/sequence operators on subsequent lines of a multi-line
23931         statement.
23932         (verilog-assignment-operator-re): Fix '!==' operator and add
23933         support for '<->', ':/', '#-#', and '#=#' operators.
23934         (verilog-calculate-indent, verilog-label-be): Enable
23935         case-sensitive regular expression parsing when looking for
23936         keywords.
23937         (verilog-calc-1): Detect 'pure virtual method' declarations which
23938         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
23939         (verilog-backward-ws&directives): When moving back to the start of
23940         a line and the preceeding line ended with an escaped-newline, then
23941         jump up one line.  This properly consumes a multi-line
23942         pre-processor directive.  Reported by Kaushal Modi.
23943         (verilog-dpi-import-export-re, verilog-extended-complete-re)
23944         (verilog-calc-1): Teach verilog-mode to properly indent after a
23945         DPI import/export statement that resides outside of a module.
23946         Reported by Kaushal Modi.
23947         (verilog-extended-complete-re): Update regexp to match both
23948         "DPI-C" and "DPI".  Reported by Kaushal Modi.
23950 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23952         substitute-command-keys a few more doc strings
23953         * lisp/allout.el (outlineify-sticky):
23954         * lisp/files.el (hack-one-local-variable--obsolete):
23955         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
23956         Use substitute-command-keys on some doc strings so that
23957         they don't use hard-coded key bindings or quoting styles.
23959         Fix quoting in Fformat calls
23960         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
23961         (xpm_load, xpm_load_image, pbm_load, png_load_body)
23962         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
23963         (imagemagick_load, svg_load, svg_load_image, gs_load)
23964         (x_kill_gs_process):
23965         * src/lread.c (load_warn_old_style_backquotes):
23966         * src/xfaces.c (load_pixmap):
23967         * src/xselect.c (x_clipboard_manager_error_1):
23968         Quote diagnostics according to user preference when calling
23969         Fformat or its derivatives.
23971 2015-08-15  Glenn Morris  <rgm@gnu.org>
23973         * admin/admin.el (set-version, set-copyright): Remove deleted files.
23975 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
23977         Allow describe-function helpers to access buffer-local values
23978         This will be used by cedet/mode-local.el `describe-mode-local-override'
23979         on `help-fns-describe-function-functions' in upstream CEDET.
23980         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
23981         `describe-function'.
23982         (describe-function): Bind it, save it on the help xref stack.
23984         Handle pulse-background being nil
23985         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
23986         pulse-background, handle it being nil.
23988 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23990         Fix "\`" confusion in Lisp strings
23991         * admin/authors.el (authors-canonical-author-name):
23992         Fix typo by using "\\`" not "\`" in string RE.
23993         * lisp/obsolete/complete.el (PC-complete-as-file-name):
23994         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
23995         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
23996         Use plain "`", not the equivalent-but-confusing "\`", in strings.
23997         * lisp/textmodes/texinfmt.el: Fix comment likewise.
23999 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
24001         * nt/zipdist.bat: Remove -- no longer used.
24003 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
24005         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
24006         rather than "getenforce".
24007         (tramp-sh-handle-set-file-selinux-context): Do not
24008         cache SELinux context if not all context components are given.
24010 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
24012         Add doc strings to 2 help-mode.el functions
24013         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
24014         strings.  (Bug#21263)
24016         Remove files used by the old MS-Windows specific build procedure
24017         * admin/unidata/makefile.w32-in:
24018         * doc/emacs/makefile.w32-in:
24019         * doc/lispintro/makefile.w32-in:
24020         * doc/lispref/makefile.w32-in:
24021         * doc/misc/makefile.w32-in:
24022         * leim/makefile.w32-in:
24023         * lib-src/makefile.w32-in:
24024         * lib/makefile.w32-in:
24025         * lisp/makefile.w32-in:
24026         * nt/INSTALL.OLD:
24027         * nt/config.nt:
24028         * nt/emacs-src.tags:
24029         * nt/envadd.bat:
24030         * nt/gmake.defs:
24031         * nt/makefile.w32-in:
24032         * nt/multi-install-info.bat:
24033         * nt/nmake.defs:
24034         * nt/paths.h:
24035         * src/makefile.w32-in: Files deleted.
24036         * nt/configure.bat: Remove everything except the blurb about the
24037         new build procedure.
24038         * make-dist: Remove references to makefile.w32-in in various
24039         directories, and to files in nt/ that were deleted.
24040         * etc/NEWS: Mention the fact that the files were dropped.
24042 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
24044         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
24045         (Bug#21248)
24047 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
24049         Default to inotify instead of gfile
24050         * configure.ac (with_file_notification): Fix typo that
24051         prevented suppression of file notification if HAVE_NS.
24052         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
24053         with_file_notification is 'yes' (Bug#21241).
24054         * etc/NEWS: Mention this.
24056         Fix broken URLs for ISO-IR
24057         * doc/emacs/mule.texi (Charsets):
24058         * lisp/international/mule-conf.el:
24059         Fix broken URL (Bug#21248).
24061         Low-level diagnostics now use ‘text-quoting-style’
24062         * src/doprnt.c (doprnt):
24063         Format ` and ' as per ‘text-quoting-style’.
24064         * src/xdisp.c (vmessage, message): Mention that the format should
24065         not contain ` or '.
24067         Prefer ‘format’ to ‘substitute-command-keys’
24068         * src/character.h (uLSQM, uRSQM): Move here ...
24069         * src/doc.c (uLSQM, uRSQM): ... from here.
24070         * src/doc.c (Fsubstitute_command_keys):
24071         * src/syntax.c (Finternal_describe_syntax_value):
24072         * lisp/cedet/mode-local.el (mode-local-print-binding)
24073         (mode-local-describe-bindings-2):
24074         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
24075         * lisp/cus-theme.el (describe-theme-1):
24076         * lisp/descr-text.el (describe-text-properties-1, describe-char):
24077         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
24078         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
24079         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
24080         * lisp/emacs-lisp/package.el (describe-package-1):
24081         * lisp/faces.el (describe-face):
24082         * lisp/help-fns.el (help-fns--key-bindings)
24083         (help-fns--compiler-macro, help-fns--parent-mode)
24084         (help-fns--obsolete, help-fns--interactive-only)
24085         (describe-function-1, describe-variable):
24086         * lisp/help.el (describe-mode):
24087         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
24088         to implement quoting style.  This generally makes the code simpler.
24090         Extend ‘format’ to translate curved quotes
24091         This is a followup to the recent doc string change, and deals with
24092         diagnostics and the like.  This patch is more conservative than
24093         the doc string change, in that the behavior of ‘format’ changes
24094         only if its first arg contains curved quotes and the user prefers
24095         straight or grave quotes.  (Come to think of it, perhaps we should
24096         be similarly conservative with doc strings too, but that can wait.)
24097         The upside of this conservatism is that existing usage is almost
24098         surely unaffected.  The downside is that we'll eventually have to
24099         change Emacs's format strings to use curved quotes in places where
24100         the user might want curved quotes, but that's a simple and
24101         mechanical translation that I'm willing to do later.  (Bug#21222)
24102         * doc/lispref/help.texi (Keys in Documentation):
24103         Move description of text-quoting-style from here ...
24104         * doc/lispref/strings.texi (Formatting Strings):
24105         ... to here, and describe new behavior of ‘format’.
24106         * etc/NEWS: Describe new behavior.
24107         * lisp/calc/calc-help.el (calc-describe-thing):
24108         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
24109         * lisp/info.el (Info-find-index-name):
24110         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
24111         of recently-added curved quotes.
24112         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
24113         Move from here ...
24114         * src/lisp.h: ... to here.
24115         * src/doc.c (text_quoting_style): New function.
24116         (Fsubstitute_command_keys): Use it.
24117         * src/editfns.c (Fformat): Implement new behavior.
24118         * src/lisp.h (enum text_quoting_style): New enum.
24120 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
24122         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
24123         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
24125 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
24127         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
24128         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
24130 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
24132         Flush file properties in Tramp
24133         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
24134         (tramp-sh-handle-set-file-times):
24135         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
24136         (tramp-adb-handle-set-file-times): Flush the file properties of
24137         the directory.
24139 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
24141         * doc/emacs/misc.texi (Amusements): Fixed typo.
24143 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
24145         Don't miss warnings about removing string text properties while dumping
24146         * src/alloc.c (purecopy): Warn about removing a string's text
24147         properties even when the same string was already pure-copied
24148         earlier.
24149         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
24150         (elisp--xref-format-extra): Fix the commentary.
24152 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
24154         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
24156 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
24158         * lisp/progmodes/compile.el: Use lexical-binding.
24159         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
24161 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
24163         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
24164         * lisp/uniquify.el: Remove redundant `:group's.
24166 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
24168         * lisp/net/tramp-adb.el
24169         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
24170         result to prevent modification of the tramp-cache by side effects.
24171         Use the correct cache key.
24173 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
24175         Make add_to_log varargs
24176         * src/alloc.c (run_finalizer_handler):
24177         * src/charset.c (load_charset_map_from_vector):
24178         * src/nsimage.m (ns_load_image):
24179         * src/xfaces.c (load_pixmap, load_color2):
24180         Simplify, now that add_to_log has a variable number of args.
24181         * src/image.c (image_error): Take a variable number of args.
24182         Callers simplified.
24183         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
24184         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
24185         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
24186         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
24188         Optional args for holiday-greek-orthodox-easter
24189         * etc/NEWS: Document this.
24190         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
24191         Add optional args N and STRING, mimicking the API and code of
24192         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
24194 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
24196         xref-find-definitions: Exclude more generic function items.
24197         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
24198         Add doc string.
24199         (cl--generic-find-defgeneric-regexp): New.
24200         (find-function-regexp-alist): Add it.
24201         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
24202         elisp-mode.el, change to search for ";;; Code:"
24203         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
24204         (find-function-regexp-alist): Add them.
24205         * lisp/progmodes/elisp-mode.el:
24206         (elisp--xref-format, elisp--xref-format-extra): Change back to
24207         defvar due to bug#21237.
24208         (elisp--xref-find-definitions): Exclude co-located default methods for
24209         generic functions.  Also exclude implicitly declared defgeneric.
24210         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
24211         mode variables defined by 'define-minor-mode'.
24212         * test/automated/elisp-mode-tests.el: Declare generic functions, add
24213         tests for them.
24214         (xref-elisp-test-run): Fix bug.
24215         (emacs-test-dir): Improve initial value.
24216         (find-defs-defun-defvar-el): Don't expect defvar.
24217         (find-defs-feature-el): Match change to find-feature-regexp.
24219 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
24221         Improve warning about purecopy of strings with properties
24222         * src/alloc.c (purecopy): Show the offending string with the
24223         warning about removing its text properties.
24225 2015-08-12  Alan Mackenzie  <acm@muc.de>
24227         Introduce new macros to cover Emacs's new names in cl-lib.el
24228         This also eliminates `mapcan' warnings in XEmacs.
24229         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
24230         characterise [X]Emacs versions.
24231         (top-level): Require either 'cl or 'cl-lib, depending on
24232         c--mapcan-status.
24233         Change this back to cc-external-require from an eval-when-compile
24234         require.
24235         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
24236         (c--delete-duplicates): New macros which expand into either old or new
24237         names.
24238         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
24239         rather than the old names.
24240         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
24241         rather than mapcan.
24242         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
24243         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
24244         depending on c--mapcan-status.
24245         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
24246         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
24247         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
24248         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
24249         (c-decl-block-key, c-keywords, c-keywords-obarray)
24250         (c-regular-keywords-regexp, c-primary-expr-regexp)
24251         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
24252         (c-known-type-key, c-nonlabel-token-key)
24253         (c-make-init-lang-vars-fun): Use the new macros rather than the old
24254         names.
24256 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
24258         loadhist.el (read-feature): Conform to completing-read
24259         * lisp/loadhist.el (read-feature): According to `completing-read'
24260         documentation, if collection is a list, then it must be a list of
24261         strings, not a list of symbols like before.
24263 2015-08-12  David Kastrup  <dak@gnu.org>
24265         Deal gracefully with up-events (Bug#19746)
24266         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
24267         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
24268         those may easily be injected by user-level Lisp code.
24269         (read_key_sequence): Discard unbound up-events like unbound
24270         down-events: they are even more likely only relevant for special
24271         purposes.
24272         While Emacs will not produce up-events on its own currently (those are
24273         converted to drag or click events before being converted to
24274         Lisp-readable structures), the input queue can be made to contain them
24275         by synthesizing events to `unread-command-events'.  Emacs should deal
24276         consistently with such events.
24278 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
24280         Fix display of thin lines whose newline has line-height property of t
24281         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
24282         and descent values of non-empty glyph rows, since they could have
24283         forced low values deliberately.  (Bug#21243)
24285 2015-08-12  Richard Stallman  <rms@gnu.org>
24287         Offer to combine multiple To or CC fields.
24288         * lisp/mail/sendmail.el (mail-combine-fields): New function.
24289         (mail-send): Call 'mail-combine-fields'.
24291         Don't decrypt encrypted files.
24292         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
24294         Handle encrypted mbox files.
24295         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
24296         the mbox file if necessary.
24298         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
24299         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
24300         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
24301         In a mime message, reenable Mime and show the parts that
24302         were shown before.
24303         Add keyword "decrypt" if anything decrypted.
24305         epa-inhibit inhibits auto-recognition of .gpg files
24306         * lisp/epa-file.el (epa-inhibit): New variable.
24307         (epa-file-handler): Check epa-inhibit.
24309 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
24311         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
24313 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
24315         Respect python.el imenu when semantic-mode is off
24316         Fixes bug#21220
24317         * lisp/cedet/semantic/wisent/python.el: Do not force
24318         wisent-python-default-setup on python-mode-hook.
24320 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
24322         Give names to Unicode code points in C code
24323         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
24324         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
24325         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
24326         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
24327         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
24328         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
24329         (OBJECT_REPLACEMENT_CHARACTER):
24330         New named constants for Unicode code points.
24331         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
24332         * src/composite.c (char_composable_p):
24333         * src/lread.c (readevalloop, read1):
24334         * src/xdisp.c (get_next_display_element):
24335         Use them.
24336         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
24337         Remove; now in character.h.
24339 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
24341         elisp--xref-find-definitions handle cl-defstuct default constructor
24342         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
24343         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
24344         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
24345         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
24346         from xref-elisp-test for ease of debugging.
24347         (xref-elisp-deftest): Rename from xref-elisp-test.
24348         (find-defs-constructor): New test.
24349         (find-defs-defgeneric-el): Match batch test config.
24350         (compile): Required for find-defs compilation-minor-mode test.
24351         (find-defs-defvar-el): Match code change.
24352         (find-defs-face-el): Match code change.
24353         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
24354         Improve doc string.
24356 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
24358         * lisp/replace.el (perform-replace): Document `replacements'.
24359         (perform-replace): Move the description of the format of `replacements'
24360         from the body's comment to the doc string.
24362 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
24364         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
24365         sequence.  Recent adb version send initial escape sequences, even
24366         when terminal type is set to TERM=dumb.
24368 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
24370         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
24371         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
24372         Function deleted.
24373         (elisp--xref-format-cl-defmethod): New defconst.
24374         (find-feature-regexp, find-alias-regexp): New defcustoms.
24375         (elisp--xref-make-xref): New function.
24376         (elisp--xref-find-definitions): Rewrite using the above, handle many
24377         more cases.  Always output all available definitions.
24378         (xref-location-marker): No need for special cases.
24379         * test/automated/elisp-mode-tests.el: Add more tests of
24380         elisp--xref-find-definitions, improve current tests.
24382 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
24384         Fix recording of events pushed onto unread-command-events
24385         * src/keyboard.c (read_char): Make sure events read from
24386         unread-command-events and unread-post-input-method-events are
24387         always recorded by record_char.  Reported by David Kastrup
24388         <dak@gnu.org>, see
24389         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
24391 2015-08-10  Samer Masterson  <samer@samertm.com>
24393         Set file buffer as current for "--file"
24394         * lisp/startup.el (command-line-1): Set file buffer as current before
24395         it is displayed so it can be used with options like "--eval".
24396         (Bug#21095)
24398 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
24400         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
24401         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
24402         after setting LC_ALL to the desired locale, to avoid affecting how
24403         numbers are read and printed.  (Bug#21223)
24405 2015-08-10  Alan Mackenzie  <acm@muc.de>
24407         Fix "Invalid search bound (wrong side of point)" in fontification
24408         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
24409         an initialization expression, check point is not beyond the
24410         fontification limit.
24412 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24414         Fix DPI calculation when Xft/DPI is default
24415         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
24416         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
24417         Remove unnecessary cast while we're in the neighborhood.
24419 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
24421         Add project-vc-search-path and project-vc-ignores
24422         * lisp/progmodes/project.el (project-vc): New group.
24423         (project-vc-search-path, project-vc-ignores): New variables.
24424         (project--value-in-dir): Utility function.
24425         (project-search-path, project-ignores): Use them.
24426         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
24427         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
24429 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24431         Fix some minor quoting issues with grave accent
24432         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
24433         Remove redundant quotes.
24434         * src/doc.c (uLSQM, uRSQM): New macros.
24435         * src/doc.c (Fsubstitute_command_keys):
24436         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
24437         preference for quotes rather than hardcoding the ‘grave’ style.
24438         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
24439         (re_match_2_internal) [DEBUG]: In debugging output, quote C
24440         strings with "...", not `...'.
24442         ChangeLog.2 ignores remote-tracking merges
24443         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
24444         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
24445         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
24447 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
24449         Use kpsewhich in ffap-latex-mode, if available
24450         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
24451         (ffap-latex-mode): Use kpsewhich if available.
24453         ffap: disallow braces in filenames for tex modes
24454         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
24455         braces in tex-related modes.
24457         Remove useless backslashes from ffap-string-at-point-mode-alist
24458         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
24459         misleading backslashes from default value.
24461         Augment docstring of ffap-string-at-point-mode-alist
24462         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
24463         and END are handled.
24465 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24467         * lisp/org/org-src.el (org-edit-src-code)
24468         (org-edit-fixed-width-region):
24469         * lisp/simple.el (completion-setup-function):
24470         Remove calls to substitute-command-keys that always just return
24471         their argument.
24473 2015-08-09  Daiki Ueno  <ueno@gnu.org>
24475         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
24476         (Bug#21210)
24478 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
24480         Fix link to source code in help window
24481         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
24482         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
24483         'No longer include timestamp in header of .elc files'.  Add code
24484         that will return .el source file in load-path.
24486 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
24488         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
24489         Respect `isearch-lax-whitespace' when searching through
24490         `isearch-word'.
24492 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
24494         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
24496         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
24497         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
24498         (org-set-regexps-and-options, org-assign-fast-keys)
24499         (org-contextualize-keys, org-contextualize-validate-key)
24500         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
24501         (org-find-olp, org-find-exact-heading-in-directory)
24502         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
24503         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
24504         (org-replace-escapes): Use dolist.
24505         (org-mode): Optimize away XEmacs-only code.
24506         (org-refile-get-targets): Remove unused var `f'.
24507         (org-fast-todo-selection): Remove unused var `e'.
24508         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
24509         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
24510         (org-format-latex): Use dolist.  Remove unused var `e'.
24511         (org-toggle-heading): Access vars lexically rather than dynamically.
24512         (org-backward-sentence, org-forward-sentence, org-meta-return)
24513         (org-kill-line): Mark arg as unused.
24514         (org-submit-bug-report): Silence compiler warning.
24515         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
24516         (org-get-cursor-date): Remove unused var `tm'.
24517         (org-comment-or-uncomment-region): Use standard name `_'.
24518         (reftex-docstruct-symbol, reftex-cite-format): Declare to
24519         silence byte-compiler.
24520         (org-reftex-citation): Add `org--' prefix to dynamically scoped
24521         `rds' var.
24523 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
24525         Electric quote if coding is undecided or no conv
24526         * lisp/electric.el (electric--insertable-p): Also say that a
24527         string is insertable if the buffer file coding system is undecided
24528         or uses no conversion, as curved quotes will work in either case.
24530         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
24532 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
24534         Fix overlay string display regressions introduced in Emacs 24.5
24535         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
24536         buffer position, if we move the iterator to a new position as
24537         result of jumping over text covered by a "replacing" display
24538         property.
24539         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
24541         Support recovery from C stack overflow on MS-Windows
24542         * src/w32fns.c (w32_reset_stack_overflow_guard)
24543         (stack_overflow_handler): New functions for handling C stack
24544         overflow exceptions.
24545         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
24546         specially, and zero out except_addr if we do.
24547         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
24548         mode.
24549         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
24550         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
24551         the MinGW build, but the code guarded by that is for Posix hosts.
24552         * src/keyboard.c (command_loop) [WINDOWSNT]:
24553         Call w32_reset_stack_overflow_guard.
24554         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
24555         (sigsetjmp): New macro.
24556         (w32_reset_stack_overflow_guard): Declare the prototype.
24557         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
24559 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
24561         Improve error signalling for seq-subseq
24562         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
24563         when indexes are too large, but to silently ignore numbers which
24564         are too negative for lists.  String and vector handling errors in
24565         both cases.  This has been regularized.  Error signaling behavior
24566         has been explicitly added to the doc string.
24568         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
24569         therefore also impacted by this change.  Update the doc string
24570         to reflect this.
24572         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
24573         added for these exceptional cases, as well as one non exceptional
24574         base case.
24576 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
24578         Improve error checking in tramp-adb.el
24579         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
24580         Improve error checking.  "ls -l" on Android in Enforcing mode can
24581         print "lstat './FILENAME failed: Permission denied".
24583 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
24585         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
24586         non-struct vectors.
24588 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
24590         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
24591         * lisp/window.el: Fix typo that broke build.
24592         (display-buffer--action-function-custom-type):
24593         Add `display-buffer-use-some-frame'.
24594         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
24596         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
24597         * lisp/window.el (display-buffer-use-some-frame): Add support for
24598         'inhibit-same-window in alist.
24599         * doc/lispref/windows.texi (display-buffer-use-some-frame):
24600         Doc support for 'inhibit-same-window in alist.
24602 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
24604         Avoid infinite loop in display of invisible text in strings
24605         * src/xdisp.c (handle_invisible_prop): If the next change of
24606         invisibility spec does not mean the beginning of a visible text,
24607         update the string position from which to start the search for the
24608         next invisibility change.  This avoids an infinite loop when we
24609         have more than one invisibility spec that are made inactive by
24610         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
24611         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
24612         for the situation that caused bug #21200.
24614 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
24616         * lisp/emacs-lisp/package.el: Simplify describe-package-1
24617         (package-help-section-name-face): New face.
24618         (package--print-help-section): New function.
24619         (describe-package-1): Refactor section printing.
24620         (package-make-button): Use face instead of font-lock-face, which
24621         doesn't work on buttons.
24623         * lisp/emacs-lisp/package.el: Define custom faces
24624         (package-name-face, package-description-face)
24625         (package-status-built-in-face, package-status-external-face)
24626         (package-status-available-face, package-status-new-face)
24627         (package-status-held-face, package-status-disabled-face)
24628         (package-status-installed-face, package-status-dependency-face)
24629         (package-status-unsigned-face, package-status-incompat-face)
24630         (package-status-avail-obso-face): New faces.
24631         (package-menu--print-info-simple): Use them.
24633 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
24635         Fix some confusion with ‘format’
24636         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
24637         (allout-graphics-modification-handler):
24638         Protect arbitrary string in a format context with "%s" format.
24639         * lisp/avoid.el:
24640         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
24641         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
24642         * lisp/erc/erc-button.el (erc-button-beats-to-time):
24643         * lisp/gnus/message.el (message-send-form-letter):
24644         * lisp/org/ob-core.el (org-babel-check-evaluate)
24645         (org-babel-confirm-evaluate):
24646         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
24647         * lisp/org/ox-latex.el (org-latex-compile):
24648         * lisp/org/ox-man.el (org-man-compile):
24649         * lisp/org/ox-odt.el (org-odt-template):
24650         * lisp/org/ox-texinfo.el (org-texinfo-compile):
24651         * lisp/progmodes/prolog.el (prolog-help-info)
24652         (prolog-view-predspec):
24653         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
24654         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
24655         * lisp/textmodes/rst.el (rst-replace-lines):
24656         Change (message (format ...)) to (message ...), and likewise
24657         for ‘error’.  This lessens the probability of confusion when the
24658         output of ‘format’ contains ‘%’.
24660 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
24662         * lisp/replace.el (replace-character-fold): Default to nil.
24664         * lisp/character-fold.el: Fix lax whitespace.
24665         (character-fold-table): Don't make space match other whitespace chars.
24666         (character-fold-to-regexp): Simplify lax behavior.
24668 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
24670         Preserve window point in xref-find-definitions-other-window
24671         Fix the problem reported by Ingo Logmar in
24672         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
24673         * lisp/progmodes/xref.el (xref--goto-char): Extract from
24674         xref--goto-location.
24675         (xref--pop-to-location): Use it.  Replace xref--goto-location with
24676         a direct xref-location-marker call.
24677         (xref--show-location): Likewise.
24678         (xref--display-position): Use xref--goto-char.
24680         * lisp/progmodes/project.el: Add a paragraph to the front matter.
24682 2015-08-04  David Kastrup  <dak@gnu.org>
24684         * lisp/vc/emerge.el (emerge-show-file-name):
24685         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
24686         (vhdl-comment-insert, vhdl-hooked-abbrev):
24687         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
24688         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
24689         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
24690         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
24691         * lisp/obsolete/vip.el (vip-escape-to-emacs)
24692         (vip-prefix-arg-value, vip-prefix-arg-com):
24693         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
24694         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
24695         (quail-tibkey-update-translation):
24696         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
24697         * lisp/leim/quail/lao.el (quail-lao-update-translation):
24698         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
24699         (quail-japanese-self-insert-and-switch-to-alpha):
24700         * lisp/leim/quail/hangul.el (hangul2-input-method)
24701         (hangul3-input-method, hangul390-input-method):
24702         * lisp/language/hanja-util.el (hangul-to-hanja-char):
24703         * lisp/international/robin.el (robin-input-method):
24704         * lisp/international/quail.el (quail-start-translation)
24705         (quail-start-conversion):
24706         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
24707         (gnus-article-describe-key-briefly):
24708         * lisp/eshell/em-hist.el (eshell-list-history):
24709         * lisp/term.el (term-dynamic-list-input-ring)
24710         (term-dynamic-list-completions):
24711         * lisp/subr.el (momentary-string-display):
24712         * lisp/simple.el (read-quoted-char):
24713         * lisp/pcomplete.el (pcomplete-show-completions):
24714         * lisp/kmacro.el (kmacro-repeat-on-last-key):
24715         * lisp/info.el (Info-summary):
24716         * lisp/ehelp.el (electric-help-command-loop):
24717         * lisp/ebuff-menu.el (electric-buffer-list)
24718         (Electric-buffer-menu-exit):
24719         * lisp/double.el (double-translate-key):
24720         * lisp/comint.el (comint-dynamic-list-input-ring)
24721         (comint-dynamic-list-completions): Do not overwrite preexisting
24722         contents of `unread-command-events' when putting new events into it.
24724 2015-08-04  Daniel Colascione  <dancol@dancol.org>
24726         Improve ansi-color filtering of unrecognized escape sequences
24727         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
24728         escape sequences.
24729         (ansi-color-filter-apply, ansi-color-apply): Filter out
24730         unrecognized escape sequences.
24732 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
24734         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
24735         definitions to `easy-menu-define', improve a couple to account for
24736         async, and add a couple of new commands.
24738 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
24740         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
24742 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
24744         Add new 'calendar-weekend-days' option
24745         Make the days receiving the 'calendar-weekend-header' face freely
24746         customizable, as they differ by region/culture.
24747         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
24748         new variable.
24749         * lisp/calendar/calendar.el (calendar-generate-month): New variable
24750         calendar-weekend-days to customize day header fontification.
24752 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
24754         Redo text-quoting-style variable
24755         Rename help-quote-translation to text-quoting-style,
24756         and use symbols rather than characters as values.
24757         This follows suggestions along these lines by Alan Mackenzie in:
24758         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
24759         and by Drew Adams in:
24760         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
24761         * doc/lispref/help.texi (Keys in Documentation)
24762         * etc/NEWS:
24763         * lisp/cus-start.el (standard):
24764         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
24765         Document and/or implement the new behavior instead of the old.
24766         (syms_of_doc): New symbols 'grave' and 'straight'.
24768 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
24770         nnimap.el: Use IMAP MOVE extension if available
24771         * lisp/gnus/nnimap.el (nnimap-request-move-article)
24772         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
24773         Use MOVE extension if available.
24775         nnimap.el: Explicitly ask for server capabilities
24776         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
24777         capabilities will be returned in the login-result.
24779 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
24781         Treat help strings like other doc strings
24782         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
24783         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
24784         substitute-command-keys.
24785         * src/keyboard.c (show_help_echo, parse_menu_item): Call
24786         substitute-command-keys on the help string before displaying it.
24788         Also mention "curly quotes"
24789         See Drew Adams's email in:
24790         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
24791         * doc/lispref/help.texi (Keys in Documentation):
24792         Add index entry "curly quotes".
24793         * etc/NEWS: Use the phrase "curly quotes" too.
24795         ede-proj-target-makefile docstring tweaks
24796         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
24797         Consistently use "all:" to describe the all: target,
24798         replacing three different and confusingly-quoted usages.
24800 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
24802         Don't abort emacsclientw when -a was specified
24803         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
24804         out if we are in emacsclientw and -a was specified.
24806 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
24808         Fix handling of 1st keystroke on MS-Windows
24809         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
24810         This is needed to correctly handle the session's first keystroke,
24811         if it has any modifiers.  (Bug#19994)
24813 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
24815         Substitute some customization etc. doc strings
24816         These changes apply substitute-command-keys to some
24817         doc strings that were going through untranslated
24818         when creating customization or other widgets.
24819         * lisp/cus-edit.el (custom-group-value-create):
24820         * lisp/wid-edit.el (widget-default-create):
24821         (widget-push-button-value-create):
24822         Treat the widget tag as a doc string.
24823         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
24824         Treat the :documentation value as a doc string.
24825         * lisp/wid-edit.el (widget-choose):
24826         Treat the choice names as doc strings.
24827         (widget-default-create): Treat the :doc value as a doc string.
24828         (widget-toggle-value-create): Treat the :on and :off values
24829         as doc strings.
24830         (widget-documentation-string-value-create):
24831         Substitute the doc string.
24833 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
24835         Add a second argument to project-ignores
24836         * lisp/progmodes/project.el (project-ignores): Add a second
24837         argument DIR.
24838         * lisp/progmodes/project.el (project-ignores): Only include the VC
24839         ignores if DIR is the VC root.
24840         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
24842 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
24844         Prevent incorrect display when 'line-spacing' variable is set
24845         * src/xdisp.c (try_window_id): Give up this optimization if the
24846         buffer has its 'line-spacing' variable set non-nil.
24848 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
24850         Don't pass NOVISIT to find-file
24851         * lisp/progmodes/etags.el (next-file):
24852         Don't pass NOVISIT to find-file (bug#21175).
24854         Ignore buffer restriction for tags-loop-eval
24855         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
24856         restriction (bug#21167).
24858 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
24860         Fix a thinko in 'ffap-gopher-at-point'
24861         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
24863         Honor 'line-spacing' for empty lines
24864         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
24865         property and 'line-spacing' frame parameter or variable or
24866         property for empty lines, by doing the same processing as in
24867         x_produce_glyph for newline characters.  (Bug#21165)
24869 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
24871         Simplify by assuming C99 integer division
24872         * src/floatfns.c (ceiling2, floor2, truncate2):
24873         Assume C99 (i.e., Fortran) semantics for integer division.
24874         This simplifies the code.
24876 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
24878         Don't overflow if computing approximate percentage
24879         * lisp/align.el (align-region):
24880         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
24881         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
24882         * lisp/cus-edit.el (custom-buffer-create-internal):
24883         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
24884         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
24885         (checkdoc-next-message-error):
24886         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
24887         * lisp/epa.el (epa-progress-callback-function):
24888         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
24889         * lisp/ffap.el (ffap-menu-rescan):
24890         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
24891         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
24892         * lisp/gnus/nneething.el (nneething-retrieve-headers):
24893         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
24894         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
24895         * lisp/gnus/nnml.el (nnml-retrieve-headers):
24896         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
24897         * lisp/gnus/nntp.el (nntp-retrieve-headers)
24898         (nntp-retrieve-articles):
24899         * lisp/imenu.el (imenu--relative-position):
24900         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
24901         (skkdic-convert-okuri-nasi):
24902         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
24903         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
24904         * lisp/org/org-list.el (org-update-checkbox-count):
24905         * lisp/org/org.el (org-table-map-tables)
24906         (org-update-parent-todo-statistics):
24907         * lisp/play/decipher.el (decipher-insert-frequency-counts)
24908         (decipher-analyze-buffer):
24909         * lisp/profiler.el (profiler-format-percent):
24910         * lisp/progmodes/cc-cmds.el (c-progress-update):
24911         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
24912         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
24913         (idlwave-list-load-path-shadows):
24914         * lisp/progmodes/opascal.el (opascal-step-progress):
24915         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
24916         (vhdl-scan-directory-contents):
24917         * lisp/textmodes/bibtex.el (bibtex-progress-message):
24918         * lisp/textmodes/flyspell.el (flyspell-small-region)
24919         (flyspell-external-point-words):
24920         * lisp/textmodes/table.el (table-recognize):
24921         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
24922         progress-report percentages and the like.  This avoids problems
24923         if (* 100 NUMERATOR) would overflow.
24924         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
24925         * lisp/gnus/registry.el (registry-reindex):
24926         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
24927         * lisp/descr-text.el (describe-char):
24928         * lisp/org/org-colview.el (org-nofm-to-completion):
24929         * lisp/ps-print.el (ps-plot):
24930         * lisp/simple.el (what-cursor-position):
24931         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
24932         more-complicated and less-accurate approximation.
24934         Fix some int overflows in profiler.c
24935         * src/profiler.c (make_log): Make args EMACS_INT, not int,
24936         to avoid unwanted behavior on 'int' overflow.
24937         (make_log, evict_lower_half, record_backtrace):
24938         Use ptrdiff_t, not int, for object indexes.
24940         Port to pedantic memcpy
24941         * src/keyboard.c (menu_bar_items, tool_bar_items):
24942         * src/xrdb.c (magic_db):
24943         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
24945         Merge from gnulib
24946         This incorporates:
24947         2015-07-29 time_rz: port to pedantic memcpy
24948         * lib/time_rz.c: Copy from gnulib.
24950 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
24952         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
24953         When updating the very last entry, tabulated-list-print would
24954         erase it and then try to look at the next one (which obviously
24955         isn't there).
24957 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
24959         Allow to use the old key processing code on MS-Windows
24960         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
24961         New variable.
24962         (w32_wnd_proc): Use it to invoke the old code that processed
24963         character keys, as fallback, when this variable is non-nil.
24964         Fix typos in comments.  (Bug#19994)
24966 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
24968         Improve handling of Unicode keyboard input on MS-Windows
24969         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
24970         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
24971         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
24972         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
24973         successful, don't call TranslateMessage.  (Bug#19994)
24975 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
24977         Fix default-directory in changeset diffs after vc-print-log
24978         * lisp/vc/log-view.el (log-view-diff-common): Move the
24979         revision-granularity check back into log-view-diff-changeset.
24980         (log-view-diff-changeset): Bind default-directory to the current
24981         VC root.
24983         Rename project-directories to project-roots
24984         * lisp/progmodes/project.el (project-search-path-function)
24985         (project-search-path): Update the docstring.
24986         (project-directories): Rename to `project-roots', update all
24987         callers and implementations accordingly.
24988         (project-root): Remove.
24989         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
24990         as the default file mask.
24992 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
24994         Support long URLs in w32-shell-execute
24995         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
24996         and filename_to_ansi to convert the DOCUMENT argument, as it could
24997         be a URL that is not limited to MAX_PATH characters.  Instead, use
24998         MultiByteToWideChar directly, and allocate heap storage as
24999         required to accommodate the converted string.  Likewise with
25000         non-Unicode operation.  Ensure OPERATION is null-terminated, even
25001         if it is longer than 32K bytes.  (Bug#21158)
25003 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
25005         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
25007 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
25009         Add docs for display-buffer action display-buffer-use-some-frame
25010         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
25011         * doc/lispref/windows.texi (Display Action Functions):
25012         Add display-buffer-use-some-frame.
25013         * etc/NEWS: Mention display-buffer-use-some-frame.
25015         Add display-buffer action display-buffer-use-some-frame
25016         * lisp/window.el (display-buffer-use-some-frame): New.
25018         Handle vc-mtn error more gently
25019         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
25020         branch is nil.
25022 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
25024         Fix Tramp problems with multihops, and nc
25025         * lisp/net/tramp-cache.el (tramp-get-file-property)
25026         (tramp-set-file-property, tramp-flush-file-property)
25027         (tramp-get-connection-property, tramp-set-connection-property)
25028         (tramp-flush-connection-property): Remove hop from vector.
25029         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
25030         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
25031         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
25032         netstat to 60".
25033         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
25034         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
25035         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
25036         Keep hop in result.
25037         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
25038         Add hop tests.
25040 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
25042         Resurrect highlighting of repeated words by Flyspell Mode
25043         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
25044         characters between point and the doublon candidate, so that
25045         flyspell-word-search-backward finds it.  (Bug#21157)
25047         Fix redisplay of large images on expose events
25048         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
25049         between signed negative values and unsigned values.  This
25050         prevented redisplay on expose events when the window showed a very
25051         large image.
25053 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
25055         Remove unnecessary stack overflow dependency
25056         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
25057         Don't worry about $ac_cv_header_sys_resource_h and
25058         $ac_cv_func_getrlimit, as they're no longer needed for this.
25059         Problem reported by Eli Zaretskii in:
25060         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
25062 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
25064         Pacify compilation -Wincompatible-pointer-types warnings
25065         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
25066         warning.
25067         (CompareStringW_Proc): New typedef.
25068         (w32_compare_strings): Use it, to pacify compiler warnings under
25069         "-Wincompatible-pointer-types".
25070         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
25071         (GetDiskFreeSpaceExA_Proc): New typedefs.
25072         (Ffile_system_info): Use them, to pacify compiler warnings under
25073         "-Wincompatible-pointer-types".
25075 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
25077         Fix subscript error in calculate_direct_scrolling
25078         Use slightly-longer cost vectors.  Without this change,
25079         calculate_direct_scrolling can have a subscript violation when
25080         FRAME_LINES (frame) <= delta.
25081         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
25082         (line_ins_del, do_line_insertion_deletion_costs):
25083         Allocate and use slightly-larger cost vectors, ones based on
25084         FRAME_TOTAL_LINES instead of FRAME_LINES.
25086         Fix uninitalized value in encode_coding_object
25087         * src/coding.c (encode_coding_object): Also initialize
25088         coding->src_pos and coding->src_pos_byte when NILP (src_object).
25089         This avoids later use of uninitialized storage.
25091 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
25093         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
25094         (Bug#21141)
25096 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
25098         Merge from gnulib
25099         This incorporates:
25100         2015-07-27 time_rz: port better to MinGW
25101         2015-07-27 time: port __need_time_t to MinGW
25102         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
25103         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
25104         * lib/time-internal.h: New file, from gnulib.
25106 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
25108         Handle NULL pointers in w32heap.c allocation routines
25109         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
25110         freeable".
25111         (realloc_after_dump, realloc_before_dump, free_before_dump):
25112         Handle NULL pointers gracefully, as Emacs now seems to expect that.
25114         Fix Cairo build without PNG
25115         * src/image.c: Define PNG function when USE_CAIRO is defined, even
25116         if HAVE_PNG is not.  (Bug#21133)
25118         MS-Windows follow-up for recent TZ-related changes
25119         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
25120         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
25121         picking up 'struct timespec' from pthread.h, if it is installed on
25122         the user's system.  We want either the definitions from MinGW
25123         system headers, if available, or the Gnulib replacements if not.
25124         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
25125         lib/time.h.
25126         * lib/time.in.h: Don't let __need_* symbols affect what happens on
25127         MinGW.  These symbols are defined by MinGW system headers, but we
25128         don't want that to affect whether Gnulib portions of the header
25129         are or aren't used.
25131 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
25133         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
25135         New optional ZONE arg for format-time-string etc.
25136         This simplifies time conversions in other time zones.
25137         It also prevents display-time-world tampering with TZ (Bug#21020).
25138         * admin/admin.el (add-release-logs):
25139         Use improved add-log-time-format API.
25140         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
25141         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
25142         * configure.ac (tzalloc): Remove test for this, since
25143         Emacs no longer uses HAVE_TZALLOC directly.
25144         * doc/lispref/os.texi (Time of Day, Time Conversion)
25145         (Time Parsing):
25146         * etc/NEWS: Document the new behavior.
25147         Merge from gnulib, incorporating:
25148         2015-07-25 strftime: fix newly-introduced bug on Solaris
25149         2015-07-23 fprintftime, strftime: use timezone_t args
25150         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
25151         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
25152         * m4/time_h.m4:
25153         Update from gnulib.
25154         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
25155         New files from gnulib.
25156         * lisp/time-stamp.el (time-stamp-string):
25157         * lisp/time.el (display-time-world-list)
25158         (display-time-world-display):
25159         Use new API, with time zone arg.
25160         * lisp/time.el (display-time-world-display):
25161         Fix race when current-time advances while we're running.
25162         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
25163         (add-log-iso8601-time-string): Accept optional time zone arg.
25164         * lisp/vc/add-log.el (add-change-log-entry):
25165         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
25166         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
25167         Add rules for the time module, since they're now needed
25168         for tzalloc etc.
25169         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
25170         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
25171         * src/editfns.c: Include errno.h.
25172         (set_time_zone_rule): Omit unnecessary forward decl.
25173         (initial_tz): Remove, replacing with ...
25174         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
25175         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
25176         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
25177         (tzlookup): New static functions.
25178         (init_editfns): New arg DUMPING.  All uses changed.
25179         (init_editfns): Omit most initialization if dumping, not if
25180         !initialized.  Initialize wall_clock_tz and local_tz.
25181         (emacs_nmemftime, format_time_string): Time zone argument can now
25182         be any time zone, not just a boolean for UTC or local time.  All
25183         callers changed.
25184         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
25185         (Fcurrent_time_zone): New optional arg ZONE.
25186         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
25187         the same form as with the other new additions.
25188         (decode_time_zone): Remove; no longer needed.
25189         (tzvalbuf): Now file-scope.
25190         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
25191         (syms_of_editfns): Define Qwall.
25192         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
25193         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
25194         [!HAVE_TZALLOC]:
25195         Remove; now supplied by gnulib.
25196         * src/emacs.c (main):
25197         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
25199 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
25201         Fix infinite loop in delete-consecutive-dups
25202         * lisp/subr.el (delete-consecutive-dups): Work even if the last
25203         element is nil (Bug#20588).  Avoid rescan of a circular list in
25204         deletion of last element.
25206 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
25208         Have `x-frame-geometry' return nil for terminal and initial
25209         frames (Bug#21132)
25210         * src/nsfns.m (Fx_frame_geometry):
25211         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
25212         terminal frames.
25213         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
25214         (Fx_frame_geometry): Return nil for terminal frames
25216 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
25218         * etc/tutorials/TUTORIAL.ja: Improve translation.
25220 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
25222         Avoid crashes when w32 GUI functions are called in -batch
25223         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
25224         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
25225         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
25227         Fix flyspell-check-previous-highlighted-word
25228         * lisp/textmodes/flyspell.el
25229         (flyspell-check-previous-highlighted-word): Really accept a
25230         numeric argument, as the doc string describes.  Fix an off-by-one
25231         error in looking up overlays, so invocation with point immediately
25232         after a word would check that word.  Clarify the doc string as
25233         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
25235 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
25237         Minor cleanup in tramp-tests.el
25238         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
25239         Implement using the documented interface
25240         `tramp-connection-properties', rather than with internal functions.
25242 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
25244         Pass lambdas to `skeleton-read'
25245         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
25246         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
25247         lambdas to `skeleton-read' (bug#20386).
25249 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
25251         * INSTALL (DETAILED BUILDING AND INSTALLATION):
25252         Mention --without-imagemagick.
25254         Don't require GUI frames and mouse for Flyspell menus
25255         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
25256         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
25257         support, since pop-up menus work with text terminals and can be
25258         controlled via the keyboard.
25260         Improve documentation of Flyspell commands
25261         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
25262         can be invoked via the keyboard.  Mention those commands by name
25263         and add them to the fn index.  (Bug#21125)
25265 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
25267         Fix some Tramp problems with HP-UX
25268         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
25269         Add "tab0" to stty call.
25270         * test/automated/tramp-tests.el (tramp-persistency-file-name):
25271         Set to nil.
25272         (tramp--test-hpux-p): New defun.
25273         (tramp--test-utf8): Use it.
25275 2015-07-22  Glenn Morris  <rgm@gnu.org>
25277         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
25279 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
25281         Fix point positioning in ffap-next-guess
25282         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
25283         as our callers expect.  This was clobbered as part of fixing
25284         bug#5673.  (Bug#21107)
25285         (ffap-gopher-at-point): Set ffap-string-at-point-region.
25287 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
25289         * lisp/window.el (even-window-sizes): Fix customization type.
25291         Optionally even widths of `display-buffer' windows.  (Bug#21100)
25292         * lisp/window.el (quit-restore-window): Restore width if
25293         requested.
25294         (display-buffer-record-window): Record width when window is
25295         reused and horizontally combined.
25296         (even-window-sizes): New option to allow evening window widths.
25297         (even-window-heights): Defalias to `even-window-sizes'.
25298         (window--even-window-heights): Rename to
25299         `window--even-window-sizes'.  Handle side-by-side windows.
25300         (display-buffer-use-some-window): Call `window--even-window-sizes'
25301         instead of `window--even-window-heights'.
25302         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
25303         * doc/lispref/windows.texi (Choosing Window Options): Describe
25304         `even-window-sizes'.
25305         (Coordinates and Windows): Fix typo.
25307 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
25309         Add file name to autoload error messages
25310         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
25311         Add condition-case to add file name to error message.
25313 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
25315         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
25316         Use 0.0.0.1 as test host.
25318 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25320         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
25321         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
25322         Fix inf-loop (bug#21083).
25324 2015-07-21  Glenn Morris  <rgm@gnu.org>
25326         * test/automated/package-test.el (package-test-signed):
25327         Update for recent changes.
25329         * test/automated/elisp-mode-tests.el
25330         (elisp-xref-finds-both-function-and-variable)
25331         (elisp-xref-finds-only-function-for-minor-mode):
25332         Update for recent xref name changes.
25334 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
25336         Make eldoc timer non-repeatable
25337         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
25338         non-repeatable.  Since it's on post-command hook, that just wasted
25339         CPU cycles.
25341 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
25343         Mention `tramp-connection-properties' in NEWS
25345         Sync with Tramp repository
25346         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
25347         required prior changing its configuration.
25348         (Connection caching, Predefined connection information)
25349         (Remote shell setup): Fix typos.
25350         (Predefined connection information): Describe, how to overwrite
25351         parameters of `tramp-methods'.
25352         (Remote programs, Remote processes, Traces and Profiles):
25353         Simplify example.
25354         (Remote programs): Remove superfluous comment.
25355         * doc/misc/trampver.texi: Update release number.
25356         * lisp/net/tramp-cache.el (tramp-connection-properties):
25357         Adapt docstring.
25358         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
25359         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
25360         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
25361         "gvfs-mkdir -p ..." does not work robust.
25362         (tramp-gvfs-maybe-open-connection):
25363         Adapt `tramp-get-method-parameter' call.
25364         * lisp/net/tramp-sh.el (tramp-methods):
25365         Add `tramp-remote-shell-login' parameter where it fits.
25366         (tramp-get-remote-path): Use it.
25367         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
25368         (all): Adapt `tramp-get-method-parameter' calls.
25369         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
25370         (tramp-get-method-parameter): Replace argument METHOD by VEC.
25371         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
25372         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
25373         (all): Adapt `tramp-get-method-parameter' calls.
25374         * lisp/net/trampver.el: Update release number.
25375         * test/automated/tramp-tests.el (tramp--instrument-test-case):
25376         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
25377         (tramp-test13-make-directory, tramp--test-adb-p)
25378         (tramp--test-smb-or-windows-nt-p): Simplify.
25379         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
25380         (tramp--test-special-characters): Fix docstring.  Add gvfs and
25381         ftp tests.
25382         (tramp--test-utf8): Fix docstring.
25384 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
25386         Add new xref-query-replace command
25387         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
25388         New function, extracted from xref-pulse-momentarily.
25389         (xref-query-replace): New command.
25390         (xref--query-replace-1): New helper function.
25391         (xref--xref-buffer-mode-map): Add `r' binding.
25393 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
25395         Simplify icalendar decoding of Z dates
25396         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
25397         Simplify calculation of time strings with trailing "Z".
25399 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
25401         Do not corrupt grep-find-ignored-files
25402         * lisp/progmodes/project.el (project-ignores): Change the order of
25403         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
25405         Add xref-match-item, and use it
25406         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
25407         (xref-file-location): Add reader for the column slot.
25408         (xref-match-item): New class.
25409         (xref-match-bounds): A method implementation for it.
25410         (xref-make-match): New constructor function.
25411         (xref--current-item): New private variable.
25412         (xref-pulse-momentarily): Use it.
25413         (xref--pop-to-location): Change the first argument to an xref
25414         item, instead of location, bind xref--current-item.
25415         Update all callers.
25416         (xref-next-line, xref-prev-line, xref--next-error-function)
25417         (xref--mouse-2): Look for the property `xref-item',
25418         instead of `xref-location'.
25419         (xref--item-at-point): Likewise.  This function replaces
25420         `xref-location-at-point'.  Update all callers.
25421         (xref--insert-xrefs): Add the `xref-item' text property, instead
25422         of `xref-location'.
25423         (xref--collect-match): Use xref-make-match.
25425         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
25426         Update all references.
25428         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
25429         slot to `summary'.
25431         vc-hg: Perform the print-log call asynchronously
25432         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
25433         asynchronously (bug#21067).
25435         Add xref-after-jump-hook and xref-after-return-hook
25436         * lisp/progmodes/xref.el (xref-after-jump-hook)
25437         (xref-after-return-hook): New hooks.
25438         (xref-pulse-on-jump): Remove, in favor of the above.
25439         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
25440         (xref--pop-to-location, xref--display-position)
25441         (xref-pop-marker-stack): Use the new hooks, as requested in
25442         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
25444 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
25446         * lisp/progmodes/js.el (js-mode): Correct the lighter.
25448 2015-07-19  Leo Liu  <sdl.web@gmail.com>
25450         Fix a bug in cfengine3-mode
25451         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
25452         eldoc-documentation-function.
25454 2015-07-18  Julien Danjou  <julien@danjou.info>
25456         sieve-mode: support "body" test command
25457         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
25458         Add missing "body" test command.
25460 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
25462         Fix info-apropos when the default encoding is Latin-N
25463         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
25464         'undecided', so that it is set to the encoding of the Info file we
25465         are about to insert.  Otherwise, 'info-apropos' will fail to find
25466         some index nodes in some UTF-8 encoded files, if the buffer's
25467         previous encoding is Latin-N or some such.
25469 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
25471         * lisp/epg.el (epg--start): Check that gpgconf can be found
25472         before calling it.
25474         Expose more file types to OS X that Emacs understands
25475         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
25476         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
25478 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
25480         Fix visual-order cursor movement when lines are truncated
25481         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
25482         simulate display in a window of infinite width, to allow move_it_*
25483         functions reach positions outside of normal window dimensions.
25484         Remove code that tried to handle a subset of these situations by
25485         manual iteration of buffer text.  (Bug#17777)
25487         Fix following Info cross-references to anchors
25488         * lisp/info.el (Info-read-subfile): Add to the returned value the
25489         length of subfile preamble, after converting it to file's byte
25490         offset, as expected by the caller.  Use bufferpos-to-filepos.
25491         (Info-find-node-2): If searching for a node with a
25492         1000-character slop fails, try again with a 10000-character slop,
25493         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
25494         * lisp/international/mule-util.el (bufferpos-to-filepos): New
25495         function.
25496         * etc/NEWS: Mention bufferpos-to-filepos.
25498         Fix scrolling backwards on TTY frames under scroll-conservatively
25499         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
25500         in moving backwards on TTY frames.  (Bug#21080)
25502 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
25504         Consider a jsdoc tag to be a beginning of a paragraph as well
25505         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
25506         consider a jsdoc tag to be a beginning of a paragraph as well.
25508 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
25510         * lisp/emacs-lisp/package.el: Fix warnings.
25512         * lisp/emacs-lisp/package.el (package-buffer-info):
25513         Add author and maintainers to `package-buffer-info'.
25515         * lisp/emacs-lisp/package.el: Many small changes.
25516         Replace all instances of 'face with 'font-lock-face.
25517         (describe-package-1): Improve some strings and move the summary
25518         up the list.
25519         (package-install-file): Update docstring.
25520         (package-menu-hide-package): Bind to `H'.
25522         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
25523         Fix error handling.
25525 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
25527         Fix hang with large yanks This should fix the bug fixed by Mike
25528         Crowe's patch in:
25529         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
25530         A problem in this area has been reported by several users; see
25531         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
25532         This fix differs from Mike Crowe's patch in that it should avoid a
25533         race condition that could lose SIGIO signals.  ignore_sigio dates
25534         back to the 1980s when some platforms couldn't block signals, and
25535         could only ignore them, which led to races when signals arrived
25536         while being ignored.  We shouldn't have to worry about those old
25537         platforms now.
25538         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
25539         * src/emacs.c (shut_down_emacs):
25540         Don't call ignore_sigio; unrequest_sigio should suffice.
25541         * src/keyboard.c (kbd_buffer_store_buffered_event):
25542         Use unrequest_sigio, not ignore_sigio.
25543         (kbd_buffer_get_event):
25544         Call request_sigio when getting the ball rolling again.
25546 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
25548         * lisp/obsolete/longlines.el (longlines-search-function):
25549         Fallback on `isearch-search-fun-default'.
25551 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
25553         Support @-mentions
25554         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
25555         of mentions/messages with @nick instead of just nick.
25557 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
25559         Fix bug#20943
25560         * lisp/autorevert.el (auto-revert-handler): Do not check for
25561         `buffer-modified-p'.
25562         * lisp/files.el (buffer-stale--default-function): Check for
25563         `buffer-modified-p'.
25564         * test/automated/auto-revert-tests.el
25565         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
25567 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
25569         Fix delete-dups bug on long lists
25570         * lisp/subr.el (delete-dups):
25571         Don't mistakenly keep some dups when applied to long lists.
25573 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
25575         Better heuristic for C stack overflow
25576         Improve the heuristic for distinguishing stack overflows from
25577         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
25578         the getrlimit method wasn't portable to Cygwin; see:
25579         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
25580         Corinna suggested pthread_getattr_np but this also has problems.
25581         Instead, replace the low-level system stuff with a simple
25582         heuristic based on known good stack addresses.
25583         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
25584         * src/sysdep.c: Don't include <sys/resource.h>.
25585         (stack_direction): Remove.  All uses removed.
25586         (stack_overflow): New function.
25587         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
25588         Make SEGV fatal in non-main threads.
25590 2015-07-16  Daiki Ueno  <ueno@gnu.org>
25592         epg: Automatically start pinentry server
25593         * lisp/epg-config.el (epg-gpgconf-program): New variable.
25594         * lisp/epg.el (epg--start): Call `pinentry-start' if
25595         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
25597 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
25599         * lisp/gnus/nnimap.el: Fix my last bogus change.
25600         Reinstall Stefan Monnier's change that was made in
25601         <83d824bc4041332f338ad7e5e830f443535aa300>.
25603 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
25605         Merge from gnulib
25606         This incorporates:
25607         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
25608         2015-07-05 acl-permissions: Fix on FreeBSD
25609         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
25610         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
25611         * lib/set-permissions.c: Copy from gnulib.
25613         Port to stricter C99
25614         * src/keyboard.h (kbd_buffer_store_event_hold):
25615         Don't return a void expression.
25617 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
25619         * doc/emacs/frames.texi (Creating Frames):
25620         Fix the command `C-x 5 m' runs.
25622 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
25624         New autorevert tests
25625         * test/automated/auto-revert-tests.el: New file.
25627 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
25629         Clear gcprolist etc. after stack overflow
25630         After stack overflow, command_loop calls init_eval, and this needs to
25631         clear gcprolist and byte_stack_list (Bug#20996).
25632         * src/alloc.c (init_alloc):
25633         Move gcprolist and byte_stack_list initialization from here ...
25634         * src/eval.c (init_eval): ... to here.
25636 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
25638         * doc/emacs/windows.texi (Pop Up Window): Fix the description
25639         of `C-x 4 m'.
25641 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
25643         Avoid deprecated enums in mac-ct font backend driver
25644         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
25645         (mac_ctfont_get_advance_width_for_glyph)
25646         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
25648         Cache font family in mac-ct font backend driver
25649         * src/macfont.m (macfont_family_cache): New variable.
25650         (syms_of_macfont): Initialize it.
25651         (macfont_available_families_cache): New variable.
25652         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
25653         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
25654         (macfont_handle_font_change_notification)
25655         (macfont_init_font_change_handler)
25656         (macfont_copy_available_families_cache): New functions.
25657         (macfont_create_family_with_symbol): Use font family caches.
25658         (macfont_list, macfont_list_family):
25659         Use macfont_copy_available_families_cache instead of
25660         mac_font_create_available_families.
25662 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
25664         Show the default value in the prompt
25665         * lisp/progmodes/xref.el: Add `M-?' binding for
25666         xref-find-references.  Declare functions `grep-read-files' and
25667         `grep-expand-template'.
25668         (xref--read-identifier): Show the default value in the prompt.
25670         * lisp/progmodes/xref.el (xref-find-regexp): When called with
25671         prefix argument, ask for file patterns to search as well.  When
25672         prompting for the directory, require an existing one.
25673         (xref-collect-matches): Add a new argument, FILES.  Use it in the
25674         above function.
25676         Add `project-ignores'
25677         * lisp/progmodes/project.el (project-ignores): New generic
25678         function, and an implementation for the VC project type.
25679         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
25680         variant of rgrep-default-command that handles a generic list of
25681         ignores.
25682         (xref-collect-matches): Use it, and pass through to it the value
25683         of the newly added argument.
25684         (xref-find-regexp): Handle ignored paths within the project.
25685         Remove outdated comment.
25686         * lisp/vc/vc.el (vc-default-ignore-completion-table):
25687         Skip the comments and the empty lines.
25689 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
25691         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
25693 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
25695         gnus-registry.el: Correct function argument order
25696         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
25697         Reverse the order of function arguments.
25699 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
25701         Bind grep-highlight-matches to nil
25702         * lisp/progmodes/xref.el (xref-collect-matches):
25703         Bind grep-highlight-matches to nil (bug#20728).
25705 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
25707         nnimap.el: Fix IMAP message size parsing
25708         * lisp/gnus/nnimap.el (nnimap-transform-headers):
25709         Don't assume that UID comes before RFC822.SIZE.
25711 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
25713         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
25714         (auth-source-creation-prompts): Declare.
25715         (nnimap-retrieve-headers, nnimap-status-message)
25716         (nnimap-request-create-group, nnimap-request-delete-group)
25717         (nnimap-close-group, nnimap-request-move-article)
25718         (nnimap-request-accept-article, nnimap-request-newgroups)
25719         (nnimap-request-post, nnimap-dummy-active-number)
25720         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
25721         (nnimap-parse-flags): Remove unused var `p'.
25722         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
25723         (nnimap-flags-to-marks): Remove unused var `totalp'.
25725 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
25727         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
25729 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
25731         * src/macfont.m (macfont_list): Ignore font families lacking
25732         font descriptors.
25734 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
25736         Don't check the exit status, it can be misleading
25737         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
25738         exit status, it can be misleading.
25740         Introduce a Project API
25741         * lisp/progmodes/project.el: New file.
25742         * lisp/cedet/ede.el (project-try-ede): New function.
25743         (project-root): New implementation.
25744         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
25745         Set project-search-path-function.
25746         (elisp--xref-find-references): Delegate some logic to
25747         project-search-path.
25748         (elisp-search-path): New function.
25749         (elisp-xref-find): Don't implement `matches' anymore.
25750         * lisp/progmodes/etags.el: Don't implement `matches'.
25751         Delegate some logic to project-search-path.
25752         (etags-search-path): New function.
25753         * lisp/progmodes/xref.el (xref-find-function):
25754         Remove `matches' from the API.
25755         (xref-find-regexp): Move whatever common logic was in elisp and
25756         etags implementations, and search the directories returned by
25757         project-directories and project-search-path.
25759 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
25761         * test/automated/map-tests.el (test-map-delete-return-value):
25762         Uncomment test.
25764         Add support for gv.el in map.el
25765         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
25766         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
25767         * test/automated/map-tests.el: Update tests to work with the new
25768         implementations of map-elt and map-put.
25770 2015-07-09  Glenn Morris  <rgm@gnu.org>
25772         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
25774 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
25776         Syntax-propertize until the end of the line first
25777         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
25778         until the end of the line first.
25780 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
25782         * doc/emacs/files.texi (File Archives): Add a cross reference.
25784 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
25786         nnimap.el: Handle plain value for nnimap-stream
25787         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
25788         capabilities, so that a 'plain value for the `nnimap-stream' server
25789         variable is handled correctly.
25790         * doc/misc/gnus.texi (Customizing the IMAP Connection):
25791         Document the 'plain option.
25793 2015-07-08  Leo Liu  <sdl.web@gmail.com>
25795         Fix bug in thing-at-point--bounds-of-well-formed-url
25796         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
25797         sure boundary contains current point.
25799 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
25801         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
25802         in the end.
25804         Declare whitespace-line-column a safe file-local
25805         * lisp/whitespace.el (whitespace-line-column): Declare to be a
25806         safe file-local when the value is an integer.
25808 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
25810         gnus-group.el: Check if group names are already strings
25811         * lisp/gnus/gnus-group.el (gnus-group-group-name):
25812         The group name may already be a string.
25813         Specifically, in the group list reached from the *Server* buffer,
25814         the 'gnus-group text property returns a string.  Everywhere else
25815         it returns a symbol.
25817         nnimap.el: Remove unused let variables
25818         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
25820 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
25822         Support "maximized" property of runemacs's shortcut
25823         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
25824         the '--maximized' switch to Emacs.
25826         Support "minimized" property of runemacs's shortcut
25827         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
25828         pass the '--iconic' switch to Emacs.  (Bug#20991)
25830 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
25832         Doc fixes
25833         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
25834         C-w' in Diff mode.
25835         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
25836         Add a cross reference.
25838 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
25840         * lisp/obsolete/landmark.el: Add Obsolete-since header.
25842 2015-07-07  Glenn Morris  <rgm@gnu.org>
25844         * test/automated/ert-tests.el (ert-test-deftest):
25845         Update for recent changes.
25847 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
25849         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
25850         * lisp/emacs-lisp/gv.el (gv-setter): New function.
25851         (gv-invalid-place): New error.
25852         (gv-get): Use them.
25853         (gv-synthetic-place, gv-delay-error): New places.
25854         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
25855         (cl-defgeneric, cl-defmethod): Use gv-setter.
25857 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
25859         Make vc-tests work with MSYS svn program
25860         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
25861         svn is an MSYS program.
25863 2015-07-07  Ken Brown  <kbrown@cornell.edu>
25865         Improve recent change to emacsclient on Cygwin
25866         * lisp/server.el (server-process-filter): Remove redundant check
25867         that 'cygwin-convert-file-name-from-windows' is defined as a
25868         function on Cygwin.  Don't call that function unless its argument
25869         starts with a drive letter.
25871 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
25873         * lisp/emacs-lisp/package.el (package-compute-transaction):
25874         Fix void variable due to `found-something' being in the wrong `let'.
25876 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
25878         * lisp/play/landmark.el: Move to lisp/obsolete/.
25880 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
25882         Have `x-show-tip' handle `right' and `bottom' frame parameters
25883         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
25884         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
25885         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
25886         tooltips also via `right' and `bottom' frame parameters.
25888 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
25890         Add online-help support to describe types
25891         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
25892         (describe-symbol): Improve the selection of default.
25893         * lisp/help-mode.el: Require cl-lib.
25894         (describe-symbol-backends): Move from help-fns.el.
25895         (help-make-xrefs): Use it.
25896         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
25897         for types.
25898         (cl--typedef-regexp): New const.
25899         (find-function-regexp-alist): Add entry for types.
25900         (cl-help-type, cl-type-definition): New buttons.
25901         (cl-find-class): New function.
25902         (cl-describe-type): New command.
25903         (cl--describe-class, cl--describe-class-slot)
25904         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
25905         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
25906         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
25907         New functions.  Moved from eieio-opt.el.
25908         (cl--generic-class-parents): New function, extracted from
25909         cl--generic-struct-specializers.
25910         (cl--generic-struct-specializers): Use it.
25911         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
25912         Improve constructor's docstrings.
25913         (cl-struct-unknown-slot): New error.
25914         (cl-struct-slot-offset): Use it.
25915         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
25916         definition in current-load-list.
25917         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
25918         (eieio--add-new-slot): Set it.
25919         (eieio-defclass-internal): Use new name for current-load-list.
25920         (eieio-oref): Add compiler-macro to warn about unknown slots.
25921         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
25922         as compile-time as well.  Improve constructor docstrings.
25923         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
25924         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
25925         (eieio-class-def): Remove button.
25926         (eieio-help-constructor): Use new name for load-history element.
25927         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
25928         (eieio-method-documentation): Move to cl-generic.el.
25929         (eieio-display-method-list): Use new names.
25930         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
25931         Add "define-linline".
25932         (lisp-fdefs): Remove "defsubst".
25933         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
25934         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
25935         (macroexp--warn-and-return): Use it to avoid inf-loops.
25936         Add `compile-only' argument.
25938 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25940         python.el: Fix local/remote shell environment setup
25941         * lisp/progmodes/python.el (python-shell-with-environment):
25942         Fix remote/local environment setup.
25943         * test/automated/python-tests.el (python-shell-with-environment-1)
25944         (python-shell-with-environment-2): New tests.
25946 2015-07-06  Glenn Morris  <rgm@gnu.org>
25948         * lisp/simple.el (set-variable): Tweak recent doc fix.
25950 2015-07-06  Ken Brown  <kbrown@cornell.edu>
25952         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
25954 2015-07-06  Glenn Morris  <rgm@gnu.org>
25956         * lisp/simple.el (set-variable): Use user-error for type mismatch.
25958 2015-07-06  Ken Brown  <kbrown@cornell.edu>
25960         * src/emacs.c (main): Don't increase the stack size on Cygwin.
25962 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
25964         (describe-symbol): Rewrite describe-function-or-variable
25965         * lisp/help-fns.el (describe-symbol-backends): New var.
25966         (help-xref-stack-item): Declare.
25967         (describe-symbol): Rename from describe-function-or-variable.
25968         Rewrite using describe-symbol-backends instead of help-xref-interned.
25969         * lisp/help.el (help-map): Use it.
25970         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
25971         (help-xref-interned): Make it into an obsolete alias.
25973         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
25974         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
25975         and cl-letf.
25977 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
25979         Fix parsing glitches in dired-mark-sexp (bug#13575)
25980         * lisp/dired-x.el (dired-x--string-to-number): New function.
25981         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
25982         of directory-listing-before-filename-regexp.  Consider
25983         forward-word harmful and replace it.  Add more verbiage in
25984         comments and doc string.
25986 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25988         python.el: Respect process environment for remote shells
25989         * lisp/progmodes/python.el
25990         (python-shell-calculate-process-environment): Calculate
25991         process-environment or tramp-remote-process-environment depending
25992         whether current file is remote.
25993         (python-shell-calculate-exec-path): Calculate exec-path or
25994         tramp-remote-path depending whether current file is remote.
25995         (python-shell-with-environment): New macro.
25996         (python-shell-prompt-detect, python-shell-calculate-command)
25997         (python-shell-make-comint, python-check): Use it.
25999         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
26000         * lisp/progmodes/python.el (python-shell--interpreter)
26001         (python-shell--interpreter-args): New vars.
26002         (inferior-python-mode, python-shell-make-comint): Use them.
26004         python.el: Fixes for IPython 3.x  (Bug#20580)
26005         * lisp/progmodes/python.el:
26006         (python-shell-completion-native-setup): Fix IPython 3.x setup.
26007         (python-shell-completion-native-get-completions): Fix timeout
26008         logic.
26010         python.el: Fix mark-defun behavior  (Bug#19665)
26011         * lisp/progmodes/python.el (python-mark-defun): New function.
26012         * test/automated/python-tests.el (python-mark-defun-1)
26013         (python-mark-defun-2, python-mark-defun-3): New tests.
26015 2015-07-05  Glenn Morris  <rgm@gnu.org>
26017         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
26018         such as "extends(parent), private".  (Bug#20969)
26019         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
26020         New tests.
26022 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
26024         Avoid duplicate calls to current_timespec
26025         * src/process.c (wait_reading_process_output):
26026         Cache current_timespec results as long as we're not waiting.
26028 2015-07-05  Ian Kelling  <ian@iankelling.org>
26030         Avoid returning early reading process output due to SIGIO
26031         * src/process.c (wait_reading_process_output): Extend the behavior of
26032         not breaking due to not finding output when a timer has lowered the
26033         timeout to include when SIGIO lowers the timeout.
26035         Don't return as fast reading any process output
26036         * src/process.c (wait_reading_process_output):
26037         The patch for Bug#17647 returns too fast sometimes when reading
26038         from any processes.  Revert part of it, and limit the timeout more
26039         sensibly (Bug#20978).
26041         Refactor timeouts in wait_reading_process_output
26042         * src/process.c (wait_reading_process_output):
26043         Simplify timeouts with an enum.  Remove a redundant condition.
26044         (Bug#20978)
26046         Remove ADAPTIVE_READ_BUFFERING ifdef
26047         * src/process.c (make-process, make-pipe-process, deactivate_process)
26048         (wait_reading_process_output, read_process_output, send_process)
26049         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
26050         added in case there was an operating system in which it was not
26051         useful.  That was 11 years ago and it hasn't happened.  Make
26052         development easier by not considering the effect of changes on a
26053         theoretical OS where this is disabled (Bug#20978).
26055 2015-07-05  Glenn Morris  <rgm@gnu.org>
26057         * lisp/simple.el (set-variable): Doc fix.
26059         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
26061 2015-07-05  Ian Kelling  <ian@iankelling.org>
26063         accept-process-output fix
26064         This is a followon to the fix for bug#17647 (Bug#20976).
26065         * src/process.c (status_notify): Fix too high return in some cases.
26067 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
26069         * lisp/character-fold.el (character-fold-table):
26070         Only fold decompositions if at least one character is non-spacing.
26071         (Bug#20975)
26073 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
26075         Merge from gnulib
26076         This incorporates:
26077         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
26078         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
26079         2015-07-02 update-copyright: fix test failure with perl >= 5.22
26080         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
26081         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
26082         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
26083         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
26085 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
26087         Respect `prog-indentation-context' in python.el
26088         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
26089         (python-indent-context, python-indent--calculate-indentation)
26090         (python-info-current-defun)
26091         (python-info-dedenter-opening-block-message)
26092         (python-info-line-ends-backslash-p)
26093         (python-info-beginning-of-backslash)
26094         (python-info-continuation-line-p): Use `prog-widen'.
26095         (python-indent--calculate-indentation)
26096         (python-indent--calculate-levels)
26097         (python-indent-calculate-indentation): Use `prog-first-column'.
26098         (python-indent--calculate-levels): Simplify.
26099         Ignore also initial empty lines for syntax calculation.
26100         * lisp/progmodes/python.el (python-indent-context): Return
26101         :no-indent for first non-empty line, not just in line 1.
26102         * test/automated/python-tests.el (python-indent-base-case)
26103         (python-indent-inside-paren-1, python-indent-inside-paren-2)
26104         (python-indent-inside-paren-3, python-indent-inside-paren-4)
26105         (python-indent-inside-paren-5, python-indent-inside-paren-6)
26106         (python-indent-after-backslash-1)
26107         (python-indent-after-backslash-2)
26108         (python-indent-after-backslash-3)
26109         (python-indent-after-backslash-4, python-indent-inside-string-1):
26110         Expect :no-indent for first non-empty line.
26112 2015-07-04  Daniel Colascione  <dancol@dancol.org>
26114         Factor isearch word description into new function
26115         * lisp/isearch.el (isearch--describe-word-mode): New function.
26116         (isearch-message-prefix, isearch-query-replace): Use it.
26118 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
26120         Fix mouse pointer on w32 when a menu is active
26121         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
26122         shape while a menu is in use.  This started happening since we now
26123         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
26125 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
26127         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
26128         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
26129         parameter.  (Bug#17344)
26131         Have `compilation-set-window' use right window for getting fringes
26132         (Bug#20829)
26133         * lisp/progmodes/compile.el (compilation-set-window):
26134         Take `window-fringes' from argument window.
26136 2015-07-03  Glenn Morris  <rgm@gnu.org>
26138         Update eieio tests for recent eieio-core change.
26139         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
26140         * test/automated/eieio-tests.el
26141         (eieio-test-32-slot-attribute-override-2):
26142         Replace the deleted eieio--class-v with cl--find-class.
26144 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
26146         Fix some issues with `window-divider-mode'
26147         * lisp/frame.el (window-divider-default-places): New option.
26148         (window-divider-mode): Remove option.
26149         (window-divider-mode): Make it a "regular" minor mode.
26150         (window-divider-width-valid-p): Drop frame- prefix.
26151         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
26152         prefix.  Handle `window-divider-default-places'.
26153         (frame--window-divider-mode-set-and-apply): Remove.
26154         (window-divider-default-bottom-width)
26155         (window-divider-default-right-width): Drop :group entries.
26156         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
26157         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
26158         (menu-bar-no-window-divider): Set `window-divider-default-places'
26159         and call `window-divider-mode'.
26160         * doc/emacs/frames.texi (Window Dividers): Document
26161         `window-divider-default-places'.
26163 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
26165         * doc/emacs/display.texi (Displaying Boundaries):
26166         * doc/emacs/search.texi (Word Search): Add cross references.
26168 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
26170         -batch should not affect ‘’ -> `' display
26171         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
26172         -batch (Bug#20926).
26174 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
26176         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
26177         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
26178         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
26179         Use cl--find-class instead.
26181         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
26183 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
26185         Some further fixes in Change Window node (Bug#20183)
26186         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
26187         by "resizing" in section title.  Add some concept indices.
26188         Suggested by N. Jackson (Bug#20183).
26190         * doc/emacs/windows.texi (Change Window): Reference window
26191         dividers.
26193         Document new `window-divider-mode'.
26194         * lisp/frame.el (window-divider-mode): Fix doc-string.
26195         * doc/emacs/frames.texi (Window Dividers): New section.
26197         Improve accessibility of window dividers (Bug#20183)
26198         * lisp/faces.el (window-divider)
26199         (window-divider-first-pixel, window-divider-last-pixel): Change
26200         membership from `frames' to `window-divider' customization group.
26201         * lisp/frame.el (window-divider): New customization group.
26202         (window-divider-mode): New minor mode.
26203         (window-divider-default-bottom-width)
26204         (window-divider-default-right-width): New options.
26205         (frame--window-divider-previous-mode): New variable.
26206         (frame-window-divider-width-valid-p)
26207         (frame--window-divider-mode-apply)
26208         (frame--window-divider-mode-set-and-apply): New functions.
26209         * lisp/menu-bar.el (menu-bar-options-save): Save
26210         window-divider-mode settings.
26211         (menu-bar-window-divider-customize)
26212         (menu-bar-bottom-and-right-window-divider)
26213         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
26214         (menu-bar-no-window-divider): New functions.
26215         (menu-bar-showhide-window-divider-menu): New variable.
26216         (menu-bar-showhide-menu): Show/hide window divider menu.
26217         * lisp/mouse.el (mouse-split-window-vertically)
26218         (mouse-split-window-horizontally): Replace `error' by
26219         `user-error'.  Bind `window-combination-resize' to nil.
26220         (top-level): Add/reorder mouse key bindings on mode- and
26221         vertical-line.
26223 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
26225         Don't display ‘’ as `' under X in en_GB
26226         The curved quote setup code invokes (char-displayable-p ?‘),
26227         but this isn’t reliable until after the X frame replaces the
26228         terminal frame (Bug#20926).
26229         * lisp/international/mule-cmds.el (set-locale-environment):
26230         Move curved quote setup code from here ...
26231         * lisp/startup.el (command-line): ... to here, after creating
26232         the X frame.
26234 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
26236         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
26238         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
26239         to reverse the meaning (Bug#15631).
26241 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
26243         Be more tolerant to fonts named "Foobar-12"
26244         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
26245         don't barf; instead, request a new fontset to be generated.  This
26246         avoids unnecessarily rejecting fonts named against XLFD rules.  See
26247         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
26248         for the description of the original problem.
26249         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
26250         by a hyphen in a font's name.
26252         Fix value of posn-at-pont in R2L lines
26253         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
26254         coordinate of -1, for a newline in a right-to-left line that
26255         overflowed into the left fringe.
26257 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
26259         (cl--copy-slot-descriptor): Copy the `props' alist as well
26260         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
26261         Rename from cl--copy-slot-descriptor.
26262         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
26264 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
26266         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
26267         (xterm-query-timeout): New var.
26268         (xterm--query): Use it.  Fallback on async method if we timeout before
26269         getting the first byte of the reply (bug#12354).
26271 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
26273         Spelling fixes
26274         * lisp/character-fold.el (character-fold-search):
26275         * lisp/emacs-lisp/package.el (package-hidden-regexps):
26276         Fix typos.
26278 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
26280         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
26282 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
26284         In strings, prefer plain ` and ' to \` and \'
26285         * lisp/allout.el (allout-insert-listified):
26286         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
26287         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
26288         (ls-lisp-string-lessp):
26289         * lisp/menu-bar.el (menu-bar-open):
26290         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
26291         * lisp/progmodes/compile.el (compile):
26292         * lisp/progmodes/etags.el (tags-loop-scan):
26293         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
26294         * lisp/subr.el (posn-actual-col-row):
26295         * lisp/term/pc-win.el (x-list-fonts):
26296         * lisp/textmodes/texinfmt.el (texinfmt-version):
26297         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
26298         * lisp/time.el (display-time-world-list):
26299         * lisp/tmm.el (tmm-menubar):
26300         * src/buffer.c (syms_of_buffer):
26301         * src/fileio.c (syms_of_fileio):
26302         Omit unnecessary and confusing backslash before quote.
26303         * lisp/erc/erc.el (erc-cmd-LASTLOG):
26304         * lisp/progmodes/flymake.el (flymake-fix-file-name):
26305         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
26306         Fix string that was intended to escape a backslash and not a quote.
26308 2015-06-30  Glenn Morris  <rgm@gnu.org>
26310         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
26312         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
26313         Replace hard-coded lists with wildcard + filter-out.
26315         * configure.ac (system-configuration-features): Add X11, NS.
26317         Improve reproducibility of generated loaddefs file
26318         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
26319         Make the return value the modtime of the input file (if no autoloads).
26320         (update-directory-autoloads): In the "no autoloads" section,
26321         use "most recent modtime" rather than "current time".
26323 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
26325         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
26326         (Bug#20930)
26328 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
26330         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
26332         Add seq-min and seq-max
26333         Bump version number.
26334         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
26335         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
26337 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
26339         Make sure sleep-for always delays for as long as it's told
26340         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
26341         a loop, to ensure we always wait exactly the required amount of
26342         time.  (Bug#15990)
26344 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
26346         Fix pointer signedness glitch
26347         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
26349 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
26351         Don't block changes in mouse pointer inside 'track-mouse'
26352         * etc/NEWS:
26353         * doc/lispref/frames.texi (Mouse Tracking): Document the special
26354         effect of setting 'track-mouse' to 'dragging'.
26355         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
26356         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
26357         * lisp/mouse-drag.el (mouse-drag-throw):
26358         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
26359         to avoid changes in the shape of the mouse pointer.
26360         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
26361         pointer shape when do_mouse_tracking has the value of 'dragging',
26362         not just any non-nil value.  (Bug#20934)
26363         (syms_of_xdisp): DEFSYM 'dragging'.
26365 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
26367         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
26369         * lisp/emacs-lisp/package.el (package-compute-transaction):
26370         Don't assume version sorting.
26372         * lisp/emacs-lisp/package.el (package--save-selected-packages):
26373         Don't save before init time, to avoid overwriting configurations.
26374         (Bug#20855)
26376 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
26378         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
26379         references.
26381 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
26383         Update for the upcoming CFEngine 3.7 release: support macros and
26384         quoted context strings; reformat JSON; indent promise attributes 2
26385         units by default; give function parameter descriptions in the eldoc
26386         glue.
26387         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
26388         Autoload `json-pretty-print'.  Support new features in 3.7.
26389         (cfengine-parameters-indent): Set default promise attribute indent to
26390         2 more than the promise itself.
26391         (cfengine3-macro-regex): New variable to match the new macro syntax.
26392         (cfengine3-font-lock-keywords): Use it to highlight macros.
26393         (cfengine3-indent-line): Use it to indent macros to column 0.
26394         (cfengine3-class-selector-regex): Update for the new quoted strings
26395         format.
26396         (cfengine3-reformat-json-string): New function to reformat a JSON
26397         string using `json-pretty-print'.
26398         (cfengine3-format-function-docstring): Use function parameter
26399         description if it's provided by the cf-promises syntax dump.
26401 2015-06-29  Michael R. Mauger  <michael@mauger.com>
26403         Cygwin emacsclient handles w32 file names
26404         * lisp/server.el (server-process-filter): Allow Cygwin's
26405         emacsclient to be used as a file handler on MS-Windows.
26407 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
26409         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
26410         (bug#20925).
26412 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
26414         * doc/lispref/text.texi (Sticky Properties): Improve wording.
26415         (Bug#20924)
26417         Allow font names that end in "-NN", where NN is a number
26418         * src/font.c (font_load_for_lface): If the font-spec didn't match
26419         any available fonts, try again without interpreting trailing "-NN"
26420         as the font size.  For the description of the original problem, see
26421         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
26423         .gdbinit followup to changes in !USE_LSB_TAG
26424         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
26425         !USE_LSB_TAG, as Emacs no longer does.
26427 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
26429         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
26430         Otherwise `s p' of f and F will stomp on each other's value.
26431         (Bug#20916)
26433 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
26435         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
26436         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
26438 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
26440         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
26441         as additional guess.
26443         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
26444         to a string.
26446 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
26448         apropos-library quoting fix
26449         * lisp/apropos.el (apropos-library): Quote library consistently
26450         with the rest of the quoting used by apropos.
26452         Clarify interpreter-mode-alist doc
26453         * lisp/files.el (interpreter-mode-alist):
26454         Reword to avoid confusing quoting that wasn't working anyway.
26456 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
26458         Sync with Tramp 2.2.12
26459         * doc/misc/trampver.texi:
26460         * lisp/net/trampver.el: Update release number.
26461         * test/automated/tramp-tests.el (tramp-test13-make-directory):
26462         Fix cleanup.
26464 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
26466         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
26468 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
26470         Bind grep-highlight-matches around the rgrep call
26471         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
26472         around the rgrep call (bug#20728).
26474         Put "--color" before the other options in grep-command
26475         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
26476         before the other options in grep-command (bug#20912).
26478         Add --color Grep option to the command dynamically
26479         * lisp/progmodes/grep.el (grep-template, grep-find-template):
26480         Update the description for <C>.  (Bug#20728)
26481         (grep-compute-defaults): Don't add the --color option to
26482         grep-options.  Only add it to grep-command.
26483         (grep-expand-keywords): Expand the env value opts into <C>.
26484         (grep-expand-template): Replace cf in the env with the opts list,
26485         that can include -i and --color.
26486         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
26487         "--color=always" from the template, because we don't have to.
26489 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
26491         cl-extra fixes for most-negative-fixnum
26492         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
26493         Don't mishandle an argument equal to most-negative-fixnum,
26494         whose absolute value equals itself.
26495         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
26497         Initialize cl--gensym-counter to 0
26498         Previously it was initialized to a random value, which made it
26499         harder to reproduce earlier Emacs runs.  The need for a random
26500         value went away when Emacs introduced and used the #: syntax for
26501         uninterned symbols (Bug#20862).
26502         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
26503         Document that cl--gensym-counter now starts with 0.
26504         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
26505         (cl--random-time): Move to near only remaining use.
26506         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
26508         Improve docstring for macroexp-let2
26509         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
26510         Improve as per suggestion by RMS in:
26511         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
26512         Also, rename args to match new doc string.
26514 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
26516         Fix VC test suite on MS-Windows
26517         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
26518         always starts with 3 slashes after the colon.
26519         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
26520         'w32-application-type' to invoke CVS on MS-Windows with properly
26521         formatted CVSROOT directory name.
26523         Add a new function w32-application-type
26524         * src/w32proc.c (Fw32_application_type): New function.
26526         Avoid error in TLS connections due to incorrect format
26527         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
26528         the call to 'error', instead of the unsupported %u.  Reported by
26529         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
26531 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
26533         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
26535 2015-06-26  Leo Liu  <sdl.web@gmail.com>
26537         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
26538         `with-output-to-string' in elisp.
26540         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
26541         with-output-to-string".
26542         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
26544 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
26546         Minor corrections in ELisp manual
26547         * doc/lispref/nonascii.texi (Character Properties): Correct
26548         inaccuracies in description of values of the Unicode properties.
26550         Fix invisible mouse pointers on Windows.
26551         * src/w32fns.c: Include windowsx.h.
26552         (w32_wnd_proc): If the mouse moved and the mouse pointer is
26553         invisible, make it visible again even when the main (Lisp)
26554         thread is busy.
26555         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
26556         garbaging the frame have the input thread call SetCursor.
26558 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
26560         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
26561         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
26562         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
26563         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
26564         (w32_toggle_invisible_pointer): New function.
26565         (w32_create_terminal): Add w32_toggle_invisible_pointer as
26566         toggle_invisible_pointer_hook for this terminal.
26568 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
26570         Doc fix for deletion commands
26571         'delete-char' does not respect the value of 'delete-active-region'.
26572         * doc/emacs/killing.texi (Deletion):
26573         Fix documentation for some single-char deletion commands.
26575         * doc/emacs/help.texi (Apropos):
26576         Improve documentation of 'apropos-do-all'.
26578         * doc/emacs/help.texi (Help Summary):
26579         Improve documentation of 'describe-mode'.
26581 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
26583         Fix submake dependency bug with .h files
26584         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
26585         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
26586         before the submake in $(libsrc) would spin off a subsubmake
26587         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
26589 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
26591         * lisp/character-fold.el (character-fold-table): Reuse `table'.
26593 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
26595         Translate undisplayable ‘ to `
26596         * doc/lispref/help.texi (Keys in Documentation):
26597         * lisp/international/mule-cmds.el (set-locale-environment):
26598         * lisp/term/w32console.el (terminal-init-w32console):
26599         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
26600         If ‘ is not displayable, transliterate it to `, not to '.  See:
26601         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
26603         Fix C99 incompatibilities in Cairo code
26604         * src/image.c (xpm_load) [USE_CAIRO]:
26605         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
26606         Fix pointer signedness problem.
26608 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
26610         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
26611         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
26612         `with-output-to-string' should have the same indent as `progn'.
26613         This is in line with the declaration of `with-output-to-string'.
26615 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
26617         Get ‘./configure; make -C src emacs’ to work
26618         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
26619         * lib-src/Makefile.in (../lib/libgnu.a):
26620         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
26622 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
26624         Fix GC bugs --with-wide-int and Qnil == 0
26625         Use the same alignment for the !USE_LSB_TAG case as for the
26626         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
26627         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
26628         once we changed the representation of symbols so that Qnil == 0.
26629         Problem reported by Eli Zaretskii (Bug#20862).
26630         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
26631         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
26632         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
26633         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
26634         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
26635         This optimization in the !USE_LSB_TAG case is no longer valid when
26636         symbols are represented via offsets.  Change the only use to
26637         assume that pointers might hide in objects.
26638         * src/lisp.h (alignas) [!USE_LSB_TAG]:
26639         Require support in this case, too.
26640         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
26641         This is OK, because the !USE_LSB_TAG case now applies only when
26642         Lisp_Object is wider than void *, so there's no longer any need
26643         to shift the offset.  Not shifting the offset means that
26644         symbol representations have the same alignment as pointers,
26645         which the GC assumes.
26647 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
26649         * doc/lispintro/emacs-lisp-intro.texi (Data types):
26650         Improve documentation of 'substring'.
26652 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
26654         * lisp/character-fold.el (character-fold-table): Fix table generation.
26656 2015-06-24  Glenn Morris  <rgm@gnu.org>
26658         * nextstep/Makefile.in (all): Make it the first target.
26659         (../src/emacs${EXEEXT}): Add rule for making it.
26661 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
26663         * etc/NEWS: Fix mention to old function name.
26665         * lisp/character-fold.el: New file (Bug#20887)
26666         (character-fold-to-regexp): New function.
26667         * lisp/replace.el (replace-search): Check value of
26668         `character-fold-search'.
26669         * lisp/isearch.el: Move character-folding code to
26670         character-fold.el
26671         (isearch-toggle-character-fold): New command.
26672         (isearch-mode-map): Bind it to "\M-sf".
26673         (isearch-mode): Check value of `character-fold-search'.
26675 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
26677         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
26678         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
26679         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
26681         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
26682         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
26684 2015-06-24  Glenn Morris  <rgm@gnu.org>
26686         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
26688 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
26690         lisp/gnus/nnmaildir.el: Silence lexical warnings
26691         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
26692         functional style.
26693         (nnmaildir--update-nov): Remove unused var `numdir'.
26694         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
26695         (nnmaildir-request-group, nnmaildir-request-create-group)
26696         (nnmaildir-request-post, nnmaildir-request-move-article)
26697         (nnmaildir-request-accept-article, nnmaildir-active-number):
26698         Mark unused args.
26699         (nnmaildir-get-new-mail, nnmaildir-group-alist)
26700         (nnmaildir-active-file): Declare.
26701         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
26702         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
26703         `mark', `end', `new-mark', and `mark-sym'.
26704         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
26705         `nlist2'.
26706         (nnmaildir-request-expire-articles):
26707         Remove unused vars `article', `stop' and `nlist2'.
26708         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
26709         `end'.  Use nnmaildir--article when dyn-binding is needed.
26710         Give the value directly in the `let' for `del-mark', `del-action',
26711         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
26712         (nnmaildir-close-server): Declare those local vars that need to be
26713         dyn-bound.
26715 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
26717         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
26719         Port selection info fix to clang
26720         * src/keyboard.h (kbd_buffer_store_event_hold):
26721         Don't assume C11 semantics for alignof (Bug#20756).
26723         Fix bug that munged selection info
26724         On some optimizing C compilers, copying a structure did not
26725         copy the padding bytes between elements, and the type punning
26726         between struct input_data and struct selection_input_data did
26727         not work.  Change the C code to use a proper union type instead.
26728         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
26729         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
26730         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
26731         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
26732         (mark_kboards):
26733         Use union buffered_input_event, not struct input_event.
26734         (clear_event, deliver_input_available_signal, process_special_events):
26735         Remove unnecessary forward decls.
26736         (kbd_buffer_store_buffered_event): New function, mostly just the
26737         old kbd_buffer_store_event_hold, except its argument is of type
26738         union buffered_input_event, not struct input_event.
26739         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
26740         not needed otherwise.  Argument is now of type
26741         struct selection_input_event *, not struct input_event *.
26742         All callers changed.
26743         (clear_event): Arg is now of type union buffered_input_event *,
26744         not struct input_event *.  All callers changed.
26745         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
26746         (union buffered_input_event): New type.
26747         (kbd_buffer_store_event_hold): Now an inline function,
26748         defined here.
26749         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
26750         (struct input_event): Use it.
26751         * src/xselect.c (struct selection_event_queue):
26752         Make elements be of type struct selection_input_event,
26753         not struct input_event.
26754         (selection_input_event_equal): New static function.
26755         (x_queue_event): Use it.
26756         (x_queue_event, x_decline_selection_request)
26757         (x_selection_current_request, x_reply_selection_request)
26758         (x_handle_selection_request, x_handle_selection_clear)
26759         (x_handle_selection_event): Use struct selection_input_event,
26760         not struct input_event.  All callers changed.
26761         (x_convert_selection): Omit unused first arg.  All callers changed.
26762         (Fx_disown_selection_internal): Omit unnecessary union.
26763         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
26764         rather than rolling our own equivalent.  Prefer sie.kind when
26765         setting up that kind of structure.
26766         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
26767         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
26768         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
26769         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
26770         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
26771         (SELECTION_EVENT_TIME, x_handle_selection_event):
26772         Arg is now of type struct selection_input_event *)
26773         not struct input_event *.  All callers changed.
26775 2015-06-23  Glenn Morris  <rgm@gnu.org>
26777         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
26779 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
26781         * lisp/isearch.el: Fold many unicode characters to ASCII.
26782         (isearch-character-fold-search, isearch--character-fold-extras)
26783         (isearch--character-fold-table): New variable.
26784         (isearch--character-folded-regexp): New function.
26785         (isearch-search-fun-default): Use them.
26786         * lisp/replace.el (replace-character-fold): New variable.
26787         (replace-search): Use it.
26788         * etc/NEWS: Document it.
26790 2015-06-23  Glenn Morris  <rgm@gnu.org>
26792         Check for an input event before showing a dialog box.  (Bug#20813)
26793         * lisp/subr.el (y-or-n-p):
26794         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
26795         as last-nonmenu-event.
26797 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
26799         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
26800         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
26801         (switch-to-prev-buffer, switch-to-next-buffer): Respect
26802         switch-to-visible-buffer independent of the windows history.
26804 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
26806         * src/keyboard.c (last_timer_event): Remove unused var.
26808 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
26810         * test/automated/package-test.el (package-test-update-listing):
26811         Fix test.
26813 2015-06-23  Glenn Morris  <rgm@gnu.org>
26815         Revert 2014-06-25 nextstep/Makefile change.
26816         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
26817         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
26818         not as an order-only prerequisite.
26820         * configure.ac (--with-ns): Enable by default on OS X.
26822 2015-06-23  Leo Liu  <sdl.web@gmail.com>
26824         Fix shell-for/backward-command to exclude spaces
26825         * lisp/shell.el (shell-forward-command, shell-backward-command):
26826           Handle the 'move case from re-search-forward/backward.
26827           fixes debbugs:20873
26829 2015-06-22  Juri Linkov  <juri@linkov.net>
26831         * lisp/replace.el (query-replace-read-from): Add separator to
26832         the local binding of text-property-default-nonsticky.  (Bug#20690)
26834         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
26835         (Bug#20785)
26837 2015-06-22  Ken Brown  <kbrown@cornell.edu>
26839         Enable CPU profiling on Cygwin
26840         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
26841         change that undefined this.
26842         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
26843         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
26844           Cygwin.
26846         Improve diagnostics of profiler-cpu-start
26847         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
26848         return -1 if the sampling interval is invalid.
26849         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
26850         fails.  (Bug#20843)
26852 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
26854         * lisp/emacs-lisp/package.el: Exclude packages by name.
26855         (package-hidden-regexps): New variable.
26856         (package-menu--refresh): Use it.
26857         (package-menu-hide-package): New command.
26859         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
26861 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
26863         Fix debug-timer-check on systems without HAVE_TIMERFD
26864         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
26865         the expired timers, since wait_reading_process_output doesn't.
26866         (debug_timer_callback): Enlarge the tolerance to 20 msec.
26868         Fix RCS crashes in vc-test
26869         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
26870         ports of 'ci' on MS-Windows by always passing the -t- switch.
26872 2015-06-22  Glenn Morris  <rgm@gnu.org>
26874         * doc/emacs/package.texi (Packages):
26875         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
26877         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
26879 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
26881         Port tests to help-quote-translation
26882         * test/automated/ert-x-tests.el (ert-test-describe-test):
26883         * test/automated/package-test.el (package-test-describe-package)
26884         (package-test-signed): Allow straight quotes, too.
26886 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
26888         Make find-function-on-key use the current window
26889         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
26890         Extract from `find-function-on-key', add a second argument.
26891         (find-function-on-key): Use it (bug#19679).
26892         (find-function-on-key-other-window)
26893         (find-function-on-key-other-frame): New commands.
26895 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
26897         Revert "Define `map-elt' as a generalized variable"
26898         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
26900 2015-06-21  Ken Brown  <kbrown@cornell.edu>
26902         Drop support for CPU profiling on Cygwin
26903         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
26904         (Bug#20843)
26906 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
26908         Fix some “nested” quoting confusion in doc strings
26909         * lisp/emacs-lisp/advice.el (ad-map-arglists):
26910         * lisp/kermit.el (kermit-clean-on):
26911         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
26912         * src/keyboard.c (Frecursive_edit):
26913         Use curved quotes when quoting text containing apostrophe,
26914         so that the apostrophe isn't curved in the output.
26916 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
26918         Define `map-elt' as a generalized variable
26919         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
26920         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
26921         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
26922         `setf' with `map-elt'.
26923         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
26925 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
26927         Improve error handling in tramp-adb.el
26928         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
26929         Improve error handling.
26931 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
26933         Reuse `alist-get' in map.el
26934         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
26935         elements.
26937 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
26939         Fix bytecomp-tests--warnings when $TMPDIR has a long name
26940         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
26941         Allow the warning to begin on the 3rd, not only 2nd line, which
26942         happens if temporary-file-directory has a very long name.
26944         Expect 2 icalendar tests to fail on MS-Windows
26945         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
26946         (icalendar-real-world): Make them expected failures on MS-Windows.
26948 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
26950         Improve port of settings UI to older displays
26951         * lisp/cus-start.el (standard): Don't assume curved quotes are
26952         easily distinguishable when users are tinkering with a setting
26953         that affects how curved quotes are generated.
26955         Fix quoting in electric-quote-mode doc string
26956         * lisp/electric.el (electric-quote-mode): Fix quoting.
26957         This is a fallout from the recent change introducing
26958         ‘help-quote-translation’.
26960         Spelling fix
26962         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
26964         * src/doc.c (syms_of_doc): Remove unused symbols.
26966 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
26968         * lisp/window.el (window-state-put): Undedicate target window
26969         before putting STATE into it.  (Bug#20848)
26971 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
26973         Merge from origin/emacs-24
26974         a5e6f33 Fixes: debbugs:20832
26975         b9f02cf Fixes: debbugs:20832
26977 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
26979         Fix file-in-directory-p when the directory is UNC
26980         * lisp/files.el (file-in-directory-p): Support files and
26981         directories that begin with "//".  (Bug#20844)
26983 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
26985         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
26986         in the minibuffer.  (Bug#20832)
26988 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
26990         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
26991         for adding new todo file is empty but modified.  (Bug#20832)
26993 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
26995         (filepos-to-bufferpos): Further tweaks to the utf-16 code
26996         * lisp/international/mule-util.el (filepos-to-bufferpos):
26997         Fix typo.  Move non-exact check to the utf-16 branch (the only one
26998         affected).  Don't use byte-to-position for the utf-16 case.
27000 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
27002         Minor fixes in filepos-to-bufferpos
27003         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
27004         test for utf-8-emacs.  Exempt single-byte encodings from the
27005         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
27006         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
27007         UTF-16 encoded files for CR-LF EOLs.
27009 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
27011         Improve the optional translation of quotes
27012         Fix several problems with the recently-added custom variable
27013         help-quote-translation where the code would quote inconsistently
27014         in help buffers.  Add support for quoting 'like this', which
27015         is common in other GNU programs in ASCII environments.  Change
27016         help-quote-translation to use more mnemonic values: values are now the
27017         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
27018         traditional Emacs help-buffer quoting style `like this'.  Change the
27019         default behavior of substitute-command-keys to match what's done in
27020         set-locale-environment, i.e., quote ‘like this’ if displayable,
27021         'like this' otherwise.
27022         * doc/lispref/help.texi (Keys in Documentation): Document
27023         new behavior of substitute-command-keys, and document
27024         help-quote-translation.
27025         * doc/lispref/tips.texi (Documentation Tips):
27026         Mention the effect of help-quote-translation.
27027         * etc/NEWS: Mention new behavior of substitute-command-keys,
27028         and merge help-quote-translation news into it.
27029         When talking about doc strings, mention new ways to type quotes.
27030         * lisp/cedet/mode-local.el (overload-docstring-extension):
27031         Revert my recent change to this function, which shouldn't be
27032         needed as the result is a doc string.
27033         * lisp/cedet/mode-local.el (mode-local-print-binding)
27034         (mode-local-describe-bindings-2):
27035         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
27036         * lisp/cus-theme.el (describe-theme-1):
27037         * lisp/descr-text.el (describe-text-properties-1, describe-char):
27038         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
27039         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
27040         (eieio-help-constructor):
27041         * lisp/emacs-lisp/package.el (describe-package-1):
27042         * lisp/faces.el (describe-face):
27043         * lisp/help-fns.el (help-fns--key-bindings)
27044         (help-fns--compiler-macro, help-fns--parent-mode)
27045         (help-fns--obsolete, help-fns--interactive-only)
27046         (describe-function-1, describe-variable):
27047         * lisp/help.el (describe-mode):
27048         Use substitute-command-keys to ensure a more-consistent quoting
27049         style in help buffers.
27050         * lisp/cus-start.el (standard):
27051         Document new help-quote-translation behavior.
27052         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
27053         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
27054         (help-xref-url-regexp):
27055         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
27056         * lisp/wid-edit.el (widget-documentation-link-regexp):
27057         Also match 'foo', in case we're in a help buffer generated when
27058         help-quote-translation is ?'.
27059         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
27060         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
27061         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
27062         (Fsubstitute_command_keys): Document and implement new behavior.
27063         (Vhelp_quote_translation): Document new behavior.
27065 2015-06-18  Glenn Morris  <rgm@gnu.org>
27067         * lisp/cus-start.el (help-quote-translation): Add :version.
27069         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
27071 2015-06-18  Alan Mackenzie  <acm@muc.de>
27073         Make translation of quotes to curly in doc strings optional.
27074         * src/doc.c (traditional, prefer-unicode): New symbols.
27075         (help-quote-translation): New variable.
27076         (Fsubstitute_command_keys): Make translation of quotes dependent on
27077         `help-quote-translation'; also translate curly quotes back to ASCII
27078         ones.
27079         * lisp/cus-start.el (top-level): Add a customization entry for
27080         `help-quote-translation'.
27082 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
27084         * lisp/emacs-lisp/package.el: Don't always propagate async errors
27085         (package--with-work-buffer-async): Only propagate the error if the
27086         callback returns non-nil.
27087         (package--download-one-archive): Return nil on the signature
27088         checking callback if we accept unsigned.
27089         (package--download-and-read-archives): Return non-nil on the
27090         archive download callback.
27092 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
27094         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
27095         * src/nsfns.m (Fx_create_frame):
27096         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
27097         image_cache_refcount before first x_default_parameter call.
27099 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
27101         Improve and extend filepos-to-bufferpos
27102         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
27103         Don't barf if F returns nil for some argument.
27104         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
27105         that every encoding of type 'charset' is single-byte.
27107 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
27109         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
27110         Properly delete packages.  (Bug#20836)
27112 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
27114         Update data files from just-released Unicode 8.0
27115         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
27116         status.
27117         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
27118         * admin/unidata/BidiMirroring.txt:
27119         * admin/unidata/BidiBrackets.txt:
27120         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
27122 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
27124         Document curved quotes a bit better
27125         * doc/emacs/basic.texi (Inserting Text):
27126         Mention C-x 8.  Change example to use curved quote rather
27127         than infinity, as this lets us give more ways to do it.
27128         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
27129         and quotation marks.
27130         * doc/emacs/text.texi (Quotation Marks):
27131         * doc/lispref/tips.texi (Documentation Tips):
27132         Add "curly quotes" and "curved quotes" to the index.
27133         * doc/emacs/text.texi (Quotation Marks):
27134         Give the C-x 8 shorthands for curved quotes.
27135         Cross-reference to "Quotation Marks".
27137 2015-06-17  Daiki Ueno  <ueno@gnu.org>
27139         Add pinentry.el for better GnuPG integration
27140         * lisp/pinentry.el: New file.
27141         * etc/NEWS: Add entry about pinentry.el.
27142         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
27143         (Bug#20550)
27145 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
27147         * lisp/emacs-lisp/package.el: Slightly better error reporting.
27149 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
27151         (define-minor-mode): Use setq-default for :global minor modes
27152         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
27153         Use setq-default for :global minor modes (bug#20712).
27155 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
27157         Avoid infloop in redisplay with tall images
27158         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
27159         down near ZV.  (Bug#20808)
27160         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
27161         instead of CHARPOS.
27163 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
27165         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
27166         Fix error reporting.
27168         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
27170         * lisp/emacs-lisp/package.el: Revert buffer after any operation
27171         Call `package-menu--post-refresh' after any operation that changes
27172         the package database (`package-install' and `package-delete').  To
27173         avoid performance issues in large transactions, these functions
27174         add `post-refresh' to `post-command-hook' instead of calling it
27175         immediately.
27176         (package-menu--mark-or-notify-upgrades): New function.
27177         (list-packages): Add it to `package--post-download-archives-hook'.
27178         (package-menu--post-refresh): Lose the upgrade-checking code, add
27179         code to remove itself from `post-command-hook'.
27180         (package-install, package-delete): Add it to `post-command-hook'.
27181         (package-menu-execute): Don't call `package-menu--post-refresh'.
27183 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
27185         Add missing function xref-location-group for elisp-mode.
27186         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
27188 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
27190         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
27191         The behavior now matches the description in the manual.  (Bug#20783)
27193 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
27195         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
27197 2015-06-17  Glenn Morris  <rgm@gnu.org>
27199         Generate char-script-table from Unicode source.  (Bug#20789)
27200         * admin/unidata/Makefile.in (AWK): New, set by configure.
27201         (all): Add charscript.el.
27202         (blocks): New variable.
27203         (charscript.el, ${unidir}/charscript.el): New targets.
27204         (extraclean): Also remove generated charscript.el.
27205         * admin/unidata/blocks.awk: New script.
27206         * admin/unidata/Blocks.txt: New data file, from unicode.org.
27207         * lisp/international/characters.el: Load charscript.
27208         * src/Makefile.in (charscript): New variable.
27209         (${charscript}): New target.
27210         (${lispintdir}/characters.elc): Depend on charscript.elc.
27211         (temacs$(EXEEXT)): Depend on charscript.
27213         * lisp/international/characters.el (char-script-table): Tweak
27214         some ranges to better match the source.  (Bug#20789#17)
27216         Remove "no-byte-compile: t" from a few files.
27217         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
27218         * lisp/obsolete/patcomp.el: No reason not to compile these.
27220 2015-06-16  Glenn Morris  <rgm@gnu.org>
27222         Fix some typos in copied Unicode data.  (Bug#20789)
27223         * lisp/international/characters.el (char-script-table):
27224         * lisp/international/fontset.el (script-representative-chars)
27225         (setup-default-fontset): Fix typos.
27227         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
27228         Don't print filename twice (it's in the prefix now).
27230         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
27231         No longer needed.
27233         Address a compilation warning.
27234         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
27235         Replace 't' with '_' in pcase.
27237         Address some check-declare warnings.
27238         * lisp/simple.el (tabulated-list-print):
27239         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
27240         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
27241         (ns-get-selection): Update declarations.
27243         Address some compilation warnings.
27244         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
27245         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
27246         Replace 't' with '_' in pcase.
27248         Address some compilation warnings.
27249         * lisp/face-remap.el (text-scale-adjust):
27250         * lisp/menu-bar.el (popup-menu-normalize-position):
27251         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
27252         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
27253         * lisp/emacs-lisp/generator.el (cps--transform-1):
27254         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
27255         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
27256         * lisp/progmodes/octave.el (octave-goto-function-definition)
27257         (octave-find-definition-default-filename):
27258         Replace 't' with '_' in pcase.
27260         * lisp/emacs-lisp/pcase.el (pcase--u1):
27261         Paper-over today's bootstrap failure.
27263 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
27265         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
27267         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
27269         Better confirmation message in `find-alternate-file' (Bug#20830)
27270         * lisp/files.el (find-alternate-file'): Improve the confirmation
27271         message to show the buffer name.
27273         Better docstring for null.  (Bug#20815)
27274         * src/data.c (null): Improves the docstring, saying what null returns
27275         when OBJECT is non-nil.
27277 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
27279         * lisp/net/newst-treeview.el: Use lexical-binding.
27281         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
27282         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
27283         New auxiliary function, extracted from filepos-to-bufferpos.
27284         Make sure it terminates.
27285         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
27286         Add support for the `exact' quality.
27288 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
27290         Identify feeds in newsticker treeview with :nt-feed property
27291         * lisp/net/newst-treeview.el:
27292         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
27294 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
27296         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
27297         (pcase--self-quoting-p): Floats aren't self-quoting.
27298         (pcase): Tweak docstring.
27299         (pcase--u1): Deprecate the t pattern.  Improve error detection for
27300         the nil pattern.
27301         (\`): Tweak docstring.  Signal an error for unrecognized cases.
27302         (bug#20784)
27304 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
27306         Fix infloop in filepos-to-bufferpos
27307         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
27308         offset calculation, and make it conditional on the eol-type of the
27309         file's encoding.  (Bug#20825)
27311 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
27313         Fix handling of image cache refcounts.  (Bug#20802)
27314         This backports Eli Zaretskii's solution of this problem for W32
27315         to X and NS.
27316         * src/nsfns.m (image_cache_refcount): Define unconditionally.
27317         (unwind_create_frame): If the image cache's reference count
27318         hasn't been updated yet, do that now.
27319         (Fx_create_frame): Set image_cache_refcount unconditionally.
27320         * src/xfns.c (image_cache_refcount): Define unconditionally.
27321         (unwind_create_frame): If the image cache's reference count
27322         hasn't been updated yet, do that now.
27323         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
27324         unconditionally.
27325         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
27326         X and NS.
27328 2015-06-16  Nils Ackermann  <nils@ackermath.info>
27330         Improve reftex-label-regexps default value
27331         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
27332         keyvals label regexp more strict to better cope with unbalanced
27333         brackets common in math documents.
27335 2015-06-16  Glenn Morris  <rgm@gnu.org>
27337         * doc/emacs/calendar.texi (Format of Diary File):
27338         Move "nonmarking" from here...
27339         (Displaying the Diary): ... to here.
27341         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
27342         Swap the order of these nodes.
27343         * doc/emacs/emacs.texi: Update detailed menu for the above change.
27345         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
27346         Update date of examples.
27347         (Diary, Format of Diary File): Move example from former to latter.
27348         Reduce duplication.
27350         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
27351         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
27352         Don't set no-byte-compile in the outputs.
27353         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
27355 2015-06-15  Glenn Morris  <rgm@gnu.org>
27357         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
27358         * doc/emacs/calendar.texi (Diary, Format of Diary File):
27359         Update for above diary-file change.
27361         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
27362         (apply-macro-to-region-lines): Use user-error.
27364         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
27365         (pages-directory-for-addresses): Doc fixes.
27367 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
27369         * lisp/info.el: Cleanup bytepos/charpos issues
27370         * lisp/international/mule-util.el: Use lexical-binding.
27371         (filepos-to-bufferpos): New function.
27372         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
27373         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
27374         (Info-read-subfile, Info-search): Use 0-based file positions.
27376         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
27377         (perl--syntax-exp-intro-keywords): New var.
27378         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
27379         (bug#20800).
27381 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
27383         Fix quoting when making derived mode docstring
27384         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
27385         Nest regexp-quote inside format, not the reverse.
27386         Problem reported by Artur Malabarba in:
27387         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
27389 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
27391         Fix current-iso639-language on MS-Windows
27392         * lisp/international/mule-cmds.el (set-locale-environment):
27393         Downcase the locale name before interning it.  This is so the
27394         'current-iso639-language' on MS-Windows matches the ':lang'
27395         property of font-spec objects.
27397         Limit Symbola usage some more
27398         * lisp/international/fontset.el (setup-default-fontset): Limit
27399         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
27400         (Bug#20727)
27402 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
27404         * lisp/emacs-lisp/map.el (map-let): Better docstring.
27406 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
27408         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
27409         (help-fns-test-funny-names): Spelling fixes.
27411 2015-06-14  Glenn Morris  <rgm@gnu.org>
27413         * lisp/version.el (emacs-repository-version-git): Demote errors.
27414         Check result is a hash.
27416 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
27418         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
27419         Catch errors that happen before going async.  (Bug#20809)
27421 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
27423         Another improvement of documentation of set-fontset-font
27424         * doc/lispref/display.texi (Fontsets): Say explicitly that
27425         CHARACTER can be a single codepoint.
27426         * src/fontset.c (Fset_fontset_font): Doc fix.
27428         Another improvement for symbol and punctuation characters
27429         * lisp/international/fontset.el (setup-default-fontset): Exclude
27430         from Symbola character ranges for symbols and punctuation covered
27431         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
27432         installed and where its coverage of symbols and punctuation is
27433         known to be good.  (Bug#20727)
27435 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
27437         Some generic support for multi-mode indentation.
27438         * lisp/progmodes/prog-mode.el (prog-indentation-context):
27439         New variable.
27440         (prog-first-column, prog-widen): New convenience functions.
27442 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
27444         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
27445         Don't assume that `tabulated-list-printer' will leave point at the
27446         end of the buffer.  (Bug#20810)
27448 2015-06-13  Glenn Morris  <rgm@gnu.org>
27450         Tweaks for getting repository version; a bit more like it was for bzr
27451         * lisp/version.el (emacs-repository-version-git)
27452         (emacs-repository--version-git-1): New functions,
27453         split from emacs-repository-get-version.
27454         (emacs-repository-get-version): Make the second argument meaningful.
27456         * lisp/startup.el (command-line-1): Inform if skipping relative
27457         file names due to deleted PWD.
27459         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
27460         when starup directory is missing.  (Bug#18851)
27461         (errno.h): Include it.
27463 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
27465         Better fix for documenting `X as "`X"
27466         Fix suggested by Stefan Monnier.
27467         * lisp/help-fns.el (help-fns--signature):
27468         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
27469         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
27470         Don't treat `X specially, as help-fns--signature now handles this.
27472 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
27474         Improve the default fontset when Symbola is not installed
27475         * lisp/international/fontset.el (setup-default-fontset): Only
27476         prepend Symbola and FreeMono font specs for symbols and
27477         punctuation; do not replace the default spec for them.  This
27478         should have better results when Symbola/FreeMono are not
27479         installed.  (Bug#20727)
27481         Improve documentation of ':lang' in font specs
27482         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
27483         use of the ':lang' property of the font spec.
27484         * doc/emacs/frames.texi (Fonts): Document the language names that
27485         can be in the STYLE part of XLFD.
27486         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
27487         property.
27489         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
27491         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
27493         Revert last change in fontset.el
27494         * lisp/international/fontset.el (setup-default-fontset): Revert
27495         the change "Configure Symbola font only if installed", since font
27496         search is evidently not yet set up when this function is called.
27497         (Bug#20727)
27499 2015-06-12  Glenn Morris  <rgm@gnu.org>
27501         Ensure early startup warnings are visible at the end.  (Bug#20792)
27502         * lisp/emacs-lisp/warnings.el (display-warning):
27503         If startup isn't complete, delay the warning.
27504         * lisp/startup.el (normal-top-level, command-line):
27505         Let display-warning automatically handle the needed delays.
27506         Run delayed-warnings-hook.
27508         * lisp/version.el (emacs-repository-get-version):
27509         Avoid calling external executable if possible.  (Bug#20799)
27511 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
27513         Document `X as "`X", not as "(` X)"
27514         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
27515         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
27517         * src/print.c (print_object): Minor simplification.
27519 2015-06-12  Glenn Morris  <rgm@gnu.org>
27521         * src/buffer.c (init_buffer): Add final newline to message.
27523 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
27525         Configure Symbola font only if installed
27526         * lisp/international/fontset.el (setup-default-fontset):
27527         Don't specify the Symbola font if it's not installed.
27528         Likewise for FreeMono.  (Bug#20727)
27530 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
27532         Configure Symbola font only for symbols and punctuation
27533         * lisp/international/fontset.el (setup-default-fontset): Leave
27534         only symbols and punctuation in the fontset setup for Symbola
27535         font; remove "Greek and Coptic" and "Cyrillic Supplement".
27536         (Bug#20798)
27538 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
27540         Fix crash in fontset-info
27541         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
27542         non-nil.
27544 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
27546         Port to Solaris 10 sparc + Sun C 5.13
27547         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
27548         Adjust to process.c change.
27549         * src/process.c (create_process): Declare volatile variables at
27550         top level of this function, so that they're less likely to be
27551         reused later in the function in the code executed by the vforked
27552         child.  Do not declare locals used only in the vforked child, as
27553         they might share memory with locals still live in the parent.
27554         Instead, use the same variables in the child as in the parent.
27555         This works around a subtle bug that causes a garbage collector
27556         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
27558 2015-06-12  Glenn Morris  <rgm@gnu.org>
27560         * lisp/startup.el (normal-top-level): Don't let *Messages* get
27561         a nil default-directory.
27563 2015-06-11  Glenn Morris  <rgm@gnu.org>
27565         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
27567         Some progress towards starting with PWD deleted.  (Bug#18851)
27568         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
27569         * lisp/startup.el (normal-top-level, command-line-1):
27570         * lisp/minibuffer.el (read-file-name-default):
27571         Handle default-directory being nil.
27573 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
27575         Fix "not a tty" bug on Solaris 10
27576         * configure.ac (PTY_OPEN): Define to plain 'open'
27577         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
27578         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
27579         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
27580         hosts that call grantpt which does its work via a setuid subcommand
27581         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
27582         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
27583         seems relevant in that case too.
27585 2015-06-11  Juri Linkov  <juri@linkov.net>
27587         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
27588         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
27589         (Bug#20785)
27591 2015-06-11  Glenn Morris  <rgm@gnu.org>
27593         * lisp/international/characters.el (char-script-table): Fix typo.
27595 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
27597         Fix quoting of help for functions with odd names
27598         While investigating Bug#20759, I discovered other quoting problems:
27599         C-h f mishandled characters like backslash and quote in function names.
27600         This fix changes the behavior so that 'C-h f pcase RET' now
27601         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
27602         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
27603         in src/lread.c's read1 function says that the backslash will be
27604         needed starting in Emacs 25, which implies that 'format' is
27605         correct and the old pcase documention was wrong to omit the backslash.
27606         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
27607         * lisp/help-fns.el (help-fns--signature):
27608         * lisp/help.el (help-add-fundoc-usage):
27609         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
27610         Use help--make-usage-docstring rather than formatting
27611         help-make-usage.
27612         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
27613         Return raw docstring.
27614         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
27615         raw docstring.  Take more care to distinguish raw from cooked dstrings.
27616         (describe-function-1): Let help-fns--signature substitute
27617         command keys.
27618         * lisp/help.el (help--docstring-quote): New function.
27619         (help-split-fundoc): Use it, to quote funny characters more
27620         systematically.
27621         (help--make-usage): Rename from help-make-usage, since this
27622         should be private.  Leave an obsolete alias for the old name.
27623         (help--make-usage-docstring): New function.
27624         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
27626 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
27628         * lisp/thingatpt.el (in-string-p): Revert last change,
27629         since in-string-p is not used in thingatpt.el but only from outside.
27630         Also, use lexical binding.
27632 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
27634         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
27635         * test/automated/let-alist.el (let-alist-cons): Test it.
27637 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
27639         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
27641 2015-06-10  Glenn Morris  <rgm@gnu.org>
27643         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
27645         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
27646         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
27647         * admin/gitmerge.el (gitmerge-commit-message):
27648         Exclude "skipped" messages from ChangeLog once again.
27650         Slight namespace cleanup for thingatpt.el.
27651         * lisp/thingatpt.el (thing-at-point--in-string-p)
27652         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
27653         (thing-at-point--read-from-whole-string): Rename from
27654         old versions without "thing-at-point--" prefix.
27655         Keep old versions as obsolete aliases.  Update all uses.
27657         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
27658         Move requiring of finder from here...
27659         (checkdoc-package-keywords): ... to here.
27661         Use 'user-error' in a few calendar files.
27662         * lisp/calendar/appt.el (appt-add):
27663         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
27664         (calendar-generate):
27665         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
27666         Replace 'error' with 'user-error'.
27668         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
27670         * lisp/files-x.el (add-file-local-variable):
27671         Special-case 'lexical-binding'.  (Bug#20641)
27673         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
27674         No longer autoload.
27675         * doc/misc/autotype.texi (Executables):
27676         Undocument executable-self-display.
27678         * lisp/progmodes/executable.el (executable-self-display):
27679         Use non-obsolete tail syntax.  (Bug#20779)
27680         (executable-self-display): Doc update.
27682 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
27684         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
27685         (finder-known-keywords): Silence byte-compiler.
27687 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
27689         * lisp/simple.el (eval-expression): Macroexpand before evaluating
27690         (bug#20730).
27692         * lisp/progmodes/sh-script.el: Better handle nested quotes.
27693         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
27694         (sh-font-lock-quoted-subshell): Make sure double quotes within single
27695         quotes don't mistakenly end prematurely the surrounding string.
27697         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
27699 2015-06-09  Glenn Morris  <rgm@gnu.org>
27701         * test/automated/Makefile.in (ELFILES): Sort.
27703         * Makefile.in (SUBDIR_MAKEFILES):
27704         * lwlib/Makefile.in (WARN_CFLAGS):
27705         Use built-in Make functions rather than echo+sed.
27707 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
27709         Update char-script-table
27710         * lisp/international/characters.el (char-script-table): Update
27711         from Unicode 8.0 Draft.
27713         Improve font selection for punctuation and other symbols
27714         * src/fontset.c (face_for_char): If the character's script is
27715         'symbol', and the font used for ASCII face has a glyph for it, use
27716         the font for the ASCII face instead of searching the fontsets.
27717         This comes instead of NS-specific code that used the current
27718         face's font instead, which is now disabled due to undesirable
27719         consequences.  (Bug#20727)
27721 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
27723         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
27724         Skip past `#' to find BEG (bug#20771).
27725         * test/automated/elisp-mode-tests.el
27726         (elisp-completes-functions-after-hash-quote): New test.
27728 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
27730         Fix compilation warning/error in --without-x builds
27731         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
27732         code on HAVE_WINDOW_SYSTEM.
27734         Improve the default fontset wrt symbols
27735         * lisp/international/fontset.el (setup-default-fontset): Better
27736         setup of fontset-default for symbols: use Symbola and FreeMono.
27737         (Bug#20727)
27739 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
27741         Add new command checkdoc-package-keywords
27742         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
27743         New defcustom.
27744         (checkdoc-list-of-strings-p): Add doc.
27745         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
27746         non-nil, call `checkdoc-package-keywords'.
27747         (checkdoc-get-keywords): New defun.
27748         (checkdoc-package-keywords): New command.  Warns if the current file
27749         has package.el-style keywords that aren't in `finder-known-keywords'.
27750         * etc/NEWS: Add entry.
27752 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
27754         Avoid crashes when key-binding is called from a timer
27755         * src/keymap.c (Fkey_binding): Don't segfault if called with an
27756         empty vector as KEY.  (Bug#20705)
27758         Fix a thinko in arc-mode.el
27759         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
27760         non-Zip64 case.  (Bug#20769)
27762 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
27764         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
27766 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
27768         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
27769         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
27770         "*warn*", print the warning to the standard output.  (bug#20754)
27772 2015-06-07  Glenn Morris  <rgm@gnu.org>
27774         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
27776         * src/font.c (syms_of_font) <font-log>: Doc fix.
27778         Remove the obsolete leading "*" from some C doc strings.
27779         * src/coding.c (syms_of_coding):
27780         * src/font.c (syms_of_font): Remove leading "*" from docs.
27781         * lisp/cus-start.el (enable-character-translation): Add it.
27783 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
27785         Move gen_origin from program to data
27786         That way, 'make change-history' needs to change only ChangeLog.2,
27787         instead of having to change two files.
27788         * ChangeLog.2: Add commit info for range that this file covers.
27789         * Makefile.in (new_commit_regexp): New macro.
27790         (change-history-nocommit): Simplify, by putting what used to be
27791         the gen_origin value into the data (ChangeLog.2) rather than
27792         into the program (gitlog-to-emacslog).
27793         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
27794         the input file (e.g., ChangeLog.2) rather than by having a
27795         constant in the program.  Substitute it into the output.
27797 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
27799         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
27800         function name (bug#20759).
27802 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
27804         Adapt 'struct timespec' to next release of MinGW runtime
27805         * nt/inc/ms-w32.h (struct timespec): Don't declare if
27806         __struct_timespec_defined is defined.
27808 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
27810         Merge from gnulib
27811         This incorporates:
27812         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
27813         2015-06-05 stdio: Don't redefine gets when using C++
27814         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
27815         2015-06-02 file-has-acl: fix build on Mac OS X 10
27816         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
27817         2015-06-01 pthread_sigmask: discount system version if a simple macro
27818         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
27819         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
27820         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
27821         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
27822         * lib/gnulib.mk: Regenerate.
27824 2015-06-06  Juri Linkov  <juri@linkov.net>
27826         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
27827         before calling grep-compute-defaults because now it affects the
27828         command lines computed in grep-compute-defaults.  (Bug#20728)
27830 2015-06-06  Glenn Morris  <rgm@gnu.org>
27832         Address some compilation warnings.
27833         * lisp/international/mule-cmds.el (w32-get-console-codepage)
27834         (w32-get-console-output-codepage):
27835         * lisp/progmodes/elisp-mode.el (xref-collect-references):
27836         * lisp/version.el (cairo-version-string): Declare.
27837         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
27839 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
27841         Fix display when a font claims large values of ascent and descent
27842         This fixes bug#20628.
27843         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
27844         coordinate of a hollow cursor glyph when the original glyph's
27845         ascent is too small.
27846         (get_font_ascent_descent, normal_char_ascent_descent)
27847         (normal_char_height): New functions.
27848         (handle_single_display_spec, append_space_for_newline)
27849         (calc_pixel_width_or_height, produce_stretch_glyph)
27850         (calc_line_height_property): Use normal_char_ascent_descent and
27851         normal_char_height.
27852         (x_produce_glyphs): When font-global values of ascent and descent
27853         are too large, use per-character glyph metrics instead, if
27854         possible.  But don't allow the glyph row's ascent and descent
27855         values become smaller than the values from the metrics of the
27856         font's "normal" character.
27857         * src/xftfont.c (xftfont_draw):
27858         * src/w32font.c (w32font_draw): Correct the values of ascent and
27859         descent used to draw glyphless characters' hex code in a box.
27860         * src/xterm.c (x_draw_glyph_string_background):
27861         * src/xdisp.c (x_produce_glyphs):
27862         * src/w32term.c (x_draw_glyph_string_background):
27863         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
27864         to detect fonts whose global ascent and descent values are too
27865         large to be used in layout decision, and redraw the background
27866         when that happens.
27867         * src/dispextern.h (FONT_TOO_HIGH): New macro.
27868         (get_font_ascent_descent): Add prototype.
27869         * src/xterm.c (x_new_font):
27870         * src/w32term.c (x_new_font):
27871         * src/nsterm.m (x_new_font):
27872         * src/font.c (font_open_entity):
27873         * src/composite.c (composition_gstring_width):
27874         Use get_font_ascent_descent to obtain reasonable values for ascent
27875         and descent of a font.
27877 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
27879         Add assertion in adjust_point_for_property
27880         * src/keyboard.c (adjust_point_for_property): Add eassert for
27881         current buffer being shown in selected window.
27883 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
27885         Replace uses of in-string-p; make it obsolete
27886         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
27887         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
27889 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
27891         Fix Dired display of an explicit list of files by ls-lisp.el
27892         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
27893         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
27894         correct for when displaying individual files separately, not as
27895         part of listing a directory, in which case these values are not
27896         recomputed by 'ls-lisp-insert-directory', but used verbatim.
27898         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
27900 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
27902         Do not adjust point in a non-selected window
27903         * src/keyboard.c (command_loop_1): Do not adjust point when
27904         current buffer is not shown in selected window (Bug#20590).
27906         * etc/DEBUG: Mention 'maybe_call_debugger'
27908 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
27910         Fix a unit test for map.el
27911         * test/automated/map-tests.el (test-map-let): Fix the test to work
27912         with the new syntax of `map-let'.
27914         * lisp/emacs-lisp/map.el (map-let): Better docstring.
27916         Better syntax for the map pcase pattern
27917         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
27918         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
27920         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
27922         Fix a byte-compiler error in map-put and map-delete
27923         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
27924         called with a symbol.
27926 2015-06-05  Glenn Morris  <rgm@gnu.org>
27928         * admin/gitmerge.el (gitmerge-commit-message):
27929         Revert to including "skipped" messages in ChangeLog once again.
27931 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
27933         Use string> instead of equiv lambda with string<
27934         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
27935         lambda with string<.
27937 2015-06-05  Glenn Morris  <rgm@gnu.org>
27939         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
27940         (map--delete-array): Fix typo.
27942         * test/automated/map-tests.el: Replace "assert" with "should".
27944         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
27945         (SUBDIRS_REL): Derive from SUBDIRS.
27947         Tweak some build messages.
27948         * lisp/Makefile.in ($(lisp)/loaddefs.el):
27949         * lisp/cus-dep.el (custom-make-dependencies):
27950         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
27951         * lisp/international/titdic-cnv.el (batch-titdic-convert):
27952         Don't say how to compile.
27954 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
27956         Omit U+0332 COMBINING LOW LINE in previous change
27957         It turns out that it does not work on Ubuntu 15.04.
27959         Fix transliteration of Bahá'í months
27960         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
27961         Improve quality of Latin transliteration of Bahá'í month names.
27963         Fix curved quotes in a few places
27964         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
27965         The strings in question are not doc strings, so this partially
27966         undoes the recent change that assumed they were doc strings.
27967         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
27968         * lisp/info.el (Info-finder-find-node):
27969         Use curved quotes.
27970         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
27971         Also allow curved quotes in doc strings.
27973 2015-06-04  Glenn Morris  <rgm@gnu.org>
27975         * lisp/Makefile.in (AM_V_at): Add missing definition.
27977         * lisp/Makefile.in: Quieten output a bit.
27978         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
27979         Don't echo directories, since the commands we invoke print them.
27981         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
27982         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
27983         (SUBDIRS_SUBDIRS): New variables.
27984         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
27985         Remove.
27986         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
27987         (update-subdirs, compile-main, compile-clean):
27988         Replace "setwins" usage with new "SUBDIRS" variables.
27990         * lisp/vc/compare-w.el (compare-windows-get-window-function):
27991         Fix :version tag.
27993 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
27995         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
27997         Undo removal of x_clear_area call on expose for GTK3 or cairo
27998         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
27999         Clear exposed area.  (Bug#20677)
28001 2015-06-04  Glenn Morris  <rgm@gnu.org>
28003         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
28005         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
28007         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
28008         Rename from quail-lao-update-translation, since lao.el defines that.
28010 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
28012         Handle new-style advice in find-funct
28013         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
28014         Handle new-style advice.  Return the symbol's function definition.
28015         (Bug#20718)
28016         (find-function-library): Update accordingly.
28018 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
28020         Merge branch 'map'
28022         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
28024         Add new function string-greaterp
28025         * lisp/subr.el (string-greaterp): New function.  Also aliased to
28026         `string>'.
28027         * test/automated/subr-tests.el (string-comparison-test): Add unit
28028         tests for `string>'and `string<'.
28029         * src/fns.c (string-lessp): Better docstring.
28031 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
28033         Fix timezone-related functions on MS-Windows
28034         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
28035         'xputenv', even if no reallocation of tzvalbuf was necessary.
28036         This fixes a bug in timezone-related functions on MS-Windows.
28037         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
28039 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
28041         Don't pass raw directory name to 'error'
28042         * lisp/files.el (basic-save-buffer-2): Avoid format error if
28043         a directory name contains a string like "%s".
28045 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
28047         Override 'grep --color=always'
28048         * lisp/progmodes/xref.el (xref-collect-matches):
28049         Override --color=always in grep-find-template.
28051 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
28053         Fix error introduced recently in file-notify-tests.el
28054         * test/automated/file-notify-tests.el
28055         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
28056         (file-notify--deftest-remote): Revert previous patch, not
28057         necessary anymore.
28059 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
28061         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
28062         Starting from a display string after a newline, point went to the
28063         previous line.  Also, fix an inadvertent use of a buffer position
28064         with FETCH_BYTE.  (Bug#20701)
28066 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
28068         Instrument file-notify-test.el in order to catch hydra error
28069         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
28070         Wrap body by `ignore-case', in order to trap non-local errors.
28072 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28074         Undo previous changes in non-toolkit scroll bar drawing
28075         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
28076         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
28078 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
28080         * .gitignore: Also ignore doc/*/*/*.html and .ps.
28082         Support quotes 'like this' in info files
28083         This is possible when 'makeinfo --disable-encoding' is used
28084         in Texinfo 5.
28085         * lisp/calc/calc-help.el (calc-describe-thing):
28086         * lisp/gnus/gnus-art.el (gnus-button-alist):
28087         * lisp/info.el (Info-find-index-name):
28088         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
28089         Also support quotes 'like this'.
28090         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
28091         * lisp/finder.el (finder-font-lock-keywords): Remove var that
28092         hasn't been used in years, instead of bothering to fix its quoting.
28094 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
28096         * .gitignore: Remove !test/etags/html-src/*.html.
28097         It's no longer needed, since *.html was removed.  Sort.
28099 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
28101         Restore <D> instead of '.' in grep-find-template
28102         * lisp/cedet/semantic/symref/grep.el
28103         (semantic-symref-grep-use-template): Update a comment.
28104         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
28105         instead of '.' in grep-find-template (bug#20719).
28106         (rgrep): Pass nil as the directory to rgrep-default-command.
28107         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
28108         default value for DIR.
28109         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
28110         workaround.
28112 2015-06-02  Glenn Morris  <rgm@gnu.org>
28114         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
28116         * configure.ac (emacs_config_features): Add Cairo.
28118         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
28120 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
28122         Ensure that autorevert works for remote files in file-notify-tests.el
28123         * test/automated/file-notify-tests.el (file-notify--test-desc):
28124         New defvar.
28125         (file-notify--test-remote-enabled)
28126         (file-notify-test00-availability, file-notify-test01-add-watch)
28127         (file-notify-test02-events): Use it.
28128         (file-notify--test-event-test): Check proper descriptor.
28129         (file-notify-test03-autorevert): Ensure that
28130         `visited-file-modtime' has changed.  (Bug#20392)
28132 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
28134         Add a pcase pattern for maps and `map-let' based on it
28135         * lisp/emacs-lisp/map.el (map-let): New macro.
28136         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
28137         * test/automated/map-tests.el: New test for `map-let'.
28139 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
28141         Reuse rgrep mechanics in xref-find-regexp
28142         * lisp/progmodes/grep.el (rgrep-default-command):
28143         Extract from `rgrep'.
28144         * lisp/progmodes/xref.el (xref-collect-references): Split from
28145         `xref-collect-matches'.  Only handle the case of symbol search.
28146         (xref-collect-matches): Instead of Semantic Symref, use
28147         `rgrep-default-command', to take advantage of its directory and
28148         file ignore settings.
28149         (xref--collect-match): Remove the last argument, leaving the
28150         regexp construction up to the caller.
28151         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
28152         Change to take the xref-collect- function to use as an argument.
28153         (elisp-xref-find): Update accordingly.
28154         * lisp/progmodes/etags.el (etags--xref-find-matches)
28155         (etags-xref-find): Same.
28157         Move xref-elisp-location to elisp-mode.el
28158         * lisp/progmodes/xref.el (xref-elisp-location)
28159         (xref-make-elisp-location, xref-location-marker): Remove here.
28160         (xref--xref): Don't limit the type of the location slot.
28161         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
28162         Define as a cl-struct here.
28163         (xref-location-marker): Move here.
28165 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
28167         Minor tweaks for .gitignore
28168         * .gitignore: Don't ignore versioned *.html and *.ps files.
28169         Don't ignore admin/notes/tags that might be ignored as TAGS
28170         on case-insensitive filesystems.  (Bug#20710)
28172 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
28174         Generate curved quotes in ert doc
28175         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
28176         (ert-results-mode-menu)
28177         (ert-results-pop-to-backtrace-for-test-at-point)
28178         (ert-results-pop-to-messages-for-test-at-point)
28179         (ert-results-pop-to-should-forms-for-test-at-point)
28180         (ert-describe-test):
28181         Quote ‘like this’, not `like this', when generating doc strings
28182         and the like.
28183         * test/automated/ert-x-tests.el (ert-test-describe-test):
28184         Allow quoting ‘like this’.
28186 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
28188         Add test for previous commit
28189         * test/automated/replace-tests.el: New file.
28190         (query-replace--split-string-tests): Add test for previous commit.
28192         Avoid confusion in query-replace history when replacing NUL chars
28193         * lisp/replace.el (query-replace--split-string): New function.
28194         (query-replace-read-from): Rely on the 'separator' property
28195         instead of searching for the NUL character (Bug#20690).
28197 2015-06-02  Glenn Morris  <rgm@gnu.org>
28199         Merge from origin/emacs-24
28200         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
28202         * admin/gitmerge.el (gitmerge-commit-message):
28203         Exclude "skipped" messages from ChangeLog.
28205 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
28207         Sync with Tramp repository
28208         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
28209         messages.
28210         (tramp-handle-make-auto-save-file-name): When calling
28211         `make-auto-save-file-name' internally, make sure it uses Unix-like
28212         behavior, not Windows-like behavior.
28213         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
28214         the local case, because "chown" might fail on w32.
28215         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
28216         for XEmacs.
28218 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
28220         MS-Windows followup for batch stdout/stderr output changes
28221         * lisp/international/mule-cmds.el (set-locale-environment):
28222         In batch mode, use console codepages for keyboard and terminal
28223         encoding.  (Bug#20545)
28225         Update .gitattributes for DOS EOL files
28226         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
28227         CRLF end-of-line format.
28229         NS equivalents of xterm.c and w32term.c changes
28230         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
28231         glyph string background also when the font in use claims
28232         preposterously large global height value.  Helps to remove
28233         artifacts left from previous displays when glyphless characters
28234         are displayed as hex code in a box.
28235         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
28236         value for FRAME_LINE_HEIGHT, even when a font claims very large
28237         value for its height.
28239 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
28241         Avoid grave accent quoting in stderr diagnostics
28242         A few Emacs diagnostics go directly to stderr, and so can't easily
28243         contain curved quotes (as non-UTF-8 locales might mishandle them).
28244         Instead of bothering to add support for this rarity, reword the
28245         diagnostics so that they don't use grave accent to quote.
28246         * src/alloc.c (mark_memory): Fix comment.
28247         * src/buffer.c (init_buffer):
28248         * src/dispnew.c (init_display):
28249         * src/emacs.c (main, sort_args):
28250         * src/lread.c (dir_warning):
28251         * src/term.c (init_tty):
28252         * src/unexmacosx.c (unexec):
28253         * src/xfns.c (select_visual):
28254         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
28255         Reword stderr diagnostics to avoid quoting `like this'.
28256         * src/unexmacosx.c: Include errno.h.
28257         * src/xfns.c (select_visual): Encode value for locale.
28259 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
28261         Treat batch stdout/stderr like standard display
28262         Calls like (print FOO) could generate improperly encoded or
28263         hard-to-read output if FOO contains characters outside the system
28264         locale.  Fix this by treating batch stdout and stderr like
28265         interactive standard display, when it comes to transliterating and
28266         encoding characters (Bug#20545).
28267         * doc/emacs/mule.texi (Communication Coding):
28268         * doc/lispref/display.texi (Active Display Table):
28269         * doc/lispref/nonascii.texi (Locales):
28270         * etc/NEWS:
28271         * src/coding.c (syms_of_coding):
28272         * src/dispnew.c (syms_of_display):
28273         Document this.
28274         * src/print.c: Include disptab.h.
28275         (printchar_to_stream): New function, with much of the guts of the
28276         old Fexternal_debugging_output, except this one also uses the
28277         standard display table.
28278         (printchar, strout, Fexternal_debugging_output): Use it.
28280 2015-05-31  Glenn Morris  <rgm@gnu.org>
28282         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
28284 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
28286         Remove DEFSYMs that aren't used at the C level.  Also:
28287         * src/decompress.c (Qzlib_dll):
28288         * src/font.c (Qunicode_sip):
28289         * src/frame.c (Qtip_frame):
28290         * src/ftfont.c (Qserif):
28291         * src/gnutls.c (Qgnutls_dll):
28292         * src/xml.c (Qlibxml2_dll):
28293         Move from here ...
28294         * src/w32fns.c (syms_of_w32fns): ... to here,
28295         as these are used only on MS-Windows.
28297 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
28299         Use another default value for tramp-histfile-override
28300         * lisp/net/tramp-sh.el (tramp-histfile-override):
28301         Use ".tramp_history" as default.
28302         Fixes bug#20446
28304 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
28306         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
28308 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
28310         * etc/NEWS: Add an entry about map.el.
28312         Improve the docstring of functions in map.el
28313         Since a map is not a data structure but a concept, adding information
28314         about the possible types of maps can be useful information.
28315         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
28316         each public function.
28318 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
28320         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
28321         specific tests depending on the type of the map.
28323         * lisp/emacs-lisp/map.el: Better docstrings.
28325 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
28327         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
28329 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
28331         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
28333         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
28335         Fix a false negative in `map-elt' with alists and values being nil
28336         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
28337         found but its associated value is nil, do not return the default
28338         value.
28339         * test/automated/map-tests.el: Add a regression test.
28341 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
28343         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
28345         Do not signal an error when trying to delete a key from an array
28346         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
28347         the key is present to avoid signaling an error.
28348         * test/automated/map-tests.el: Add a test for deleting non-existing
28349         keys from maps.
28351         * lisp/emacs-lisp/map.el: Better docstring.
28353         Minor improvement in map-elt
28354         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
28355         doing a lookup in arrays, but check the boundaries of the array
28356         instead.
28357         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
28358         and a negative integer as key.
28360 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
28362         * test/automated/map-tests.el: Refactoring of test methods.
28364         * test/automated/map-tests.el: Renamed from map-test.el.
28366 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
28368         * lisp/emacs-lisp/map.el (map-into): Better error message.
28370         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
28372         Throw an error when converting a map into an unknown map type
28373         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
28374         not valid.
28375         * test/automated/map-tests.el: Add a regression test.
28377         New library map.el similar to seq.el but for mapping data structures.
28378         * test/automated/map-tests.el: New file.
28379         * lisp/emacs-lisp/map.el: New file.
28381 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
28383         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
28384         there's no explicit tag name (bug#20629).
28386 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
28388         Remove format2
28389         * src/editfns.c, src/lisp.h (format2): Remove.
28390         It is more trouble than it's worth, now that we have CALLN.
28391         This is just a minor refactoring.
28392         * src/buffer.c (Fkill_buffer):
28393         * src/dbusbind.c (XD_OBJECT_TO_STRING):
28394         * src/fileio.c (barf_or_query_if_file_exists):
28395         Adjust to format2 going away.
28397         Don't misencode C-generated messages
28398         Also, be more consistent about calls to 'Fmessage' vs 'message'.
28399         * src/alloc.c (Fgc_status):
28400         Prefer AUTO_STRING to build_string for Fmessage call.
28401         * src/data.c (Fmake_variable_buffer_local)
28402         (Fmake_local_variable, Fmake_variable_frame_local):
28403         * src/doc.c (store_function_docstring):
28404         Use Fmessage, not message, since the argument can contain
28405         non-ASCII characters, and this can cause the resulting message
28406         to be incorrectly encoded for the current environment.
28407         * src/fns.c (maybe_resize_hash_table):
28408         * src/xselect.c (x_clipboard_manager_save_all):
28409         Use message, not Fmessage, since Fmessage's power isn't needed here.
28410         * src/process.c (Fmake_network_process): Reword message to avoid %s.
28411         * src/xdisp.c (vmessage): Document restrictions on message contents.
28412         (message_nolog) [false]: Remove unused code.
28414         Use \r rather than ^M in string literals
28415         This is less likely to cause problems on platforms that
28416         use CRLF (or CR!) termination for lines.
28418         Update .gitattributes to match current sources
28419         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
28420         * .gitattributes: Accommodate tests that insist on DOS format.
28421         Remove test/automated/data/decompress/foo-gzipped.
28422         Add etc/e/eterm-color.
28424 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
28426         * doc/emacs/mule.texi (Modifying Fontsets):
28427         Document face-ignored-fonts.  (Bug#20628)
28429         Add etags test for the new -Q option
28430         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
28431         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
28432         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
28433         test-case changes below.
28434         * test/etags/ETAGS.good_6: New file.
28435         * test/etags/cp-src/x.cc: New file.
28436         * test/etags/Makefile (CPSRC): Add x.cc.
28437         (check): Add one more test, for -Q.
28439 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
28441         Use list for the tags completion table, not obarray
28442         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
28443         list instead of an obarray
28444         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
28445         (tags-completion-table): Combine those lists.
28446         (tags-completion-table): Update the docstring.
28448 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
28450         Restore EOL format testing in etags
28451         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
28452         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
28453         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
28454         test-case changes below.
28455         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
28456         * test/etags/cp-src/c.C (B): Add back stray CR character.
28457         * test/etags/c-src/dostorture.c: Add back.
28458         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
28460 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
28462         Declare Emacs on MS-Windows to be DPI-aware
28463         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
28464         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
28465         This avoids Windows entering compatibility mode for Emacs,
28466         which causes fonts to look less nice.
28468 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
28470         Improve Tramp traces
28471         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
28472         * lisp/net/tramp.el (tramp-debug-message): Use it.
28474 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
28476         backup-buffer minor reworking of internals
28477         * lisp/files.el (backup-buffer): Rework to avoid a couple of
28478         unused locals inadvertently introduced in the previous change.
28480         backup-buffer now reports .emacs.d/%backup% ills
28481         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
28482         fails due to disk space exhaustion or whatever, do not pretend
28483         that it succeeded.  More generally, do a better job of checking
28484         for I/O failures, and limit the scope of the condition-case to
28485         just the operations where file errors should be caught and ignored
28486         (Bug#20595).  Also, don't bother trying to delete later backups if
28487         an earlier deletion fails, as this is a sign of trouble and it's
28488         better to stop when there's trouble.
28490         copy-file now truncates output after writing
28491         * src/fileio.c (Fcopy_file): Truncate output after writing rather
28492         than before.  This is more likely to work than truncation before
28493         writing, if the file system is out of space or the user is over
28494         disk quota (Bug#20595).  Also, check for read errors.
28496 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
28498         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
28499         Don't load descriptors from directories above the package directories.
28501 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
28503         Merge from gnulib
28504         This incorporates the following (Bug#20681):
28505         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
28506         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
28507         * lib/set-permissions.c: Copy from gnulib.
28509 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
28511         Improve Tramp traces
28512         * lisp/net/tramp.el (tramp-call-process-region): New defun.
28513         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
28515 2015-05-29  Glenn Morris  <rgm@gnu.org>
28517         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
28519 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
28521         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
28522         The signature was changed in the cairo branch, merged on 2015-05-23.
28523         This oversight broke compiling only the non-toolkit X version.
28525 2015-05-29  Samer Masterson  <samer@samertm.com>
28527         * doc/lispref/os.texi: Update initial-buffer-choice docs.
28529 2015-05-29  Glenn Morris  <rgm@gnu.org>
28531         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
28532         Mark as an expected failure.
28534 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
28536         Change package test to look for curved quotes
28537         * test/automated/package-test.el (package-test-describe-package)
28538         (package-test-signed): Search for curved single quotes as well as
28539         for grave accent and apostrophe.
28541 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
28543         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
28544         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
28546 2015-05-28  Samer Masterson  <samer@samertm.com>
28548         Show files when `initial-buffer-choice' is non-nil
28549         * lisp/startup.el (command-line-1): When Emacs is given a file as an
28550         argument and `initial-buffer-choice' is non-nil, display both the file
28551         and `initial-buffer-choice'.  For more than one file, show
28552         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
28553         commands out of the command line arg parser.
28554         (initial-buffer-choice): Clarify docstring.
28556 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
28558         Fix last commit
28559         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
28560         (gnulib module qcopy-acl): Add back, as it is harmless.  This
28561         minimizes differences wrt lib/gnulib.mk.
28563         Fix the MS-Windows build as followup to gnulib update
28564         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
28565         set-permissions.c, as they don't compile on MinGW.
28566         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
28568 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
28570         Revert my change to gnus-art.el
28571         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
28572         It wasn't that important, and it caused a Gnus build to fail.  See:
28573         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
28575         New minor mode Electric Quote
28576         This lets you easily insert quotes ‘like this’ by typing
28577         quotes `like this', and similarly you can easily insert
28578         quotes “like this” by typing quotes ``like this'' (Bug#20545).
28579         * doc/emacs/basic.texi (Inserting Text):
28580         * doc/emacs/modes.texi (Minor Modes):
28581         * etc/NEWS: Document it.
28582         * doc/emacs/text.texi (Quotation Marks): New section.
28583         * lisp/electric.el (electric-quote-comment)
28584         (electric-quote-string, electric-quote-paragraph):
28585         New custom vars.
28586         (electric--insertable-p)
28587         (electric-quote-post-self-insert-function): New functions.
28588         (electric-quote-mode, electric-quote-local-mode): New minor modes.
28589         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
28590         Add curved single quotes to electric-pair-text-pairs.
28591         Set electric-quote-string in this buffer.
28593         A few more doc string fixes (Bug#20385)
28595         Accept curved quotes in doc strings
28596         * lisp/info-look.el (info-lookup-guess-custom-symbol):
28597         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
28599         Generate curved quotes in pseudo-info nodes
28600         * lisp/info.el (Info-virtual-index-find-node)
28601         (Info-virtual-index, Info-apropos-find-node, info-apropos):
28602         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
28604         Fix minor quoting problems in doc strings
28605         Most of these fixes involve escaping grave accents that are
28606         actually intended to be grave accents, not left quotes.
28607         (Bug#20385)
28609         Support curved quotes in doc strings
28610         Emacs's traditional doc string style has been to quote symbols
28611         `like this'.  This worked well on now-obsolete terminals where
28612         ` and ' were symmetric quotes, but nowadays curved quotes
28613         ‘like this’ look better.  Support quoting the new way too.
28614         (Bug#20385)
28615         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
28616         ‘like-this’ as well as `like-this'.
28617         * etc/NEWS: Mention this.
28618         * lisp/cedet/mode-local.el (overload-docstring-extension)
28619         (mode-local-print-binding, mode-local-describe-bindings-2):
28620         * lisp/cus-theme.el (describe-theme-1):
28621         * lisp/descr-text.el (describe-text-properties-1, describe-char):
28622         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
28623         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
28624         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
28625         (eieio-help-constructor):
28626         * lisp/emacs-lisp/package.el (describe-package-1):
28627         * lisp/faces.el (describe-face):
28628         * lisp/help-fns.el (help-fns--key-bindings)
28629         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
28630         (help-fns--interactive-only, describe-function-1):
28631         (describe-variable):
28632         * lisp/help.el (describe-mode):
28633         * lisp/international/mule-cmds.el (describe-input-method)
28634         (describe-language-environment):
28635         * lisp/international/mule-diag.el (describe-character-set)
28636         (print-coding-system-briefly, list-input-methods)
28637         (list-input-methods-1):
28638         Insert curved quotes rather than grave accent and apostrophe.
28639         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
28640         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
28641         (checkdoc-proper-noun-region-engine):
28642         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
28643         (lisp-cl-font-lock-keywords-2):
28644         * lisp/finder.el (finder-font-lock-keywords):
28645         * lisp/gnus/gnus-art.el (gnus-button-alist):
28646         * lisp/help-fns.el (help-do-arg-highlight)
28647         (describe-function-1, describe-variable):
28648         * lisp/help-mode.el (help-xref-symbol-regexp)
28649         (help-xref-info-regexp, help-xref-url-regexp):
28650         * lisp/help.el (describe-mode):
28651         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
28652         * lisp/wid-edit.el (widget-documentation-link-regexp):
28653         Parse symbols quoted ‘like-this’ as well as `like-this'.
28654         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
28655         Add "‘" and "’" to electric-pair-text-pairs.
28656         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
28657         (elisp-completion-at-point, elisp--preceding-sexp):
28658         Also treat "‘" and "’" as quoting chars.
28660         substitute-command-keys now curves quotes
28661         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
28662         * doc/lispref/help.texi (Keys in Documentation):
28663         * etc/NEWS: Document this.
28664         * src/doc.c (Fsubstitute_command_keys): Implement it.
28666 2015-05-28  Glenn Morris  <rgm@gnu.org>
28668         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
28669         (rmail-summary-by-topic, rmail-summary-by-senders):
28670         No longer strip leading/trailing whitespace.
28672         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
28673         (f90-no-block-limit): Add "enum".  (Bug#20680)
28674         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
28675         New tests.
28677 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
28679         * lisp/isearch.el (isearch--current-buffer): Give a default value.
28680         Un-revert changes mistakenly dropped by f9fabb2b.
28682 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
28684         Merge from gnulib
28685         This incorporates:
28686         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
28687         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
28688         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
28689         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
28690         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
28691         2015-05-26 stdio: fix probe on mingw under gcc 5.1
28692         * admin/merge-gnulib (GNULIB_MODULES):
28693         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
28694         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
28695         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
28696         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
28697         Get latest versions from gnulib.
28698         * lib/get-permissions.c, lib/set-permissions.c: New files.
28699         * lib/gnulib.mk, m4/gnulib-comp.m4:
28700         Regenerate.
28701         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
28703 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
28705         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
28706         process here.
28707         (vc-do-command): Rather than here (bug#20608).
28709 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
28711         Avoid gratuitous delete-dups in face-at-point
28712         * lisp/faces.el (face-at-point): Do not compute the properly
28713         ordered, duplicate-free list if only a single value is
28714         requested anyway.  (Bug#20519)
28716         Show the exact C-x 8 RET invocation in describe-char
28717         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
28718         invocation instead of a template.  (Bug#20522)
28720 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
28722         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
28723         (package-menu--post-refresh): Call `tabulated-list-print' with the
28724         UPDATE argument.  This only affects the refresh action, the revert
28725         action still erases tags.
28726         (package-menu-get-status): Change `assq' to `assoc'.
28727         (package-menu--mark-upgrades-1): New function.
28728         (package-menu--mark-upgrades-pending): New variable.
28729         (package-menu-mark-upgrades): Use them to delay marking until
28730         after refresh is done.
28731         (package-menu--post-refresh): Call mark-upgrades-1 if
28732         mark-upgrades-pending is non-nil.
28734 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
28736         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
28737         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
28738         (commit 3953c4be2816537be95520605d45b866dc731f4b).
28740 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
28742         * lisp/isearch.el (isearch--current-buffer): New var.
28743         (isearch-update): Set cursor-sensor-inhibit here.
28744         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
28745         (bug#20532).
28747         Change inhibit-point-motion-hooks to t
28748         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
28749         to t and document it as obsolete.
28751 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
28753         Support ZIP files that use Zip64 extensions
28754         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
28755         format of central directory offsets used by Zip64 extensions.
28756         (Bug#20665)
28758 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
28760         New test tramp-test30-make-auto-save-file-name
28761         * test/automated/tramp-tests.el
28762         (tramp-test30-make-auto-save-file-name): New test.
28763         (tramp-test31-special-characters)
28764         (tramp-test31-special-characters-with-stat)
28765         (tramp-test31-special-characters-with-perl)
28766         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
28767         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
28768         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
28769         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
28771         Improve tramp-handle-make-auto-save-file-name
28772         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
28773         (tramp-handle-make-auto-save-file-name): Let native
28774         `make-auto-save-file-name' use `auto-save-file-name-transforms',
28775         if `tramp-auto-save-directory' is not set.
28777 2015-05-27  Glenn Morris  <rgm@gnu.org>
28779         No longer set dired-directory in eshell.  (Bug#16477)
28780         * lisp/eshell/esh-mode.el (eshell-mode):
28781         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
28783         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
28785         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
28786         * lisp/progmodes/cc-mode.el (c-mode-help-address):
28787         Change to submit@debbugs.
28788         (c-mode-bug-package): New constant.
28789         (mail-position-on-field): Declare.
28790         (c-submit-bug-report): Insert X-Debbugs-Package header.
28791         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
28792         Mention debbugs.gnu.org.
28794 2015-05-26  Glenn Morris  <rgm@gnu.org>
28796         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
28797         (rmail-summary-by-recipients, rmail-summary-by-topic)
28798         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
28799         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
28801 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
28803         Handle curved quotes in info files
28804         * lisp/calc/calc-help.el (calc-describe-thing):
28805         * lisp/info.el (Info-find-index-name)
28806         (Info-try-follow-nearest-node, Info-fontify-node):
28807         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
28808         In info files, process quotes ‘like this’ the same way we process
28809         quotes `like this'.  This catches a few places we missed earlier.
28811 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
28813         xref-prompt-for-identifier: Use a list value
28814         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
28815         value, to be interpreted as a list of commands.
28816         (xref--prompt-p): New function.
28817         (xref--read-identifier): Use it.
28819 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
28821         Teach MS-Windows font back-end return per-glyph ascent/descent
28822         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
28823         values.
28824         * src/w32font.c (w32font_text_extents): Compute, cache, and
28825         accumulate per-glyph ascent and descent values, instead of copying
28826         global values from the font.  If the values are not available from
28827         the font data, i.e., non-TTF fonts, fall back on font-global values.
28828         (compute_metrics): Compute and return per-glyph ascent and descent
28829         values, if returned by GetGlyphOutlineW, falling back on
28830         font-global values.  (Bug#20628)
28831         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
28832         height of rectangle to be drawn, to be compatible with
28833         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
28834         box, when per-glyph ascent/descent values are used.
28836 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
28838         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
28839         Don't sort if sorter is nil.
28841 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
28843         Fix Bug#20621
28844         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
28845         are major modes which set `auto-save-mode' on their own rules;
28846         Tramp shall not overwrite such settings.
28848 2015-05-26  Glenn Morris  <rgm@gnu.org>
28850         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
28851         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
28852         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
28853         Doc updates.
28854         (vc-dir-mode): Remove unnecessary autoload.
28856 2015-05-25  Philipp Stephani  <phst@google.com>
28858         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
28859         (xterm--extra-capabilities-type): Add `getSelection'.
28860         (xterm--query): Add `no-async' argument.
28861         (xterm--init-activate-get-selection): New function.
28862         (terminal-init-xterm): Use it.
28863         (xterm--init-modify-other-keys): Rename from
28864         terminal-init-xterm-modify-other-keys.
28865         (xterm--init-bracketed-paste-mode): Rename from
28866         terminal-init-xterm-bracketed-paste-mode.
28867         (xterm--init-activate-set-selection): Rename from
28868         terminal-init-xterm-activate-set-selection.
28869         (xterm--selection-char): New function.
28870         (gui-backend-set-selection): Use it.  Use the &context to only apply
28871         this method in terminals where we enabled the feature.
28872         (gui-backend-get-selection): New method.
28874 2015-05-25  Daniel Colascione  <dancol@dancol.org>
28876         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
28877         keyword constants to C++.
28879 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
28881         Make TAGS files more portable to MS-Windows
28882         * etc/NEWS: Document this.
28883         * lib-src/etags.c (readline_internal) [DOS_NT]:
28884         Don't treat CRs differently from GNUish hosts.
28885         * lisp/progmodes/etags.el (etags-goto-tag-location):
28886         Adjust STARTPOS to account for the skipped CRs in dos-style files.
28888 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
28890         Improve fix of bug#20634 in tramp-sh.el
28892 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
28894         Fix a typo in last commit
28895         * lib-src/etags.c (C_entries): Fix a typo.
28896         * test/etags/ETAGS.good_1:
28897         * test/etags/ETAGS.good_2:
28898         * test/etags/ETAGS.good_3:
28899         * test/etags/ETAGS.good_4:
28900         * test/etags/ETAGS.good_5:
28901         * test/etags/CTAGS.good: Update due to the change in etags.c.
28903         Fix tagging of class members in C-like OO languages
28904         * lib-src/etags.c (longopts): Add new option --class-qualify and
28905         its shorthand -Q.
28906         (print_help): Add help text for --class-qualify.
28907         (main): Add handling of -Q.
28908         (consider_token, C_entries) <omethodparm>: Append argument types
28909         to Objective C methods only if --class-qualify was specified.
28910         Qualify C++, Objective C, and Java class members with their class
28911         names only if --class-qualify was specified.
28912         (C_entries): If --class-qualify was not specified, remove the
28913         namespace and class qualifiers from tag names of C++ methods.
28914         This allows to use etags.el as xref back-end without the
28915         tag-symbol-match-p method, which greatly increases the number of
28916         potentially false positives.  (Bug#20629)
28917         * doc/man/etags.1: Update to document the new --class-qualify
28918         option.
28919         * test/etags/ETAGS.good_1:
28920         * test/etags/ETAGS.good_2:
28921         * test/etags/ETAGS.good_3:
28922         * test/etags/ETAGS.good_4:
28923         * test/etags/ETAGS.good_5:
28924         * test/etags/CTAGS.good: Update due to changes in etags.c.
28926 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
28928         (cl-generic-define-method): Side effects are evil (bug#20644)
28929         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
28930         cons-cells that might be used as keys in an `equal' hash-table.
28932 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
28934         Make erc timestamps visible again
28935         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
28936         Make timestamps visible again (if requested).
28938 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
28940         Fix last change in etags.c that broke tagging compresed files
28941         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
28942         quoting of decompression shell command for MS-Windows/MS-DOS.
28944 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
28946         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
28947         (Bug#20639)
28949 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
28951         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
28952         Fix typo in "Inhibit `epa-file-handler' in Tramp"
28953         (commit 89035e247591c8d688fce922b7079881aa110f33).
28955 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
28957         Fix IPv6 addresses in Tramp
28958         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
28959         Add square brackets around host name.
28961 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
28963         Inhibit `epa-file-handler' in Tramp (Bug#20634)
28964         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
28965         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
28966         `epa-file-handler'.
28968 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
28970         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
28971         (pcase-let): Document the behavior in case the pattern doesn't match.
28973 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
28975         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
28976         (tabulated-list-print): New optional argument, UPDATE.  If
28977         non-nil, the list is printed by only adding and deleting the
28978         changed entries, instead of erasing the whole buffer.  This method
28979         is much faster when few or no entries have changed.
28980         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
28981         * etc/NEWS: Document it.
28983         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
28984         (tabulated-list--get-sorter): New function.
28985         (tabulated-list-print): Restore window-line when remember-pos is
28986         passed and optimize away the `nreverse'.
28988 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
28990         Simpilify etags TEX mode scanning
28991         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
28992         Remove static vars.
28993         (TeX_commands): Deduce escapes here instead.
28994         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
28995         This removes the need for a reset_input call.
28997         Improve etags I/O error reporting
28998         * lib-src/etags.c:
28999         Don't include sys/types.h and sys/stat.h; no longer needed.
29000         (infilename): New static var.
29001         (process_file_name): Don't call 'stat'.  Instead, just open the
29002         file for reading and report any errors.  Don't bother making
29003         a copy of the file argument; it's not needed.  Be more careful to
29004         use the failing errno when reporting an error.
29005         Quote the real name better (though no perfectly)
29006         when passing it to the shell.
29007         (reset_input): New function, which reports I/O errors.
29008         All uses of 'rewind' changed to use this function.
29009         (perhaps_more_input): New function, which also checks for
29010         I/O errors.  All uses of 'feof' changed to use this function.
29011         (analyze_regex): Report an error if fclose fails.
29012         (readline_internal): Report an error if getc fails.
29013         (etags_mktmp): Return an error if close fails.
29015         etags.c: avoid side effects in 'if'
29016         * lib-src/etags.c (process_file_name, Perl_functions)
29017         (TEX_decode_env): Hoist side effects into previous statement.
29019         .gitignore tweaks
29020         * .gitignore: Ignore all *.stamp files.  Sort.
29021         Ignore [0-9]*.txt (commonly used name for git patches)
29022         and /vc-dwim-log-* (vc-dwim temporary).
29024 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
29026         Fix last change in etags.c, which failed the test suite
29027         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
29028         before the last change.
29030 2015-05-23  Glenn Morris  <rgm@gnu.org>
29032         Remove charset map files from repository, generate in first bootstrap
29033         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
29034         (all): Create the stamp file.
29035         (extraclean): Delete the stamp file.
29036         * src/Makefile.in (lispintdir, charsets): New variables.
29037         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
29038         New rules.
29039         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
29040         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
29041         * etc/charsets/*.map: Remove from repository.
29043 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
29045         Cleanup etags.c to use locale-independent code
29046         Although this doesn't alter behavior (as etags doesn't use
29047         setlocale), the new version is more clearly locale-independent and
29048         the executable is a bit smaller on my platform.
29049         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
29050         Include <c-ctype.h> instead of <ctype.h>.
29051         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
29052         (begtk, midtk):
29053         Remove; no longer needed.
29054         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
29055         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
29056         c_islower, c_tolower, respectively.
29057         (notinname, begtoken, intoken, endtoken): Rewrite as functions
29058         instead of macros, and initialize the tables at compile-time
29059         rather than at run-time.
29061         Put default action first in src/Makefile
29062         * src/Makefile.in (all): Put this rule before lisp.mk.
29063         That way, plain 'make' works in the src directory again.
29065 2015-05-23  Glenn Morris  <rgm@gnu.org>
29067         * Makefile.in: Fix extraclean rule.
29068         (extraclean_dirs): New.
29069         (extraclean): Use it.
29071 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
29073         Avoid compiler warning in image.c on MS-Windows
29074         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
29075         warning in image.c.
29077 2015-05-23  Glenn Morris  <rgm@gnu.org>
29079         Fix --without-toolkit-scroll-bars builds.
29080         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
29081         Add new argument to x_clear_area1.
29082         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
29083         Update x_clear_area arguments.
29085         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
29086         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
29087         Change to included version.
29088         (LOCAL, local, totalclean): Remove.
29089         (extraclean): Delete all generated files.
29091 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
29093         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
29094         CVS/Entries exists.
29096         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
29098         * lisp/progmodes/etags.el (tags-completion-at-point-function):
29099         Don't trust the find-tag function.
29101 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
29103         Pacify --enable-gcc-warnings
29104         * src/frame.h (x_query_color): Remove redundant extern decl.
29105         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
29106         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
29107         (ftcrfont_text_extents, ftcrfont_draw):
29108         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
29109         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
29110         (x_ins_del_lines, frame_highlight, frame_unhighlight)
29111         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
29112         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
29113         (x_update_window_begin, x_connection_closed)
29114         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
29115         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
29116         (*x_gc_get_ext_data, x_extension_initialize)
29117         (x_cr_accumulate_data):
29118         Remove redundant static decl.  Many of these GCC doesn't complain
29119         about, but we might as well clean out the duplication while we're
29120         in the neighborhood.
29121         * src/xterm.c (x_fill_trapezoid_for_relief):
29122         Remove decl of nonexistent function.
29124 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
29126         Replace gui-method macros with cl-generic with &context
29127         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
29128         (gui-method-declare, gui-call): Remove.
29129         (frame-creation-function): Use cl-defgeneric.
29130         (make-frame): Adjust callers.
29131         * lisp/menu-bar.el (menu-bar-edit-menu):
29132         Use gui-backend-selection-exists-p.
29133         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
29134         (gui-backend-get-selection): New cl-generic to replace
29135         gui-get-selection method.
29136         (gui-backend-set-selection): New cl-generic to replace
29137         gui-set-selection method.
29138         (gui-selection-owner-p): New cl-generic to replace
29139         gui-selection-owner-p method.
29140         (gui-backend-selection-exists-p): New cl-generic to replace
29141         gui-selection-exists-p method.  Adjust all callers.
29142         * lisp/server.el (server-create-window-system-frame): Don't ignore
29143         window-system spec even when unsupported.
29144         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
29145         * lisp/startup.el (handle-args-function, window-system-initialization):
29146         Use cl-defgeneric.
29147         (command-line): Adjust calls accordingly.
29148         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
29149         a window-system-initialization method.
29150         (handle-args-function, frame-creation-function): Use cl-defmethod.
29151         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
29152         (gui-get-selection): Use cl-defmethod on the new functions instead.
29153         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
29154         a gui-backend-get-selection method.
29155         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
29156         Use cl-defmethod on the new functions instead.
29157         (msdos-window-system-initialization): Turn into
29158         a window-system-initialization method.
29159         (frame-creation-function, handle-args-function): Use cl-defmethod.
29160         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
29161         a window-system-initialization method.
29162         (handle-args-function, frame-creation-function): Use cl-defmethod.
29163         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
29164         (gui-get-selection): Use cl-defmethod on the new functions instead.
29165         * lisp/term/x-win.el (x-window-system-initialization): Turn into
29166         a window-system-initialization method.
29167         (handle-args-function, frame-creation-function): Use cl-defmethod.
29168         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
29169         (gui-get-selection): Use cl-defmethod on the new functions instead.
29170         * lisp/term/xterm.el (xterm--set-selection): Turn into
29171         a gui-backend-set-selection method.
29172         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
29173         (Fns_selection_owner_p): Remove unused arg `terminal'.
29174         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
29176 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
29178         Revert "Fix etags Bug#20629 that broke C++ support"
29179         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
29181 2015-05-23  Jan D  <jan.h.d@swipnet.se>
29183         Fix etags Bug#20629 that broke C++ support
29184         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
29185         Revert commit from Sun May 10 (Bug#20629).
29187         Merge branch 'cairo'.
29188         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
29189         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
29191         Merge branch 'master' into cairo
29193         Fixes to compile cairo branch without cairo
29194         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
29195         first argument.
29196         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
29197         USE_CAIRO.
29199 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
29201         * lisp/emacs-lisp/package.el: Always update selected-packages.
29202         (package--update-selected-packages): New function.
29203         (package-menu-execute): Use it before starting the transaction,
29204         this way the list of selected packages is updated even when the
29205         transaction fails.
29206         (package-menu--perform-transaction): Don't edit selected-packages.
29208 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
29210         Fix etags reading of compressed files
29211         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
29212         Include fcntl.h, for O_CLOEXEC.
29213         (process_file_name): Don't use 'popen', whose streams cannot be
29214         rewound.  Instead, uncompress the file to a temporary file,
29215         created by 'etags_mktmp', and read from that as usual.
29216         (etags_mktmp): New function.
29217         * test/etags/ETAGS.good_1:
29218         * test/etags/ETAGS.good_2:
29219         * test/etags/ETAGS.good_3:
29220         * test/etags/ETAGS.good_4:
29221         * test/etags/ETAGS.good_5: Update to be consistent with latest
29222         changes in etags.c regarding reading compressed files.
29224         Improve documentation of 'set-fontset-font'
29225         * doc/lispref/display.texi (Fontsets): Document the value of nil
29226         for the 3rd argument of 'set-fontset-font'.
29228         Fix documentation of forward-line
29229         * src/cmds.c (Fforward_line): Clarify the return value if the line
29230         at end of accessible portion of the buffer has no newline.
29231         * doc/lispref/positions.texi (Text Lines): Document what happens
29232         if the line at end of accessible portion of buffer has no newline.
29233         (Bug#20587)
29235 2015-05-22  Glenn Morris  <rgm@gnu.org>
29237         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
29239         * admin/charsets/mapconv (LC_ALL): Set to C.
29241         * Makefile.in: Add admin/charsets into top-level clean rules.
29242         (clean): Add admin/charsets.
29243         (maybeclean_dirs): New variable.
29244         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
29246         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
29248 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
29250         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
29252 2015-05-22  Glenn Morris  <rgm@gnu.org>
29254         Generate admin/charsets Makefile via configure, and make more portable
29255         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
29256         (admin/charsets/Makefile): Generate it.
29257         * admin/charsets/Makefile.in: Rename from Makefile.
29258         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
29259         New variables, set by configure.
29260         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
29261         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
29262         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
29263         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
29264         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
29265         (all): Declare PHONY.
29266         (local): New PHONY target.
29267         (map_template): New template.  Use to define short PHONY aliases.
29268         (*.map): Add directory prefixes to targets and prerequisites.
29269         Respect make verbosity.
29270         (JISC6226.map): Replace non-portable sed append without newline.
29271         (install): Remove rule.
29272         (clean): Only delete temporary sedscript.
29273         (bootstrap-clean, distclean, maintainer-clean, extraclean)
29274         (totalclean): New PHONY rules.
29275         * admin/charsets/mapconv (BASE): Replace basename with expr.
29276         (FILE): Add "mapfiles" subdirectory.
29277         (AWK): New variable.  Use throughout in place of "awk".
29278         (main): Use "gunzip -c" in place of "zcat".
29279         Don't leave whitespace before "p", for older sed.
29280         * admin/charsets/mapfiles/PTCP154: Add final newline,
29281         to make older sed versions happy.
29283 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
29285         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
29286         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
29287         (auto-revert-notify-watch-descriptor): Use defvar-local.
29288         (find-file-hook, auto-revert-tail-mode)
29289         (auto-revert-notify-add-watch): Use setq-local.
29290         (auto-revert-notify-add-watch): Don't call make-local-variable on
29291         kill-buffer-hook (bug#20601).
29293 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
29295         Change defgeneric so it doesn't completely redefine the function
29296         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
29297         previously defined methods.
29298         (cl-generic-define-method): Let-bind purify-flag instead of
29299         using `fset'.
29300         (cl--generic-prefill-dispatchers): Only define during compilation.
29301         (cl-method-qualifiers): Remove redundant alias.
29302         (help-fns-short-filename): Silence byte-compiler.
29303         * test/automated/cl-generic-tests.el:
29304         Adjust to new defgeneric semantics.
29306 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
29308         * lisp/emacs-lisp/package.el (package-menu-execute):
29309         Remove reference to remove-dups.
29311 2015-05-21  kwhite  <kwhite@gnu.org>
29313         * lisp/erc/erc.el: Hide network/channel messages.
29314         (erc-network-hide-list, erc-channel-hide-list): New lists to define
29315         message types per network/channel.
29316         (erc-add-targets): New function to parse list of targets.
29317         (erc-hide-current-message-p): Modify to check for new targets.
29319 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
29321         Don't quote nil and t in doc strings
29322         This is as per "Tips for Documentation Strings" in the elisp manual.
29323         For consistency, do the same in diagnostics and comments.
29325 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
29327         Fix a minor problem with mouse-face on mode line
29328         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
29329         mouse face also if the mouse pointer hovers above mode-line glyphs
29330         that don't come from any Lisp string.  (Bug#20620)
29332 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
29334         * lisp/emacs-lisp/package.el: Fix selected-package logic.
29335         (package-menu-execute): Mark as selected all non-upgrade packages
29336         being installed.
29337         (package-menu--perform-transaction): Don't mark anything.
29339         * lisp/emacs-lisp/package.el: Mode-line progress report.
29340         (package-menu--transaction-status): New variable.
29341         (package-menu-mode, package-menu--perform-transaction): Use it.
29343         * lisp/emacs-lisp/package.el: Better transaction messages.
29344         (package-menu--partition-transaction): New function.
29345         (package-menu--prompt-transaction-p, package-menu-execute):
29346         Use it.
29347         (package-menu--perform-transaction): Don't do any messaging.
29349         * lisp/emacs-lisp/package.el: Revert async package transactions.
29350         (package-menu-async): Update doc.
29351         (package-install-from-archive, package-download-transaction)
29352         (package-install, package-menu--perform-transaction)
29353         (package-menu-execute): Remove asynchronous functionality.
29355 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
29357         Revert doc string changes to f90.el
29358         Problem reported by Glenn Morris in:
29359         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
29360         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
29361         Revert recent changes to doc strings, as it's intended that they
29362         use grave accent, not quote.
29364 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
29366         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
29367         Improve parameter name.
29369         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
29371 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
29373         Don't require help-fns when not needed
29374         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
29375         * lisp/emacs-lisp/elint.el:
29376         Don't require help-fns at the top level
29377         * lisp/emacs-lisp/advice.el (ad-arglist):
29378         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
29379         Don't require help-fns.  (Bug#17001)
29381 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
29383         Fix slash collapsing in etags on MS-Windows
29384         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
29385         MS-Windows code from the Posix code, and support collapsing both
29386         forward- and back-slashes on MS-Windows.  Fixes a regression found
29387         by the test suite.
29389         Improve documentation of glyphless-char-display
29390         * doc/lispref/display.texi (Glyphless Chars): Improve
29391         documentation of glyphless character display.
29393         Fix "acronym" display of glyphless characters on w32
29394         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
29395         ignore "acronym" substitutes of 1 character for glyphless characters.
29397 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
29399         Add an automated test for let-when-compile
29400         * test/automated/subr-tests.el (let-when-compile): New test.
29402         Add let-when-compile macro instead of using pcase-let
29403         * lisp/subr.el (let-when-compile): New let-like macro that makes its
29404         bindings known to macros like `eval-when-compile' in the body.
29405         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
29406         a `let-when-compile'.  Also comment out the unused lexical var
29407         `el-kws-re'.
29408         The change greatly improves readability, while providing almost the
29409         same (even shorter) byte code: instead of pre-evaluating 10 variables,
29410         tossing them into a list, and destructuring that list a full screen
29411         page later, the variables are simply bound as they are evaluated,
29412         wrapped individually in `eval-when-compile'.
29414 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
29416         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
29417         (package-delete-button-action): New function.
29418         (describe-package-1): Add Delete button.
29420         * lisp/emacs-lisp/package.el: Better dependency description.
29421         (package--used-elsewhere-p): New optional arg, ALL, and return
29422         package-desc objects instead of names.
29423         (package-delete): Update accordingly.
29424         (describe-package-1): Describe which packages require the package.
29426 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
29428         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
29429         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
29430         Fix doc-string.
29432         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
29433         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
29434         (switch-to-buffer): If the selected window is strongly dedicated
29435         to its buffer, signal error before prompting for buffer name.
29436         Handle `switch-to-buffer-in-dedicated-window'.
29437         * doc/lispref/windows.texi (Switching Buffers):
29438         Document `switch-to-buffer-in-dedicated-window'.
29440 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
29442         Prefer "this" to “this” in doc strings
29443         This mostly just straightens quotes introduced in my previous patch.
29444         Suggested by Dmitry Gutov in:
29445         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
29446         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
29447         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
29448         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
29449         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
29450         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
29451         Prefer straight double quotes to curved double quotes in doc strings.
29453         Fix minor quoting problems in doc strings
29454         These were glitches regardless of how or whether we tackle the
29455         problem of grave accent in doc strings.
29456         * lisp/calc/calc-aent.el (math-restore-placeholders):
29457         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
29458         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
29459         * lisp/leim/quail/hebrew.el ("hebrew-new")
29460         ("hebrew-biblical-sil"):
29461         * lisp/leim/quail/thai.el ("thai-kesmanee"):
29462         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
29463         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
29464         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
29465         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
29466         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
29467         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
29468         (semantic-tag-components):
29469         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
29470         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
29471         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
29472         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
29473         * lisp/emacs-lisp/generator.el (iter-next):
29474         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
29475         (gnus-article-mode-syntax-table):
29476         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
29477         * lisp/net/soap-client.el (soap-wsdl-get):
29478         * lisp/net/telnet.el (telnet-mode):
29479         * lisp/org/org-compat.el (org-number-sequence):
29480         * lisp/org/org.el (org-remove-highlights-with-change)
29481         (org-structure-template-alist):
29482         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
29483         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
29484         (handwrite-12pt, handwrite-13pt):
29485         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
29486         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
29487         * lisp/progmodes/verilog-mode.el (verilog-tool)
29488         (verilog-string-replace-matches, verilog-preprocess)
29489         (verilog-auto-insert-lisp, verilog-auto-insert-last):
29490         * lisp/textmodes/makeinfo.el (makeinfo-options):
29491         * src/font.c (Ffont_spec):
29492         Fix minor quoting problems in doc strings, e.g., missing quote,
29493         ``x'' where `x' was meant, etc.
29494         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
29495         Fix minor quoting problem in other string.
29496         * lisp/leim/quail/ethiopic.el ("ethiopic"):
29497         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
29498         Omit unnecessary quotes.
29499         * lisp/faces.el (set-face-attribute, set-face-underline)
29500         (set-face-inverse-video, x-create-frame-with-faces):
29501         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
29502         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
29503         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
29504         * lisp/net/tramp.el (tramp-methods):
29505         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
29506         * lisp/textmodes/artist.el (artist-ellipse-right-char)
29507         (artist-ellipse-left-char, artist-vaporize-fuzziness)
29508         (artist-spray-chars, artist-mode, artist-replace-string)
29509         (artist-put-pixel, artist-text-see-thru):
29510         * lisp/vc/ediff-util.el (ediff-submit-report):
29511         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
29512         Use double-quotes rather than TeX markup in doc strings.
29513         * lisp/skeleton.el (skeleton-pair-insert-maybe):
29514         Reword to avoid the need for grave accent and apostrophe.
29515         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
29516         Don't use grave and acute accents to quote.
29518 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
29520         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
29521         Silence compiler.
29523 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
29525         Try to port new etags tests to MS-Windows
29526         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
29527         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
29528         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
29529         Adjust to test-case changes below.
29530         * test/etags/Makefile (CSRC): Remove dostorture.c.
29531         Whatever it was trying to test, wasn't working portably.
29532         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
29533         just a line-ending problem.
29534         * test/etags/c-src/dostorture.c: Remove.
29535         * test/etags/cp-src/c.C: Remove stray CR.
29536         * test/etags/html-src/algrthms.html: Remove trailing CRs.
29537         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
29538         but if someone edits it later it should stay UTF-8-compatible.
29540 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
29542         Fix display of overlapping window-specific overlays
29543         * src/keyboard.c (adjust_point_for_property): When adjusting point
29544         due to display strings, ignore overlays that are specific to
29545         windows other than the currently selected one.
29546         * src/xdisp.c (handle_single_display_spec): If the display
29547         property comes from an overlay, arrange for buffer iteration to
29548         resume only after the end of that overlay.  (Bug#20607)
29550 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
29552         New command icomplete-force-complete-and-exit
29553         * lisp/icomplete.el (icomplete-force-complete-and-exit):
29554         New command
29555         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
29556         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
29557         (icomplete-minibuffer-map): Bind C-j to it.
29558         (icomplete-forward-completions, icomplete-backward-completions):
29559         Mention the new command in the docstring.
29560         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
29561         Revert the previous fix for bug#17545.
29563 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
29565         Fix last commit
29567         In Elisp manual explain how to override window manager positioning
29568         (Bug#20552)
29569         * doc/lispref/frames.texi (Position Parameters): Give example of
29570         how to override a window manager positioning decision.
29572         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
29573         * src/frame.c (Fdelete_frame): In doc-string mention that frame
29574         can't be deleted if it has a surrogate minibuffer.
29575         * doc/lispref/frames.texi (Minibuffers and Frames)
29576         (Deleting Frames): Explain "surrogate minibuffer frames".
29578         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
29580 2015-05-18  Glenn Morris  <rgm@gnu.org>
29582         Add option to ignore commit lines matching a pattern in ChangeLog
29583         * build-aux/gitlog-to-changelog: Add --ignore-line option.
29584         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
29586 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
29588         Don't skip new etags tests on non-UTF-8 hosts
29589         Problem reported by Eli Zaretskii for MS-Windows.
29590         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
29591         (LC_ALL): Set to C if the current locale isn't UTF-8.
29592         (.PHONY): Remove ediff_1 thru ediff_5.
29593         (check): Always run.
29595 2015-05-18  Glenn Morris  <rgm@gnu.org>
29597         * lisp/calculator.el (calculator-funcall):
29598         * lisp/textmodes/artist.el (artist-spray-random-points):
29599         Use standard degree/radian conversion utilities.
29601         Further lisp-complete-symbol related cleanup.
29602         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
29603         Unadvertise non-functional argument.  Replace obsolete alias.
29605 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
29607         Add a test case for Maven warning ouput
29608         * test/automated/compile-tests.el
29609         (compile-tests--test-regexps-data): Add a case for Maven warning
29610         ouput.
29611         (compile--test-error-line): Check the compilation message type, if
29612         it's specified in the test data.
29614 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
29616         Update Maven compilation-mode entry to distinguish warnings
29617         * lisp/progmodes/compile.el
29618         (compilation-error-regexp-alist-alist): Update Maven entry to
29619         distinguish warnings (bug#20556).
29621 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
29623         * test/automated/sgml-mode-tests.el: New file.
29625 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
29627         Improve handling of the first Git revision
29628         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
29629         there's no next entry, delete until the end of the buffer.
29630         (log-view-end-of-defun-1): Stop at eob.
29631         * lisp/vc/vc-annotate.el
29632         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
29633         when previous-revision is nil.
29634         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
29635         with `--' to avoid ambiguity.
29636         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
29637         returned revision string.
29638         (vc-git-annotate-time): Expect `^' before the first revision.
29639         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
29640         REV1 is nil, and REV2 is not.
29641         * lisp/vc/vc.el: Update the description of the `diff' function.
29643 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
29645         Allow checkdoc to be called in batch
29646         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
29647         is non-nil, echo the error with `warn'.
29648         How it can be used in -batch:
29649         (with-current-buffer (find-file "checkdoc.el")
29650           (checkdoc-current-buffer t))
29652 2015-05-18  Glenn Morris  <rgm@gnu.org>
29654         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
29656 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
29658         * admin/notes/unicode: New section "binary files".
29660         Change new etags test to use UTF-8 encoding
29661         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
29662         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
29663         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
29664         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
29665         * test/etags/html-src/softwarelibero.html:
29666         Switch to UTF-8 encoding.
29667         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
29668         Remove Makefile, as it's too incestuous to have the test input
29669         include the build procedure.
29670         (UTF8_LOCALE, UTF_ENCODING): New macros.
29671         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
29672         (check): Skip if not UTF-8.
29673         (.PHONY): New rule.
29674         (FRC): Remove, as superseded by .PHONY.  All uses removed.
29675         (regexfile): Prefer printf to echo when outputting oddball chars.
29676         (.PRECIOUS): Remove, as these files are not built.
29678         Rename 'foo-gzipped' to 'foo.gz'
29679         * test/automated/data/decompress/foo.gz:
29680         Rename from test/automated/data/decompress/foo-gzipped,
29681         to make it easier for other tools to tell that it's compressed.
29682         * test/automated/zlib-tests.el (zlib--decompress):
29683         Adjust to renamed file.
29685 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
29687         Set up default-directory
29688         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
29689         binding for `v'.
29690         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
29691         appropriate value for default-directory.
29693 2015-05-17  Samer Masterson  <samer@samertm.com>
29695         * lisp/eshell/em-term.el (eshell-term-sentinel):
29696         No-op by default, only kills term buffer if
29697         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
29698         (eshell-destroy-buffer-when-process-dies): New custom to preserve
29699         previous behavior.
29701         eshell: Introduce new buffer syntax
29702         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
29703         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
29704         needed (Bug#19319).
29705         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
29706         (eshell-get-target): Remove shorthand-specific code.
29707         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
29708         '#<buffer-name>'.
29710 2015-05-17  Jan D  <jan.h.d@swipnet.se>
29712         Merge branch 'master' into cairo
29714 2015-04-26  Jan D  <jan.h.d@swipnet.se>
29716         Merge branch 'master' into cairo
29718         Add PBM support for cairo
29719         * src/image.c (xcolor_to_argb32): New function.
29720         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
29721         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
29722         XImagePtr if ! USE_CAIRO.
29723         (pbm_load): Add cairo support.
29725 2015-04-12  Jan D  <jan.h.d@swipnet.se>
29727         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
29728         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
29729         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
29730         x_free_cr_resources.
29732         Handle specified bg in images.  Use generic libpng code for PNGs.
29733         * src/image.c (get_spec_bg_or_alpha_as_argb)
29734         (create_cairo_image_surface): New functions when USE_CAIRO.
29735         (xpm_load): Call the above functions.  Handle XPM without mask
29736         when USE_CAIRO.
29737         (png_load_body): Handle USE_CAIRO case.
29738         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
29739         instead.
29740         (jpeg_load_body): Call create_cairo_image_surface.
29741         (gif_load, svg_load_image): Handle specified background, call
29742         create_cairo_image_surface.
29743         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
29745 2015-04-11  Jan D  <jan.h.d@swipnet.se>
29747         Support GIF and TIFF with cairo
29748         * configure.ac: Allow jpeg with cairo.
29749         Allow tiff and gif with cairo.
29750         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
29751         (tiff_load): Create cairo image surface if USE_CAIRO.
29752         (gif_load): Ditto.
29754         Support JPEG with USE_CAIRO
29755         * configure.ac: Allow jpeg with cairo.
29756         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
29758 2015-04-05  Jan D  <jan.h.d@swipnet.se>
29760         Support RSVG and cairo
29761         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
29762         * src/dispextern.h (struct image): Add cr_data2 if cairo.
29763         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
29764         (x_clear_image): Free cr_data and cr_data2 if set.
29765         (xpm_load): Assign data to cr_data2.
29766         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
29768 2015-04-03  Jan D  <jan.h.d@swipnet.se>
29770         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
29771         * configure.ac (HAVE_RSVG): Move after cairo.
29772         (USE_CAIRO): Disable rsvg, don't disable Xpm.
29773         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
29774         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
29775         don't return early.
29776         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
29777         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
29778         and create a surface.
29780         Tool tips for menus did not show any text.
29781         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
29782         tip frames, the geometry may be wrong.
29784         Merge branch 'master' into cairo, fixes tooltips not shown.
29786         Merge branch 'master' into cairo
29788         Add CAIRO_CFLAGS to lwlib/Makefile.in
29789         * Makefile.in (CAIRO_CFLAGS): Add.
29791 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29793         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
29795 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29797         Draw outermost line using black relief and erase corners also for cairo.
29798         * src/xterm.c [USE_CAIRO]: Include math.h.
29799         (enum corners) [USE_CAIRO]: New enum.
29800         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
29801         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
29802         than 1, draw the outermost line using the black relief.
29804         * src/xterm.c (x_fill_trapezoid_for_relief):
29805         Remove unnecessary cairo_close_path.
29807 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29809         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
29811         * src/xterm.c (x_draw_stretch_glyph_string):
29812         Call x_reset_clip_rectangles instead of XSetClipMask.
29814         Use int instead of unsigned int for width and height args.
29815         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
29816         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
29817         width and height args.
29819         Modernize k&r cairo-related function declarations.
29820         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
29821         (xg_print_frames_dialog): Modernize k&r declarations.
29822         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
29823         (Fx_print_frames_dialog): Modernize k&r declarations.
29824         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
29825         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
29826         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
29827         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
29828         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
29829         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
29830         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
29831         (x_clear_area): Modernize k&r declarations.
29833         Implement wave-style variant of underlining for cairo.
29834         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
29835         (x_draw_underwave) [USE_CAIRO]: Use it.
29837         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
29838         instead of XFillRectangle.
29840 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29842         Fix fringe bitmap initialization for cairo
29843         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
29844         data for cairo image surface.
29845         * src/xterm.c (x_cr_define_fringe_bitmap):
29846         Call cairo_surface_mark_dirty.
29848 2015-02-11  Jan D  <jan.h.d@swipnet.se>
29850         Add cairo drawing
29851         * configure.ac (with-cairo): New option.
29852         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
29853         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
29854         Output "Does Emacs use cairo?".
29855         * lisp/version.el (emacs-version): Add cairo version.
29856         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
29857         (FONT_OBJ): Add comment about ftcrfont.
29858         (ALL_CFLAGS): Add CAIRO_CFLAGS.
29859         (LIBES): Add CAIRO_LIBS.
29860         * src/dispextern.h (struct image): Add cr_data for cairo.
29861         (x_cr_init_fringe): Declare.
29862         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
29863         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
29864         * src/fringe.c (x_cr_init_fringe): New function name that shares code
29865         with w32_init_fringe.
29866         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
29867         * src/ftfont.c (ftfont_info_size); New global variable.
29868         (ftfont_open2): New extern function almost the same as old ftfont_open,
29869         but takes the font_object as argument.
29870         (ftfont_open): Build font object and call ftfont_open2.
29871         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
29872         * src/gtkutil.c (xg_clear_under_internal_border)
29873         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
29874         Only queue_draw if not cairo.  Change args to x_clear_area.
29875         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
29876         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
29877         (xg_print_frames_dialog): New functions for printing.
29878         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
29879         (xg_print_frames_dialog): Declare.
29880         * src/image.c: Add defined (USE_CAIRO) for PNG.
29881         Add !defined USE_CAIRO for W32 PNG code.
29882         (x_clear_image): If cairo, destroy the surface in cr_data.
29883         (png_load): Add new cairo compatible implementation.
29884         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
29885         * src/xfns.c: New section Printing.
29886         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
29887         (x-print-frames-dialog): New printing functions.
29888         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
29889         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
29890         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
29891         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
29892         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
29893         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
29894         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
29895         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
29896         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
29897         Declare.
29898         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
29899         (max_fringe_bmp, fringe_bmp): New variables.
29900         (x_gc_get_ext_data, x_extension_initialize)
29901         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
29902         (x_set_cr_source_with_gc_foreground)
29903         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
29904         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
29905         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
29906         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
29907         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
29908         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
29909         (x_update_begin): Create cairo surface if needed.
29910         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
29911         (x_update_end): Paint cairo drawing surface to xlib surface.
29912         (x_clear_under_internal_border, x_after_update_window_line): Adjust
29913         arguments to x_clear_area.
29914         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
29915         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
29916         of XSetClipMask.
29917         (x_set_glyph_string_clipping)
29918         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
29919         instead of XSetClipRectangles.
29920         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
29921         Use x_fill_rectangle instead of XFillRectangle.
29922         (x_draw_glyph_string_foreground)
29923         (x_draw_composite_glyph_string_foreground)
29924         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
29925         instead of XDrawRectangle.
29926         (x_draw_relief_rect): Add code for USE_CAIRO.
29927         Call x_reset_clip_rectangles instead of XSetClipMask.
29928         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
29929         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
29930         instead of XSetClipMask.
29931         (x_draw_image_foreground, x_draw_image_foreground_1):
29932         x_draw_rectangle instead of XDrawRectangle.
29933         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
29934         XFillRectangle.
29935         (x_draw_image_glyph_string): If img has cr_data, use it as
29936         a cairo surface.
29937         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
29938         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
29939         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
29940         x_reset_clip_rectangles instead of XSetClipMask.
29941         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
29942         (x_clear_area1): New function that calls XClearArea.
29943         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
29944         non-cairo.
29945         (x_clear_frame): x_clear_window instead of XClearWindow.
29946         (x_scroll_run): Set frame garbaged if cairo.
29947         (XTmouse_position): Initialize *part to 0.
29948         (x_scroll_bar_create): Adjust arguments to x_clear_area.
29949         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
29950         x_fill_rectangle instead of XFillRectangle.
29951         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
29952         arguments to x_clear_area.
29953         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
29954         (handle_one_xevent): Adjust arguments to x_clear_area.
29955         Destroy cairo surface for frame if ConfigureNotify.
29956         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
29957         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
29958         x_reset_clip_rectangles instead of XSetClipMask.
29959         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
29960         x_reset_clip_rectangles instead of XSetClipMask.
29961         (x_clear_frame_area): Adjust arguments to x_clear_area.
29962         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
29963         (x_term_init): Call x_extension_initialize if cairo.
29964         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
29965         x_cr_destroy_fringe_bitmap for cairo.
29966         (x_initialize): Call x_cr_init_fringe for cairo.
29967         * src/xterm.h: Add include of cairo header files.
29968         (x_bitmap_record): Add img if cairo.
29969         (x_gc_ext_data): New struct for cairo.
29970         (x_display_info): Add ext_codes for cairo.
29971         (x_output): Add cr_context and cr_surface for cairo.
29972         (x_clear_area): Change arguments from Display*/Window to frame pointer.
29973         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
29974         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
29975         (x_cr_draw_frame, x_cr_export_frames): Declare.
29977 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
29979         Fix integer-valued `mouse-highlight' (Bug#20590)
29980         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
29982 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
29984         MS-Windows followup for ASCIIfication of curved quotes
29985         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
29986         test for curved quotes being displayable, after switching the
29987         terminal encoding.  (Bug#20545)
29989 2015-05-17  Jan D  <jan.h.d@swipnet.se>
29991         Add comment that x_shift_glyphs_for_insert is never called
29992         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
29993         Add comment that this function is never called.
29995 2015-05-16  Glenn Morris  <rgm@gnu.org>
29997         * src/lisp.mk: Remove from repository and generate at build-time.
29998         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
29999         (shortlisp_filter): New variable.
30000         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
30001         (distclean): Remove lisp.mk.
30002         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
30003         * lisp/loadup.el: Tweak layout to make it easier to parse.
30004         * make-dist: Do not distribute src/lisp.mk.
30006 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
30008         Display shorter dates in Git annotate output
30009         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
30010         format (when not overridden with vc-git-annotate-switches).
30011         (vc-git-annotate-time): Support the short format, as well as ISO
30012         8601 that has been used until now (bug#5428).
30014 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
30016         ASCIIfy curved quotes on displays lacking them
30017         * lisp/international/mule-cmds.el (set-locale-environment):
30018         If curved quotes don't work, display straight ASCII approximations
30019         (Bug#20545).
30021 2015-05-16  Glenn Morris  <rgm@gnu.org>
30023         Small src/Makefile simplification
30024         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
30025         * src/Makefile.in (lisp): Derive from shortlisp.
30026         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
30028 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
30030         * lisp/help-mode.el (help-go-forward): Doc fix.
30031         (Bug#20577)
30033         * doc/lispref/debugging.texi (Profiling): Improve indexing.
30034         (Bug#20576)
30036 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
30038         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
30039         have one fewer `not'.
30041         * lisp/vc/vc-git.el (vc-git-diff-switches)
30042         (vc-git-annotate-switches, vc-git-resolve-conflicts)
30043         (vc-git-program, vc-git-root-log-format): Remove the redundant
30044         :group declarations.
30046 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
30048         Removes the predicate from lisp-complete-symbol (Bug#20456)
30049         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
30050         and remove it from the docstring.
30052 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
30054         Add new option vc-git-resolve-conflicts
30055         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
30056         (vc-git-find-file-hook): Add to after-save-hook only when the
30057         above is non-nil.
30058         (vc-git-resolve-when-done): Update to honor the new variable.
30059         (Bug#20292)
30061 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
30063         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
30064         (tabulated-list-init-header): Document new behavior.
30065         (tabulated-list-print-fake-header): Do nothing if
30066         `tabulated-list--header-string' is nil.
30067         (tabulated-list--header-string): Add a docstring.
30068         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
30069         * etc/NEWS: Document it.
30071 2015-05-15  Leo Liu  <sdl.web@gmail.com>
30073         Revert "Fix cps--gensym"
30074         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
30075         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
30077 2015-05-15  Glenn Morris  <rgm@gnu.org>
30079         Replace AC_SUBST_FILE in configure with include in Makefiles
30080         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
30081         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
30082         (AUTO_DEPEND): New output variable.
30083         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
30084         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
30085         (lwlib_deps_frag): Replace by conditional include.
30086         * lwlib/autodeps.mk: Remove file.
30087         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
30088         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
30089         (oldxmenu_deps_frag): Replace by conditional include.
30090         * oldXMenu/autodeps.mk: Remove file.
30091         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
30092         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
30093         (lisp_frag): Replace by an include.
30094         (deps_frag): Replace by conditional include.
30095         * src/autodeps.mk: Remove file.
30097         Tweak japanese.el's loading of dependencies
30098         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
30099         * lisp/language/japanese.el: Use require rather than load.
30100         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
30101         Provide a feature.
30102         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
30103         Provide a feature in the generated file.
30105 2015-05-15  Jan D  <jan.h.d@swipnet.se>
30107         Fix NS warnings
30108         * src/nsmenu.m (ns_popup_dialog)
30109         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
30110         * src/nsfns.m (Fx_create_frame): Remove unused variables.
30111         (Fns_read_file_name): Initialize fname, remove ret.
30112         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
30113         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
30114         Remove unused variable.
30115         (init): Add parantesis in if.
30116         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
30118 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
30120         Fix a enum conversion warning in macfont.m
30121         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
30122         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
30124 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
30126         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
30127         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
30129 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
30131         * lisp/cus-start.el: Add ns-confirm-quit.
30133         Fix warnings on OSX 10.10
30134         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
30135         OSX versions.
30136         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
30137         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
30138         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
30139         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
30140         setScalesWhenResized for OSX < 10.6.
30141         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
30142         * src/nsterm.m (ns_copy_bits): New function that does not use
30143         deprecated NSCopyBits.
30144         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
30145         (runAlertPanel): New function.
30146         (applicationShouldTerminate:): Call runAlertPanel.
30147         (initFrameFromEmacs, toggleFullScreen:): Only call
30148         useOptimizedDrawing for OSX < 10.10.
30149         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
30150         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
30151         (draggingEntered:): Returns NSDragOperation.
30152         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
30154 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
30156         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
30157         (package--init-file-ensured): New variable.
30158         (package-initialize, package--ensure-init-file): Use it.
30160 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
30162         Honor :fore/background for XBM on NS (Bug#14969)
30163         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
30164         initFromXBM takes bg, fg args, remove flip arg.
30165         (ns_image_from_XBM): Add bg, fg args.
30166         * src/image.c (x_create_bitmap_from_data)
30167         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
30168         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
30169         initFromXBM.  Remove flip arg.
30170         (initFromSkipXBM): Move code to initFromXBM.
30171         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
30172         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
30173         always false.
30174         Remove bit flipping (bitPat, swt), generated incorrect images when
30175         width/height wasn't a multiple of 8.
30176         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
30177         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
30178         remove flip arg.
30180 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
30182         * lisp/emacs-lisp/package.el: Be more careful with the init file.
30183         (package--ensure-init-file): Check that user-init-file is set,
30184         exists, is readable, and is writable.  (Bug#20584)
30185         Also expand the docstring.
30187 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
30189         Sync with upstream verilog-mode revision 6232468
30190         * lisp/progmodes/verilog-mode.el
30191         (verilog-font-lock-grouping-keywords-face)
30192         (verilog-highlight-grouping-keywords): Fix use of face when
30193         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
30194         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
30195         parent is reset, bug906.  Reported by Ken Schmidt.
30196         (verilog-auto-inout-module): Add fourth regexp argument to
30197         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
30198         Reported by John Tillema.
30199         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
30200         modport if signal attachment is itself a modport.  Reported by
30201         Matthew Lovell.
30202         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
30203         always_comb and always_latch, bug844.  Reported by Greg Hilton.
30204         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
30205         with many curly-bracket pairs, bug663.
30206         (verilog-set-auto-endcomments): Fix end comments for functions of
30207         type void, etc.  Reported by Alex Reed.
30208         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
30209         caused by indent-line-to deleting tabls pre 24.5.
30210         (verilog-nameable-item-re): Fix nameable items that can have an
30211         end-identifier to include endchecker, endgroup, endprogram,
30212         endproperty, and endsequence.  Reported by Alex Reed.
30213         (verilog-label-be): When auto-commenting a buffer, consider
30214         auto-comments on all known keywords (not just a subset thereof).
30215         Reported by Alex Reed.
30216         (verilog-auto-end-comment-lines-re)
30217         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
30218         Automatically comment property/endproperty blocks to match other
30219         similar blocks like sequence/endsequence, function/endfunction, etc.
30220         Reported by Alex Reed.
30221         (verilog-set-auto-endcomments): Detect the function- or task-name
30222         when auto-commenting blocks that lack an explicit portlist.
30223         Reported by Alex Reed.
30224         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
30225         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
30226         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
30227         is nil, fix indenting initial/final to match always statements,
30228         bug825.  Reported by Tim Clapp.
30229         (verilog-extended-complete-re): Fix indentation of DPI-C imports
30230         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
30231         Mao and Jason Forkey.
30232         (verilog-read-decls): Fix parsing typed interfaces.  Fix
30233         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
30234         Fix localparam not being ignored in AUTOINSTPARAM,
30235         bug889.  Reported by Shannon Hill.
30236         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
30237         bug793.  Reported by Pierre-David Pfister.
30238         (verilog-auto-arg-format, verilog-auto-arg-ports):
30239         Add verilog-auto-arg-format to support newlines in AUTOARG.
30240         Reported by Jie Xiao.
30241         (verilog-batch-execute-func): Do not batch re-auto files loaded by
30242         Local Variables.  Fix printing "no changes to be saved" with
30243         verilog-batch.  Reported by Dan Dever.
30244         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
30245         interface-only modules, bug721.  Reported by Dean Hoyt.
30246         Author: Alex Reed <acreed4@gmail.com>
30247         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
30248         Don't treat '<keyword>:<identifier>' as the start of a labeled
30249         statement, bug905.  Reported by Enzo Chi.
30250         (verilog-directive-re, verilog-compiler-directives)
30251         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
30252         directives (plus some extras) when determining indentation, bug
30253         901.  Reported by Bernd Beuster.
30254         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
30255         iff expression doesn't start with word-character, bug900.
30256         (verilog-optional-signed-range-re, verilog-optional-signed-re):
30257         Fix incorrect indentation/alignment of unsigned declarations,
30258         bug897.
30259         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
30260         always constructs, bug895.
30261         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
30262         Reported by Eric Mastromarchi.
30263         (verilog-beg-of-statement): Fix indenting for some forms of
30264         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
30265         continued assignment incorrect if first line ends with ']', bug437.
30266         Reported by Dan Dever.  Fix indention of cover inside an
30267         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
30268         blocks, bug842.
30269         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
30270         Reported by Kaushal Modi.
30271         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
30272         (verilog-backward-token): Fix indenting sensitivity lists with
30273         named events, bug840.  Reed.
30274         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
30275         nil not honoring 'forever', 'foreach', and 'do' keywords.
30277 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
30279         Check for invalid GTK+ monitor scales
30280         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
30281         INT_MAX for too-large scales.  All callers changed to assume the
30282         result is valid (Bug#20432).
30283         (xg_frame_set_char_size, xg_update_scrollbar_pos):
30284         Calculate scale only if needed.
30285         Show ASCII approximations instead.
30287 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
30289         Fix daemon crashes when linum-mode is turned on early on
30290         * src/window.c (Fwindow_end): Don't try calling display engine
30291         functions on initial-frame frame.  (Bug#20565)
30293         Fix selective diff browsing in Ediff
30294         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
30295         Go to the beginning of the region before searching for the
30296         ediff-regexp-focus-* regexps.  (Bug#20568)
30298 2015-05-14  Jan D  <jan.h.d@swipnet.se>
30300         Fixes bug#20142
30301         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
30302         arrive in the main loop, even for Gtk 3 (Bug#20142).
30304         Don't access display after i/o error (Bug#19147).
30305         * src/xterm.c (x_connection_closed): Add third arg ioerror.
30306         If ioerror, set display to 0 (Bug#19147).
30307         (x_error_quitter): Call x_connection_closed with third arg false.
30308         (x_io_error_quitter): Call x_connection_closed with third arg true.
30310         Handle GTK_SCALE, fixes Bug#20432.
30311         * src/gtkutil.c (xg_get_gdk_scale): New function.
30312         (xg_frame_set_char_size)
30313         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
30314         (xg_get_default_scrollbar_height)
30315         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
30316         when setting sizes (Bug#20432).
30318 2015-05-13  Leo Liu  <sdl.web@gmail.com>
30320         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
30322 2015-05-13  Glenn Morris  <rgm@gnu.org>
30324         Fix bootstrap (void function cl-member).
30325         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
30326         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
30328 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
30330         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
30331         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
30332         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
30333         Avoid defalias for closures which are not immutable.
30334         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
30335         the dispatchers table with various entries.
30336         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
30337         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
30339 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
30341         Improve tagging of C bindings in DEFVAR_*
30342         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
30343         from DEFVAR_*.
30345 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
30347         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
30349 2015-05-12  Glenn Morris  <rgm@gnu.org>
30351         * lisp/progmodes/tcl.el (tcl-filter):
30352         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
30354         Add basic VC push support
30355         * lisp/vc/vc.el (vc-push): New autoloaded command.
30356         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
30357         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
30358         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
30359         (vc-bzr-push): New.
30360         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
30361         (vc-git-pull): Reimplement using vc-git--pushpull.
30362         (vc-git-push): New.
30363         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
30364         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
30365         * doc/emacs/maintaining.texi (Pulling / Pushing):
30366         Rename from "VC Pull".  Mention pushing.
30367         (VC With A Merging VCS, VC Change Log): Update xrefs.
30368         (Branches): Update menu.
30369         * doc/emacs/emacs.texi: Update menu.
30370         * etc/NEWS: Mention this.
30372 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
30374         Improve the seq pcase pattern and the `seq-let' macro
30375         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
30376         object is a sequence, and binds each element of ARGS to the
30377         corresponding element of the sequence.
30379 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
30381         Fix tags created from DEFVAR_* declarations in C
30382         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
30383         to make tags extracted from DEFVAR_* declarations more accurate.
30385         Add a test suite for etags
30386         * test/etags/: New test suite, adapted from
30387         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
30388         whose original author is Francesco Potortì <pot@gnu.org>.
30390         Fix tagging of symbols in C enumerations
30391         * lib-src/etags.c (consider_token): Don't tag symbols in
30392         expressions that assign values to enum constants.  See
30393         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
30394         for details.
30395         (C_entries): Reset fvdef to fvnone after processing a preprocessor
30396         conditional and after a comma outside of parentheses.
30398 2015-05-12  Glenn Morris  <rgm@gnu.org>
30400         * lisp/url/url-handlers.el (url-file-name-completion)
30401         (url-file-name-all-completions): Silence compiler.
30403         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
30405         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
30407 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
30409         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
30410         (cl--generic-mandatory-args): Remove.
30411         (cl--generic-split-args): New function.
30412         (cl-generic-define, cl--generic-lambda): Use it.
30413         (cl-generic-define-method): Use it as well, and add support for
30414         context args.
30415         (cl--generic-get-dispatcher): Handle &context dispatch.
30416         (cl--generic-cache-miss): `dispatch-arg' can now be a
30417         context expression.
30418         (cl--generic-dispatchers): Pre-fill.
30419         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
30420         New test.
30422 2015-05-11  Glenn Morris  <rgm@gnu.org>
30424         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
30426 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
30428         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
30429         * lisp/term/rxvt.el: Require term/xterm.
30430         (rxvt-function-map): Use xterm-rxvt-function-map.
30431         (rxvt-standard-colors): Move before first use.
30432         (terminal-init-rxvt): Use xterm--push-map and
30433         xterm-register-default-colors.
30434         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
30435         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
30436         Move shared bindings between rxvt and xterm to it.
30437         (xterm-function-map): Use it.  Move the xterm-paste binding to
30438         xterm-rxvt-function-map (bug#20444).
30439         (xterm-standard-colors): Move before first use.
30440         (xterm--push-map): New function.
30441         (xterm-register-default-colors): Take standard colors as argument.
30442         (terminal-init-xterm): Use it.  Adjust call to
30443         xterm-register-default-colors.
30445 2015-05-11  Glenn Morris  <rgm@gnu.org>
30447         * lisp/term/x-win.el: Quieten --without-x compilation.
30448         (x-own-selection-internal, x-disown-selection-internal)
30449         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
30450         Declare.
30452         * Makefile.in (emacslog): Remove srcdir.
30453         (ChangeLog): Update for the above.
30455 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
30457         python.el: better limit for looking-back calls
30458         * lisp/progmodes/python.el (python-shell-accept-process-output):
30459         Use last comint prompt start as limit for looking-back.
30461 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
30463         CEDET (srecode-insert-fcn): Fix use of oref on a class
30464         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
30465         on a class.  Reported by Pierre Lorenzon.
30466         (srecode-template-inserter-point): Remove declaration.
30468         CEDET (srecode-create-dictionary): Avoid obsolete object name
30469         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
30470         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
30472 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
30474         C-x 8 shorthands for curved quotes, Euro, etc.
30475         Although C-x 8 lets you insert arbitrary Unicode characters,
30476         it's awkward to use this to insert commonly used symbols such as curved
30477         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
30478         characters commonly found in English text and in basic math.
30479         For example, assuming the Alt key works on your keyboard and iso-transl
30480         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
30481         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
30482         (Bug#20499)
30483         * doc/emacs/mule.texi (Unibyte Mode):
30484         A few other printing characters now work too.
30485         * etc/NEWS: Document this.
30486         * lisp/international/iso-transl.el (iso-transl-char-map):
30487         Also support the following characters:
30488         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
30490 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
30492         Add xref-find-regexp
30493         * lisp/progmodes/xref.el (xref-find-function): Describe the
30494         `matches' action.
30495         (xref-find-regexp): New command, using it.
30496         (xref-collect-references): Rename to xref-collect-matches.
30497         (xref--collect-reference): Rename to xref--collect-match.
30498         (xref-collect-matches, xref--collect-match): Accept new argument,
30499         KIND.  Update accordingly.
30500         (xref--regexp-to-extended): New function.
30501         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
30502         `matches' action.
30503         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
30504         * lisp/progmodes/etags.el (etags-xref-find):
30505         Support the `matches' action.
30506         (etags--xref-find-matches): New function.
30508 2015-05-10  Glenn Morris  <rgm@gnu.org>
30510         * Makefile.in: Fixes for recent change-history changes.
30511         (change-history-nocommit): Update footer regexp.
30512         Ensure output script stays executable.
30514 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
30516         New version of `seq-let' based on a pcase pattern
30517         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
30518         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
30520 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
30522         Add basic HTML5 tags and a template
30523         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
30524         (html-tag-alist): Add HTML5 tags.
30525         (html-tag-help): Add new tags descriptions.
30526         (html-navigational-links): Template for nav links.
30527         (html-html5-template): Template for a HTML5 page.
30529 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
30531         semantic/symref/grep: Don't use word boundaries
30532         * lisp/cedet/semantic/symref/grep.el
30533         (semantic-symref-perform-search): Instead of wrapping input in
30534         word boundaries, check that the characters before and after are
30535         not word constituents.
30537         semantic/symref/grep: Support regexp search
30538         * lisp/cedet/semantic/symref.el
30539         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
30540         the search type is regexp.
30541         * lisp/cedet/semantic/symref/grep.el
30542         (semantic-symref-perform-search): Support the regexp search type.
30543         Pass -E to Grep when it's used.
30545         semantic-symref-regexp: Allow to input an arbitrary string
30546         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
30547         Allow to input an arbitrary string interactively.
30549         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
30550         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
30551         Remove tag-symbol-match-p from the default value
30552         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
30554         Declare find-tag obsolete
30555         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
30556         xref-find-definitions.
30558 2015-05-10  Jan D  <jan.h.d@swipnet.se>
30560         Draw composite string correctly (Bug#20537)
30561         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
30562         New function.
30563         (ns_draw_glyph_string): Call it.
30565 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
30567         Avoid infloop in ERC
30568         * lisp/simple.el (line-move-to-column): Ignore field boundaries
30569         while computing line beginning position.  (Bug#20498)
30571 2015-05-08  Glenn Morris  <rgm@gnu.org>
30573         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
30574         * build-aux/gitlog-to-emacslog: Check called from right directory.
30575         (srcprefix): Remove.
30577         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
30578         * Makefile.in (ChangeLog): No longer pass "distprefix".
30579         * make-dist: Update "make ChangeLog" syntax for the above change.
30581         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
30582         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
30584         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
30586         Add command-line option-parsing to gitlog-to-emacslog
30587         * build-aux/gitlog-to-emacslog: Add command-line options.
30588         By default, refuse to remove an existing output file.
30589         * Makefile.in (CHANGELOG): Update default.
30590         (ChangeLog): Do not test for existing file.
30591         (change-history-nocommit): Ensure temp file does not exist.
30593         Quieten --without-x compilation
30594         * lisp/term/common-win.el: Provide a feature.
30595         * lisp/term/x-win.el (term/common-win): Require it.
30597         * lisp/dired-aux.el (dired-do-print): Require lpr.
30599         Quieten compilation, eg in --without-x builds
30600         * lisp/dired-aux.el (lpr-printer-switch):
30601         * lisp/frame.el (tool-bar-height):
30602         * lisp/linum.el (font-info):
30603         * lisp/window.el (font-info, overflow-newline-into-fringe)
30604         (tool-bar-height):
30605         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
30606         * lisp/gnus/gnus-util.el (iswitchb-mode):
30607         * lisp/mail/rmailmm.el (libxml-parse-html-region):
30608         * lisp/net/nsm.el (gnutls-peer-status)
30609         (gnutls-peer-status-warning-describe):
30610         * lisp/net/shr.el (libxml-parse-xml-region):
30611         * lisp/url/url-http.el (gnutls-peer-status): Declare.
30613 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
30615         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
30616         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
30617         `subclass' since they're never called with a class.
30618         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
30619         srecode-dictionary-child-p.
30621 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
30623         * lisp/help.el (help--binding-locus): Document argument POSITION.
30624         (Bug#20530)
30626 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
30628         Merge from gnulib
30629         * doc/misc/texinfo.tex: Get latest version.
30631 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
30633         ffap.el (ffap-read-file-or-url): Fix completing-read call
30634         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
30635         `completing-read' should be a symbol.
30637 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
30639         Verify file modifications by other programs
30640         * src/filelock.c (lock_file): Check whether the file was modified
30641         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
30643         Fix keyboard macros that include function keys
30644         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
30645         keys in the macro before returning.  (Bug#20454)
30647 2015-05-08  Glenn Morris  <rgm@gnu.org>
30649         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
30650         "Copyright-paperwork-exempt".  (Bug#20324)
30652         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
30653         (log-edit-rewrite-tiny-change): New variable.
30654         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
30655         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
30656         * etc/NEWS: Mention this.
30658         * lisp/calc/calc.el (math-zerop): Declare.
30660         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
30662 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
30664         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
30665         Support the case when BINDINGS is a single tuple.  (Bug#20525)
30667         * etc/NEWS: Fix typo in previous commit
30668         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
30670 2015-05-07  Jan D  <jan.h.d@swipnet.se>
30672         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
30673         Output URL to Gtk+ bug (Bug#20452).
30675         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
30677 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
30679         * lisp/emacs-lisp/package.el: New "external" package status.
30680         An external package is any installed package that's not built-in
30681         and not from `package-user-dir', which usually means it's from an
30682         entry in `package-directory-list'.  They are treated much like
30683         built-in packages, in that they cannot be through the Package Menu
30684         deleted and are not considered for upgrades.
30685         (package-desc-status): Identify if a package is installed outside
30686         `package-user-dir'.
30687         (package-menu--print-info-simple)
30688         (package-menu--status-predicate): Add support for it.
30689         * etc/NEWS: Document it.
30691 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
30693         * lisp/mail/rmail.el: Use lexical-binding.
30694         (rmail-bury): Remove unused var `buffer-to-bury'.
30695         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
30696         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
30697         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
30698         (rmail-insert-inbox-text): Remove unused var `movemail'.
30699         (rmail-add-mbox-headers): Remove unused var `limit'.
30700         (rmail-undelete-previous-message): Remove unused var `value'.
30701         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
30702         `resent-reply-to'.
30703         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
30704         (rmail-restore-desktop-buffer): Rename arguments.
30706 2015-05-06  Glenn Morris  <rgm@gnu.org>
30708         * Makefile.in (change-history-commit): Add missing piece of previous.
30710         Avoid unnecessary bumping of Makefile.in's timestamp
30711         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
30712         (emacslog): New variable.
30713         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
30714         (unchanged-history-files): Use $emacslog rather than Makefile.in.
30715         (change-history-nocommit): Store hash in $emacslog.
30716         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
30717         * admin/update_autogen (changelog_files): Update for the above.
30719         * Makefile.in: Don't always insist on removing existing "ChangeLog".
30720         (CHANGELOG): New variable.
30721         (no-ChangeLog): Remove.
30722         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
30723         (change-history-nocommit): Use a temp file rather than insisting
30724         on deletion of any existing "ChangeLog".
30726         * build-aux/gitlog-to-emacslog: Allow specification of output.
30728         * admin/update_autogen: Add option to update ChangeLog.
30729         (usage): Mention -H.
30730         (changelog_flag, changelog_n, changelog_files): New variables.
30731         (main): Check for -H, and maybe run change-history-nocommit.
30733 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
30735         * lisp/subr.el (delete-dups): Pre-size the hashtable.
30737         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
30738         cl--arglist-args is defined (bug#20517).
30740 2015-05-06  Glenn Morris  <rgm@gnu.org>
30742         * Makefile.in (change-history-nocommit): New.
30744 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
30746         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
30747         timer when it is non-nil
30748         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
30750 2015-05-06  Glenn Morris  <rgm@gnu.org>
30752         Quieten CEDET compilation
30753         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
30754         Invert fboundp test to quieten on current Emacs.
30755         * lisp/cedet/ede/config.el (ede-shell-run-something)
30756         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
30757         (semanticdb-refresh-table): Declare.
30758         (ede-preprocessor-map): Require semantic/db.
30760         Quieten cc-mode compilation
30761         * lisp/progmodes/cc-awk.el (c-forward-sws):
30762         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
30763         Declare.
30765 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
30767         * lisp/subr.el (delete-dups): Avoid nreverse.
30769 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
30771         * lisp/subr.el (delete-dups): Make it destructive again.
30773 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
30775         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
30777 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
30779         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
30780         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
30781         (testcover--read): Rename from testcover-read.  Change calling
30782         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
30783         is gone.
30784         (testcover-start): Use add-function.  Move edebug-all-defs binding to
30785         testcover--read.
30786         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
30787         (testcover-mark): Remove unused var `item'.
30788         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
30790 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
30792         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
30793           use a hash table.  This can result in ~500 times speed-up for typical
30794           collections of size 5000, like that of `load-library'.
30796 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
30798         CEDET: Avoid `oref' on classes in a few more cases
30799         * lisp/cedet/ede/generic.el (ede-find-target):
30800         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
30801         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
30802         var `prefix'.
30804         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
30805         (grepflags, greppattern): Declare.
30806         (semantic-symref-perform-search): Remove unused var `pat'.
30808         CEDET (srecode-compile-inserter): Avoid `oref' on classes
30809         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
30810         Avoid `oref' on classes (bug#20491).
30811         (srecode-compile-split-code): Remove unused var `key'.
30813 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
30815         Clean up pulse.el a little
30816         * lisp/cedet/pulse.el (pulse): Remove.
30817         (pulse-momentary-timer): Save instead of the stop time.
30818         (pulse-momentary-highlight-overlay):
30819         Call pulse-momentary-unhighlight first thing.
30820         Treat pulse-momentary-overlay as a single value, not a list.
30821         Save the created timer.  Only pass the stop time to the timer.
30822         (pulse-tick): Update accordingly.
30823         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
30824         single value.  Cancel the timer.
30826 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
30828         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
30829         Support the biblatex journaltitle field.
30831 2015-05-05  Glenn Morris  <rgm@gnu.org>
30833         Minor declare-function improvement
30834         * lisp/emacs-lisp/bytecomp.el
30835         (byte-compile-macroexpand-declare-function):
30836         Handle declarations after calls.  (Bug#20509)
30838         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
30840         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
30842 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
30844         Pulse using a timer
30845         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
30846         (pulse-momentary-highlight-overlay): Set up the timer instead of
30847         calling `pulse'
30848         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
30849         (pulse-tick): New function.
30850         (pulse-momentary-unhighlight): Cut off the stop time.
30851         (pulse-delay): Update the docstring WRT to not using sit-for.
30853         Add semantic/symref/grep file patterns for ruby-mode
30854         * lisp/cedet/semantic/symref/grep.el
30855         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
30856         Clarify the docstring.
30858         Don't require match
30859         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
30860         match.  That doesn't work for every command, and some identifier
30861         completion tables are bound to be imperfect anyway.
30863 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
30865         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
30866         (semantic-grammar--template-expand): New function.
30867         (semantic-grammar-header, semantic-grammar-footer): Use it.
30868         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
30869         (semantic-grammar-file-regexp): Refine regexp.
30870         (semantic-grammar-eldoc-get-macro-docstring):
30871         Use elisp-get-fnsym-args-string when available.
30872         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
30873         instead of the old eldoc-* names.
30874         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
30875         from elisp-mode.el.  Tweak calling convention.
30876         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
30877         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
30878         elisp--get-fnsym-args-string.
30879         (elisp--highlight-function-argument): Add `prefix' arg.
30880         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
30881         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
30883 2015-05-05  Glenn Morris  <rgm@gnu.org>
30885         * lisp/help-fns.el (describe-function-1):
30886         Handle builtins with advertised calling conventions.  (Bug#20479)
30888 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
30890         Merge branch 'seq-let'
30892         Update `seq-let' documentation
30893         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
30894         with the support of  `&rest'.
30896         Add support for &rest in `seq-let'
30897         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
30898         in the argument list.
30899         * test/automated/seq-tests.el: Add a test for parsing and binding
30900         `&rest' in `seq-let'.
30902 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
30904         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
30905         Add missing increment (Bug#20467).
30906         (eieio-object-value-create): Adjust to new slots representation
30907         (Bug#20467).
30908         (eieio-object-value-create): Fix missed adjustment to new
30909         representation of slots metadata.
30911 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
30913         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
30915 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
30917         Work around "Attempt to modify read-only object"
30918         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
30919         elisp--xref-find-definitions, to work around "Attempt to modify
30920         read-only object" error.
30922         Only skip some variables that have function counterparts
30923         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
30924         Only skip minor-mode-named variable if it's defined in a Lisp
30925         file, and it's in minor-mode-list (bug#20506).
30926         * test/automated/elisp-mode-tests.el
30927         (elisp-xref-finds-both-function-and-variable)
30928         (elisp-xref-finds-only-function-for-minor-mode): New tests.
30930 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
30932         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
30933         previous change.
30934         (xref--insert-xrefs): Buttonize the whole line, including the
30935         number at the beginning.
30937         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
30938         Make sure we're inside the let bindings.
30939         * test/automated/elisp-mode-tests.el
30940         (elisp-completes-functions-after-let-bindings): New test.
30942 2015-05-04  Glenn Morris  <rgm@gnu.org>
30944         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
30945         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
30946         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
30947         Remove outdated declarations.
30949         Replace instances of "(eval-when-compile (autoload ...))"
30950         * lisp/gnus/gnus-art.el (nneething-get-file-name):
30951         Declare rather than autoload.
30952         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
30953         Remove pointless autoload.
30954         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
30955         (gnus-topic-create-topic, gnus-topic-enter-dribble):
30956         Declare rather than autoload.
30957         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
30958         (mailcap-extension-to-mime): Autoload at run-time.
30959         * lisp/gnus/mm-util.el (latin-unity-massage-name)
30960         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
30961         (latin-unity-representations-present-region):
30962         Declare rather than autoload.
30963         * lisp/gnus/mml-smime.el (epg-make-context)
30964         (epg-passphrase-callback-function): Autoload at run-time.
30965         (epg-context-set-signers, epg-context-result-for)
30966         (epg-new-signature-digest-algorithm)
30967         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
30968         (epg-sign-string, epg-encrypt-string)
30969         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
30970         (epg-configuration, epg-expand-group, epa-select-keys):
30971         Declare rather than autoload.
30972         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
30973         Autoload at run-time.
30974         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
30975         (gnus-registry-get-id-key, gnus-registry-action):
30976         Declare rather than autoload.
30977         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
30978         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
30979         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
30980         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
30981         (spam-stat-split-fancy): Remove pointless autoloads.
30982         * lisp/net/mairix.el: Load gnus-util when compiling.
30983         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
30984         (message-field-value): Declare rather than autoload.
30985         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
30986         Check gnus-alive-p is fbound.
30987         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
30988         (vm-check-for-killed-summary, vm-error-if-folder-empty)
30989         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
30990         Declare rather than autoload.
30992         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
30994         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
30995         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
30997         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
30999         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
31001         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
31002         * lisp/emacs-lisp/package.el (epg-signature-status):
31003         Fix declarations.
31005         * lisp/play/gametree.el (gametree-show-children-and-entry)
31006         (gametree-apply-layout, gametree-mouse-show-subtree)
31007         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
31009         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
31010         Handle cl-defgeneric, cl-defmethod.
31012 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
31014         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
31015         Highlight both type and symbol name.
31017         Insert, highlight and align line numbers in xref output
31018         * lisp/progmodes/etags.el (xref-location-line): Specialize for
31019         xref-etags-location.
31020         * lisp/progmodes/xref.el (xref-location-line): New generic method.
31021         (xref-file-location): Add reader for the line slot.
31022         (xref--location-at-point): Skip to the `xref-location' property.
31023         (xref--collect-reference): Drop the line number from description.
31024         (xref--insert-xrefs): Insert, highlight and align line numbers.
31026 2015-05-04  Daniel Colascione  <dancol@dancol.org>
31028         * lisp/simple.el (save-mark-and-excursion--save)
31029         (save-mark-and-excursion--restore): Fix previous commit
31030         (255a011f0ecf004b31c59945b10154b10fac3af1).
31032 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
31034         Don't pulse the indentation, or the newline
31035         * lisp/cedet/pulse.el (pulse-lighten-highlight)
31036         (pulse-reset-face): Fall back to the inherited background
31037         attribute in FACE.
31038         (pulse-momentary-highlight-region): Add autoload cookie.
31039         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
31040         indentation, or the newline, if the line's non-empty
31041         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
31043 2015-05-04  Daniel Colascione  <dancol@dancol.org>
31045         Add `save-mark-and-excursion', which has the old
31046         `save-excursion' behavior
31047         * doc/lispref/positions.texi (Excursions):
31048         Document `save-mark-and-excursion'.
31049         * lisp/font-lock.el (font-lock-fontify-block):
31050         Use `save-mark-and-excursion' instead of `save-excursion',
31051         restoring Emacs 24 behavior.
31052         * lisp/simple.el (save-mark-and-excursion--save)
31053         (save-mark-and-excursion--restore): New functions.
31054         (save-mark-and-excursion): New user macro.
31055         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
31056         in `save-excursion' documentation.
31058 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
31060         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
31061         Classify lone symbol inside let varlist as variable.
31062         * test/automated/elisp-mode-tests.el
31063         (completest-variables-in-let-bindings): New test.
31065         Add xref-pulse-on-jump
31066         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
31067         Add autoload cookie.
31068         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
31069         (xref--maybe-pulse): New function.
31070         (xref-pop-marker-stack, xref--pop-to-location)
31071         (xref--display-position): Use it.
31072         (xref--location-at-point): Use back-to-indentation.
31074 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
31076         lisp/org/org-{macs,list}.el: Fix lexical warnings
31077         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
31078         (org-list-get-next-item, org-list-get-prev-item)
31079         (org-list-get-children): Mark unused arg `struct'.
31080         (org-list-use-alpha-bul-p): Remove unused var `bul'.
31081         (org-toggle-checkbox): Mark unused var.
31082         (org-update-checkbox-count): Remove unused var `box-num'.
31083         (org-adapt-indentation): Declare.
31084         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
31085         (org-list-send-list): Remove unused var `txt'.
31086         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
31087         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
31088         * lisp/org/org-macs.el: Use `declare'.
31089         (org-with-limited-levels): Declare dyn-bound vars.
31091 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
31093         Fix minor issues with CEDET on MS-Windows
31094         * lisp/cedet/semantic/symref/idutils.el
31095         (semantic-symref-parse-tool-output-one-line): Fix the search
31096         regexp to match MS-Windows file names with drive letters.
31097         (Bug#19468)
31098         * lisp/cedet/semantic/symref/grep.el
31099         (semantic-symref-grep-use-template): Remove "--color=always" from
31100         Grep switches on MS-Windows.
31101         (semantic-symref-grep-shell): Use shell-file-name as the default
31102         value, so this works not only on Posix platforms.
31103         (semantic-symref-perform-search): Use shell-quote-argument instead
31104         of literal '..' for portable quoting of Grep command-line
31105         argument.  Use shell-command-switch instead of a literal "-c".
31106         * lisp/cedet/semantic/bovine/gcc.el
31107         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
31108         for an absolute file name in a portable way.
31110 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
31112         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
31113         (package-import-keyring, package-refresh-contents)
31114         (package-compute-transaction, package--save-selected-packages)
31115         (package-install-from-archive, package-delete)
31116         (package-menu--perform-transaction): Use `inhibit-message' instead.
31117         (package--compile): Set `warning-minimum-level' to :error.
31119 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
31121         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
31122         (terminal-init-screen): Use it (bug#20356).
31123         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
31124         (xterm--extra-capabilities-type): New const.
31125         (xterm-extra-capabilities): Use it.
31126         (xterm--version-handler): Lower the pseudo-version for `screen'.
31128 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
31130         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
31131         Always insert a newline at the end (to avoid mouse-face background
31132         tail at the last line).
31134         elisp-completion-at-point: Prioritize being quoted over funpos
31135         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
31136         Only consider function position when not inside quoted form
31137         (bug#20425).
31138         * test/automated/elisp-mode-tests.el: New file.
31140         Stop vc-print-log from jumping to the top
31141         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
31142         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
31143         is not specified.
31144         (vc-incoming-outgoing-internal): Always pass nil.
31145         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
31146         call it, and don't set vc-sentinel-movepoint (bug#15322).
31147         (vc-print-root-log): Don't fetch the root working revision, nor
31148         pass it to vc-print-log-internal.
31150 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
31152         Fix display of keyboard layouts for right-to-left scripts
31153         * lisp/international/quail.el (quail-insert-kbd-layout):
31154         Force left-to-right paragraph direction.
31156 2015-05-02  K. Handa  <handa@gnu.org>
31158         * src/cmds.c (internal_self_insert): When we insert spaces for
31159         padding, set point before the padding spaces, not after them.
31161 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
31163         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
31165 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
31167         Fix etags-xref-find for references
31168         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
31169         Use `cl-mapcan'.
31170         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
31171         directory if no tags tables are loaded (bug#19468).
31173 2015-05-02  Philipp Stephani  <phst@google.com>
31175         Update the options in whitespace-style defcustom
31176         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
31177         `repeat' because the option is really set-like.  Add missing
31178         options.  Reorder options to match the order in the
31179         documentation.  (Bug#20346)
31181 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
31183         Fix error diagnostics of c-macro-expand
31184         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
31185         too early if no start-marker string was found -- that generally
31186         means cpp exited abnormally, and we still want to show its error
31187         messages to the user.
31189         Don't require Texinfo 5.0 for Emacs documentation
31190         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
31191         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
31192         "@codequoteundirected on", respectively, to avoid requiring
31193         Texinfo 5.x for Emacs documentation.
31195 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
31197         * lisp/files.el (pwd):
31198         When called with a prefix argument, insert the current default
31199         directory at point.
31201 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
31203         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
31204         * lisp/isearch.el (isearch-mode-map): Don't inhibit
31205         function-key-map remapping for backspace (bug#20466).
31207 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
31209         Implement xref-find-references in etags and elisp-mode
31210         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
31211         (elisp-xref-find): Use it.
31212         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
31213         * lisp/progmodes/xref.el (xref-collect-references):
31214         (xref--collect-reference): New functions.
31216 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
31218         Prefer plain characters to Texinfo circumlocutions
31219         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
31220         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
31222         Fix single-quoting style in PDF manuals
31223         The PDF versions of the GNU manuals used curved single quotes to
31224         represent grave accent and apostrophe, which made it a pain to cut
31225         and paste code examples from them.  Fix the PDF versions to use
31226         grave accent and apostrophe for Lisp source code, keystrokes, etc.
31227         This change does not affect the info files, nor does it affect
31228         ordinary uses of curved single quotes in PDF.
31229         * doc/emacs/docstyle.texi: New file, which specifies treatment for
31230         grave accent and apostrophe, as well as the document encoding.
31231         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
31232         * doc/lispintro/emacs-lisp-intro.texi:
31233         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
31234         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
31235         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
31236         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
31237         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
31238         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
31239         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
31240         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
31241         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
31242         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
31243         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
31244         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
31245         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
31246         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
31247         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
31248         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
31249         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
31250         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
31251         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
31252         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
31253         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
31254         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
31255         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
31256         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
31257         * doc/misc/woman.texi:
31258         Use it instead of '@documentencoding UTF-8', to lessen the need for
31259         global changes like this in the future.
31260         * doc/emacs/Makefile.in (EMACS_XTRA):
31261         * doc/lispintro/Makefile.in (srcs):
31262         * doc/lispref/Makefile.in (srcs):
31263         Add dependency on docstyle.texi.
31264         * doc/misc/Makefile.in (style): New macro.
31265         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
31266         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
31267         Use it.
31269 2015-05-01  Glenn Morris  <rgm@gnu.org>
31271         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
31273         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
31274         (help-fns--signature): Declare.
31276         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
31278 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
31280         New macro seq-let, providing destructuring support to seq.el
31281         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
31282         to `cl-destructuring-bind' but works on all sequence types supported
31283         by `seq.el'.  Bump version number to 1.6.
31284         * test/automated/seq-tests.el: Add tests for seq-let.
31285         * doc/lispref/sequences.texi: Add documentation for seq-let.
31287 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
31289         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
31291 2015-05-01  Glenn Morris  <rgm@gnu.org>
31293         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
31295 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
31297         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
31298         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
31299         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
31300         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
31301         (Bug#20445).
31303 2015-05-01  K. Handa  <handa@gnu.org>
31305         * lisp/international/mule-cmds.el (input-method-use-echo-area):
31306         Change :type to 'boolean.
31308 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
31310         Start using proportional fonts in eww by default
31311         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
31312         it seems to work well.
31314         Fix links in tables in shr
31315         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
31316         makes (some) links in tables not work.
31318 2015-05-01  Jan D  <jan.h.d@swipnet.se>
31320         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
31322 2015-04-30  Glenn Morris  <rgm@gnu.org>
31324         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
31325         Update for 2015-02-08 change to indirect-function.
31327         * lisp/term/ns-win.el (ns-get-selection-internal):
31328         Remove declaration for function deleted 2014-10-21.
31330         * lisp/dom.el: Load subr-x when compiling, for when-let.
31332         Silence some compilation warnings
31333         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
31334         * lisp/emulation/cua-base.el (delete-active-region):
31335         * lisp/net/net-utils.el (w32-get-console-output-codepage):
31336         * lisp/term/ns-win.el (ns-own-selection-internal)
31337         (ns-disown-selection-internal, ns-selection-owner-p)
31338         (ns-selection-exists-p, ns-get-selection):
31339         Declare for compiler.
31341         Function declaration updates prompted by 'make check-declare'
31342         * lisp/emacs-lisp/package.el (lm-homepage):
31343         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
31344         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
31345         * lisp/gnus/mml.el (libxml-parse-html-region):
31346         * lisp/gnus/nnrss.el (libxml-parse-html-region):
31347         * lisp/net/eww.el (libxml-parse-html-region):
31348         * lisp/net/shr.el (libxml-parse-html-region):
31349         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
31350         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
31351         * lisp/vc/vc-git.el (vc-annotate-convert-time):
31352         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
31353         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
31354         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
31355         Update declaration.
31357         Remove compatibility code for 20-year old function renaming
31358         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
31359         Make it an obsolete alias.
31360         (idlwave-shell-filter): Change all uses to comint-output-filter.
31362 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
31364         Add ace-window face config
31365         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
31366         configuration.
31368 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
31370         Unclutter 'make doc' output a bit
31371         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
31372         Use make subst rather than sh IFS to split target string apart.
31373         This makes 'make' output easier to follow.
31375         Merge from gnulib
31376         * doc/misc/texinfo.tex: Update from gnulib.
31378 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
31380         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
31381         (package-menu--print-info): Obsolete.
31382         (package-menu--print-info-simple): New function.
31383         (package-menu--refresh): Use it, simplify code, and improve
31384         performance.
31385         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
31386         Tiny performance improvement.
31388         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
31390 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
31392         Omit -Wstrict-overflow workaround in GCC 5
31393         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
31394         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
31396         Merge from gnulib
31397         This incorporates:
31398         2015-04-29 extern-inline: no need for workaround in GCC 5.1
31399         2015-04-26 file-has-acl: port to CentOS 6
31400         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
31402 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
31404         Set next-error-* in xref--xref-buffer-mode
31405         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
31406         Set `next-error-function' and `next-error-last-buffer'.
31407         (xref--next-error-function): New function.
31408         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
31410 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
31412         python.el: Fix warnings on looking-back calls missing LIMIT
31413         * lisp/progmodes/python.el (python-shell-accept-process-output):
31414         Pass LIMIT arg to looking-back.
31416 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
31418         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
31419         (package--download-and-read-archives): Use pushnew instead of
31420         append.  If something terrible happened during a previous
31421         download, simply refreshing should now make things work again.
31423 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
31425         Introduce etags-xref-find-definitions-tag-order
31426         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
31427         New variable.
31428         (etags--xref-find-definitions): Use it (bug#19468).
31430 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
31432         PATH- and completion-related fixes in Eshell on MS-Windows
31433         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
31434         MS-Windows, prepend "." to list of directories produced from PATH,
31435         as Windows always implicitly searches the current directory first.
31436         (eshell-force-execution): Make it have a non-nil default value on
31437         MS-Windows and MS-DOS.
31438         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
31439         eshell-force-execution is non-nil, complete on readable files and
31440         directories, not only executables.  When running on MS-Windows,
31441         prepend "." to list of directories produced from PATH, as Windows
31442         always implicitly searches the current directory first.
31444 2015-04-29  Sam Steingold  <sds@gnu.org>
31446         Bury RCIRC buffers when there is no activity
31447         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
31448         (rcirc-bury-buffers): New function.
31449         (rcirc-next-active-buffer): When there is no new activity, use
31450         `rcirc-bury-buffers' to hide all RCIRC buffers.
31452 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
31454         Fix DBUS query result parsing for secrets-search-items
31455         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
31456         parsing.  The function assumed that return value of the
31457         SearchItems method called on a collection is a list of two lists,
31458         however this is true only when no collection is specified.  GNOME
31459         had used to incorrectly return a list of two lists in both cases,
31460         but this was already fixed:
31461         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
31462         incorrect information in the secrets-search-items’ docstring.
31463         (Bug#20449)
31465 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
31467         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
31468         Use `inhibit-message' instead of hiding the previous message
31469         with (message nil).
31471 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
31473         Remove the deprecated INTERNAL_FIELD macro by expanding it
31474         * src/lisp.h (INTERNAL_FIELD): Remove.
31475         (DEFVAR_KBOARD): Modify accordingly.
31476         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
31477         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
31478         * src/buffer.c (compact_buffer): Use BVAR.
31480 2015-04-29  Glenn Morris  <rgm@gnu.org>
31482         Replace an obsolete function alias
31483         * lisp/isearch.el (isearch-yank-x-selection):
31484         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
31485         (mouse-drag-secondary-moving):
31486         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
31487         Replace obsolete alias x-get-selection with gui-get-selection.
31489 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
31491         * lisp/mail/rmailsum.el: Use lexical-binding.
31493 2015-04-29  Glenn Morris  <rgm@gnu.org>
31495         * test/automated/package-test.el (package-test-update-archives-async):
31496         Skip test on hydra.nixos.org.
31498 2015-04-28  Glenn Morris  <rgm@gnu.org>
31500         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
31501         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
31502         (foldout-mouse-hide-or-exit): Use new names for outline functions.
31504         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
31505         Update for 2014-06-26 hideif.el change.
31507         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
31508         (rmail--decode-and-apply): New function.
31509         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
31511         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
31513 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
31515         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
31516         (package-menu--refresh): Delegate obsolete-hiding to
31517         `package--remove-hidden'.
31518         (package--remove-hidden): Disregard high-priority package if it is
31519         older than the installed one.
31521 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
31523         Update source file encoding list
31524         Update admin/notes/unicode, along with coding system cookies in
31525         other files, so that the two match each other better.
31526         * admin/notes/unicode: lisp/language/ethio-util.el and
31527         lisp/language/ethiopic.el also use utf-8-emacs.
31528         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
31529         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
31530         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
31531         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
31532         * etc/refcards/sk-survival.tex:
31533         Add "coding: utf-8" so that this file is not mishandled in a
31534         Latin-1 or Big-5 locale.
31535         * lisp/international/robin.el, lisp/org/ox-ascii.el:
31536         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
31537         * lisp/language/ethio-util.el: Fix trailer.
31539 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
31541         Fix synchronous invocation of Ispell
31542         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
31543         value to ispell-process-directory before calling ispell-init-process.
31544         Don't call set-process-coding-system if ispell-async-processp is nil.
31545         (Bug#20448)
31547 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
31549         * lisp/emacs-lisp/package.el: Skip space and comments in init file
31550         (package--ensure-init-file): Insert snippet at first
31551         non-whitespace non-comments line.  Respects local-vars at the top
31552         of the file.
31554 2015-04-28  Glenn Morris  <rgm@gnu.org>
31556         * lisp/mail/rmail.el (rmail-copy-headers):
31557         Handle rmail-nonignored-headers being nil.  (Bug#18878)
31559         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
31561         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
31562         Don't get confused by a bzrlib version mismatch warning.
31564 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
31566         Change default location of EUDC options file
31567         * etc/NEWS: Document change to EUDC options file's default location.
31568         * lisp/net/eudc-vars.el (eudc-options-file): Use
31569         `locate-user-emacs-file' to change default options file location.
31571 2015-04-27  Glenn Morris  <rgm@gnu.org>
31573         * test/automated/package-test.el (package-test-update-archives-async):
31574         Try to handle the test server script dying.
31576 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31578         * lisp/saveplace.el (save-place-mode): New minor mode.
31579         (save-place): Redefine as an obsolete alias.
31581         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
31582         * lisp/midnight.el: Use lexical-binding.
31583         (midnight-mode): Make it a proper minor mode.
31584         (midnight-buffer-display-time): Make arg non-optional.
31585         (midnight-find): Remove.
31586         (clean-buffer-list-kill-never-regexps)
31587         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
31588         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
31589         contain functions.
31590         (clean-buffer-list): Use cl-find.
31591         Allow clean-buffer-list-kill-never-regexps to contain functions.
31593 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
31595         Bump version of seq.el to 1.5
31596         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
31597         from seq-doseq.  Bump version number of seq.el.
31599 2015-04-27  Glenn Morris  <rgm@gnu.org>
31601         * lisp/mail/rmail.el (rmail-reply):
31602         Decode subject before matching "Re:" prefix.  (Bug#20396)
31604 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
31606         * lisp/emacs-lisp/package.el: Small improvements
31607         (package--with-work-buffer-async): More informative error.
31608         (package-install-user-selected-packages): Rename to
31609         `package-install-selected-packages'.
31611 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31613         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
31614         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
31615         (eieio--class-make): Remove leftover `tag'.
31617 2015-04-27  Glenn Morris  <rgm@gnu.org>
31619         * lisp/gnus/message.el (gnus-extract-address-components):
31620         Remove bogus declaration that was masking previous problem.
31622 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
31624         * lisp/gnus/message.el (message-insert-formatted-citation-line):
31625         Fix typo.  (Bug#20318)
31627 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31629         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
31631         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
31632         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
31633         the buffer in yet another frame.
31634         (reftex-toc-visit-location): Make sure toc-window has focus at the end
31635         when `final' is nil.
31636         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
31637         silence warnings.  Use `--' to clarify that it's internal.
31638         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
31639         (reftex-toc-promote): Clarify unused argument.
31640         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
31641         Add `reftex--' prefix.  Fix all users.
31642         (reftex-toc-promote-prepare): Use _ for dummy variable.
31643         (reftex-toc-restore-region): Rename `m.
31645 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
31647         Fix a typo in bibtex.el
31648         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
31649         last change.  (Bug#20429)
31651         Fix redisplay of frame after loading new fonts
31652         * src/xdisp.c (redisplay_internal): When retrying redisplay of
31653         a frame because new fonts were loaded, disable all redisplay
31654         optimizations on that frame by calling SET_FRAME_GARBAGED.
31655         (Bug#20410)
31657 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
31659         * lisp/info.el (Info-menu): Properly provide the `default'
31660         (Bug#20391)
31662         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
31663         Catch errors from documentation (bug#20418).
31664         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
31666 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
31668         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
31669         Remove redundant ":group 'package".
31671 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
31673         Fix a typo in rmail.el
31674         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
31675         last commit.  (Bug#20429)
31677 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
31679         Introduce xref-prompt-for-identifier
31680         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
31681         (xref--read-identifier): Use it
31682         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
31684 2015-04-26  João Távora  <joaotavora@gmail.com>
31686         `tex-insert-quote' after single `'' opens quotes instead of closing
31687         Without this, it's very hard to precede double quotes with the
31688         apostrophe character, i.e. insert the sequence '``
31689         (quote-backquote-backquote), commonly useful in portuguese, for
31690         instance.
31691         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
31692         preceding chars making `tex-insert-quote' be in the "opening" context.
31694 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
31696         Pass `id' to `completing-read' as def instead of initial input
31697         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
31698         `completing-read' as the default value instead of initial input
31699         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
31701 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
31703         Don't freeze with unreadable processes
31704         Don't freeze if an exiting process can't be read from.  (Bug#19860).
31705         This fixes a bug I introduced in
31706         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
31707         "* process.c: Add sanity checks for file descriptors."
31708         Dmitry Gutov did most of the legwork in finding the problem.
31709         * src/process.c (wait_reading_process_output):
31710         Treat non-running processes that can't be read from
31711         the same as other non-running processes.
31713 2015-04-25  Alan Mackenzie  <acm@muc.de>
31715         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
31716         * lisp/subr.el (remove-yank-excluded-properties): Put
31717         `with-silent-modifications' around only the last three lines of code.
31719 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
31721         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
31722         (package--all-keywords): Deleted variable.
31724         * etc/NEWS: Document package-hiding functionality.
31726 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
31728         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
31730         Clarify the doc string of 'replace-regexp-in-string'
31731         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
31733         Improve doc string of 'insert-buffer-substring'
31734         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
31736         MS-Windows followup for the recent gnulib update
31737         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
31738         acl-internal.c.
31740 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
31742         Spelling fixes
31744         Merge from gnulib
31745         This incorporates:
31746         2015-04-24 file-has-acl: new module, split from acl
31747         2015-04-24 manywarnings: add GCC 5.1 warnings
31748         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
31749         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
31750         2015-04-15 acl: On Linux, check for acls without libacl
31751         2015-04-14 tempname: avoid unused parameter warnings (trivial)
31752         * lib/acl-internal.c: New file, from gnulib.
31753         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
31754         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
31755         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
31756         Update from gnulib.
31758         Port --enable-gcc-warnings to GCC 5.1 x86-64
31759         * lib-src/ebrowse.c (dump_sym):
31760         * lib-src/hexl.c (main):
31761         * src/ccl.c (ccl_driver):
31762         * src/character.c (string_escape_byte8):
31763         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
31764         * src/gnutls.c (Fgnutls_boot):
31765         * src/gtkutil.c (xg_check_special_colors):
31766         * src/image.c (x_build_heuristic_mask):
31767         * src/print.c (safe_debug_print, print_object):
31768         * src/term.c (produce_glyphless_glyph):
31769         * src/xdisp.c (get_next_display_element)
31770         (produce_glyphless_glyph):
31771         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
31772         Don't use a signed format to print an unsigned integer, or vice
31773         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
31774         * src/image.c (png_load_body, jpeg_load_body):
31775         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
31777 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
31779         Add new faces to tsdh-light-theme
31780         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
31781         definitions for Info-quoted, ace-jump-face-foreground,
31782         hl-paren-face, show-paren-match, and show-paren-mismatch.
31784 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
31786         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
31788 2015-04-24  Glenn Morris  <rgm@gnu.org>
31790         * build-aux/gitlog-to-emacslog:
31791         Use raw log format rather than wrapped one.
31793 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
31795         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
31796         (seq-doseq): Fix out-of-scope binding.
31797         Don't call `seq-length at every iteration.
31798         Reduce `if's from 3 to 2 per iteration.
31799         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
31801 2015-04-24  Glenn Morris  <rgm@gnu.org>
31803         * lisp/textmodes/text-mode.el (text-mode-hook):
31804         Move text-mode-hook-identify to default.
31806         * lisp/mouse.el (minor-mode-menu-from-indicator):
31807         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
31809         * lisp/help-fns.el (describe-function): More type checking.
31810         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
31812         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
31813         (Bug#20325)
31815 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
31817         shr: strip leading whitespace when expanding URLs
31818         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
31820 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
31822         Clarify "co-authored" some more
31824         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
31826         Clarify doc strings of functions that search for properties
31827         * src/textprop.c (Fnext_char_property_change)
31828         (Fprevious_char_property_change)
31829         (Fnext_single_char_property_change)
31830         (Fprevious_single_char_property_change, Fnext_property_change)
31831         (Fnext_single_property_change, Fprevious_property_change)
31832         (Fprevious_single_property_change): Clarify doc strings wrt return
31833         value and the optional LIMIT argument.  (Bug#20411)
31835 2015-04-24  Glenn Morris  <rgm@gnu.org>
31837         * test/automated/message-mode-tests.el (message-mode-propertize):
31838         Handle non-writable HOME; eg on hydra.nixos.org.
31840 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
31842         Avoid starting threads by w32-shell-execute
31843         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
31844         local file names, before invoking ShellExecute.  (Bug#20220)
31846 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
31848         Fix following doc-links in `widget-documentation-link-action'
31849         * lisp/wid-edit.el (widget-documentation-link-action): Make
31850         following doc-links less simplistic (Bug#20398).
31852 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
31854         Improve EUDC manual
31855         * doc/misc/eudc.texi (Troubleshooting):
31856         New LDAP troubleshooting subsection.
31858 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
31860         Omit needless "\ " after multibyte then newline
31861         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
31862         (print_object): When print-escape-multibyte is non-nil and a
31863         multibyte character is followed by a newline or formfeed, followed
31864         by a hex digit, don't output a needless "\ " before the hex digit.
31865         * test/automated/print-tests.el (print-hex-backslash): New test.
31867 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
31869         Add a new `inhibit-message' variable
31870         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
31871         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
31872         `inhibit_message' is non-zero.
31873         * etc/NEWS: Add an entry.
31874         * doc/lispref/display.texi: Add an entry for `inhibit-message',
31875         mention it in `message'.
31877 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
31879         Fix last fix in `display-buffer-record-window'.
31880         * lisp/window.el (display-buffer-record-window): Fix last fix.
31882 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
31884         Minor edits in CONTRIBUTE
31885         * CONTRIBUTE: Rearrange instructions about log messages.
31886         Use "Git" capitalized all over.
31887         Use 2 spaces between sentences.
31889 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
31891         * lisp/files.el (basic-save-buffer): Fix argument.
31893         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
31894         In case `(and (null custom-file) init-file-had-error)' do the same
31895         thing we'd do if `(null user-init-file)', which is to either error out
31896         or return nil.  This is in line with `custom-save-all' which would
31897         throw an error in that situation.  (Bug#20355)
31899         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
31900         (package-menu-hide-low-priority): New variable, see its doc.
31901         (package-archive-priorities): Update doc.
31902         (package-desc-priority): New function.
31903         (package-desc-priority-version): Use it.
31904         (package--remove-hidden): New function.
31905         (package-menu--refresh): Use it.
31907         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
31908         (package-menu--hide-obsolete): New variable.
31909         (package--remove-hidden): Use it.
31910         (package-menu-hide-obsolete): New interactive function to toggle
31911         the variable.
31912         (package--quick-help-keys): Document it.
31913         (package-menu-async): Add :version tag.
31914         (package-menu-mode-map): Bind package-menu-hide-obsolete.
31915         (package-desc-status): Indicate non-installed obsolete packages as
31916         avail-obso.
31917         (package-menu-mark-install): Allow installation of avail-obso.
31918         (package-menu--status-predicate): Sort avail-obso with available.
31920 2015-04-22  Alan Mackenzie  <acm@muc.de>
31922         On C-y, stop some text property entries being written into buffer-undo-list
31923         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
31924         `with-silent-modifications'.
31926 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
31928         In display-buffer-record-window record selected window if necessary
31929         * lisp/window.el (display-buffer-record-window): Store selected window
31930         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
31932 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
31934         Fix reftex-citation bug
31935         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
31936         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
31937         integration is enabled and there are no citations in the document
31938         so far.
31940 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
31942         Add or reset based on the presence of MERGE_HEAD
31943         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
31944         `vc-git-resolve-when-done' to `after-save-hook' in either case.
31945         (vc-git-conflicted-files): Add a TODO.
31946         (vc-git-resolve-when-done): Depending on the presence of
31947         MERGE_HEAD, either update the resolved file in the index, or
31948         remove it from there.  (Bug#20292)
31950 2015-04-21  Glenn Morris  <rgm@gnu.org>
31952         * lisp/custom.el (custom-declare-group): No need to purecopy
31953         custom-current-group-alist members following recent change to set
31954         it to nil before dumping.
31956         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
31957         (Bug#20399)
31959 2015-04-21  Daniel Colascione  <dancol@dancol.org>
31961         Unbreak no-op buffer save message
31962         * lisp/files.el (basic-save-buffer): Accept called-interactively as
31963         an argument instead of directly invoking called-interactively-p,
31964         which will always yield nil in that context.
31966 2015-04-21  Alan Mackenzie  <acm@muc.de>
31968         CC Mode: Do nothing in before/after-change-functions for text
31969         property changes
31970         Fixes bug#20266.
31971         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
31972         yank-handled-properties buffer local, and remove 'category from it.
31973         (c-called-from-text-property-change-p): New function.
31974         (c-before-change): Don't do anything if a call of the new function
31975         returns non-nil.
31976         (c-after-change): Don't do much if a call of the new function returns
31977         non-nil.
31978         (c-extend-after-change-region): Put changes to text property 'fontified
31979         inside c-save-buffer-state.
31981 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
31983         Fix byte-compiler warnings about looking-back
31984         * lisp/vc/log-view.el (log-view-end-of-defun-1):
31985         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
31986         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
31987         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
31988         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
31989         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
31990         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
31991         * lisp/org/org.el (org-insert-heading, org-sort-entries):
31992         * lisp/org/org-mouse.el (org-mouse-end-headline)
31993         (org-mouse-context-menu):
31994         * lisp/org/org-clock.el (org-clock-cancel):
31995         * lisp/man.el (Man-default-man-entry):
31996         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
31997         (rmail-ensure-blank-line):
31998         * lisp/mail/footnote.el (Footnote-delete-footnote):
31999         * lisp/mail/emacsbug.el (report-emacs-bug):
32000         * lisp/info.el (Info-follow-reference, Info-fontify-node):
32001         * lisp/info-look.el (info-lookup-guess-custom-symbol):
32002         * lisp/help-fns.el (help-fns--key-bindings):
32003         * lisp/files.el (hack-local-variables):
32004         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
32005         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
32006         (viper-complete-filename-or-exit):
32007         * lisp/emulation/viper-cmd.el (viper-backward-indent):
32008         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
32009         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
32010         * lisp/cus-edit.el (custom-face-edit-value-create):
32011         * lisp/calendar/todo-mode.el (todo-set-item-priority)
32012         (todo-filter-items-1, todo-convert-legacy-files)
32013         (todo-prefix-overlays): Add explicit second arg to looking-back.
32015 2015-04-20  Glenn Morris  <rgm@gnu.org>
32017         Avoid non-nil current-load-list at startup
32018         * src/process.c (init_process_emacs): Move Fprovide statement...
32019         (syms_of_process): ... to here.
32021         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
32023         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
32024         in emacs -Q.
32026 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
32028         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
32029         (Bug#20330)
32031 2015-04-20  Glenn Morris  <rgm@gnu.org>
32033         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
32035         Tweak exec-path in uninstalled case
32036         * src/callproc.c (init_callproc): If running uninstalled, do not
32037         include eventual installation libexec directory in exec-path.
32039 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
32041         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
32042         cache keywords.
32043         (package-menu-filter): Accept a list of keywords.
32044         (package--all-keywords): New variable to cache known keywords.
32045         (package-all-keywords): Populate it if necessary.
32046         (package-refresh-contents): Reset it.
32048         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
32049         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
32050         as special keywords which match agains package archive and status
32051         respectively.
32052         * etc/NEWS: Document it.
32054 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
32056         Describe and index "empty overlays".
32057         * doc/lispref/display.texi (Overlays): Improve indexing.
32058         (Managing Overlays): Describe "empty" overlays.
32059         (Overlay Properties, Finding Overlays): Add cross-reference to
32060         where empty overlays are described.
32062 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
32064         Spelling fixes
32066         Quote 'like this' in top-level files
32067         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
32068         Prefer to single-quote 'like this' (instead of the older style
32069         `like this').
32070         * configure.ac: Fix some space-before-tab problems that 'git commit'
32071         complained about.
32073         Use bool for boolean in textprop.c, undo.c
32074         * src/textprop.c (soft, hard): Now constants instead of macros.
32075         (validate_plist): Rewrite to avoid need for boolean local.
32076         (interval_has_all_properties, interval_has_some_properties)
32077         (interval_has_some_properties_list, add_properties)
32078         (remove_properties, get_char_property_and_overlay)
32079         (Fnext_single_char_property_change)
32080         (Fprevious_single_char_property_change, add_text_properties_1)
32081         (Fremove_text_properties, Fremove_list_of_text_properties)
32082         (copy_text_properties):
32083         * src/tparam.c (tparam1):
32084         * src/undo.c (record_change, record_property_change)
32085         (syms_of_undo):
32086         Use 'true' and 'false' for booleans.
32088 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
32090         * lisp/vc/vc-git.el (vc-git-find-file-hook):
32091         Call `smerge-start-session' even when dealing with a stash
32092         conflict (bug#20292).
32094 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
32096         Add option to eshell/clear to clear scrollback.
32097         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
32098         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
32099         scrollback contents are cleared.
32100         * etc/NEWS: Describe change.
32101         * doc/misc/eshell.texi: Add entry for `clear'.
32103 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
32105         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
32106         where either will do.
32108 2015-04-19  Steve Purcell  <steve@sanityinc.com>
32110         Assume package archive-contents are UTF8-encoded
32111         * lisp/emacs-lisp/package.el (package--read-archive-file):
32112         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
32113         downloaded and cached archive-contents files, so that non-ASCII
32114         characters in package descriptions are displayed correctly in the
32115         `list-packages' menu.  (Bug#20231)
32117 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
32119         Abort when looking at stashed changes
32120         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
32121         stashed changes (bug#20292).
32123 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
32125         Refactor low-level printing for simplicity
32126         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
32127         PRINTPREPARE; doable now that we assume C99.  All callers changed.
32128         (PRINTCHAR): Remove, as it adds more mystery than clarity.
32129         All callers changed.
32130         (strout): Assume that caller computes length.  All callers changed.
32131         (print_c_string): New function.
32132         (write_string, write_string_1): Compute length instead of asking
32133         the caller to compute it.  All callers changed.
32134         (write_string): Simplify by using write_string_1.
32135         (write_string_1): Simplify by using print_c_string.
32136         (Fterpri): Compute default val more clearly.
32137         (Fprin1_to_string, print_object):
32138         Assume C99 to avoid unnecessary nesting.
32139         (print_object): Prefer print_c_string to multiple printchar, or
32140         to calling strout with -1 length.  Coalesce into sprintf when
32141         this is easy.
32143 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
32145         Prefer "Bug#1234" in commit messages (Bug#20325)
32146         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
32147         as this isn't useful for Git.
32148         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
32150 2015-04-18  Glenn Morris  <rgm@gnu.org>
32152         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
32153         (Bug#19506)
32155 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
32157         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
32158         Do not use `chomp' as a function.  (Bug#19505)
32160 2015-04-18  Glenn Morris  <rgm@gnu.org>
32162         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
32164         * doc/emacs/misc.texi (Sorting): Small edit.
32165         (Bug#19896)
32167         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
32169 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
32171         css-mode.el: Support multi-line comment filling
32172         (Bug#20256)
32173         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
32174         comment filling.
32175         (css-adaptive-fill): New function.
32176         (css-mode): Set `adaptive-fill-function'.
32177         (scss-mode): Set `comment-continue'.
32179 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
32181         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
32182         Better error messages.
32184 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
32186         Minor improvements in Bulgarian input methods
32187         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
32188         Replace U+042C with U+045D, as the former character is not used in
32189         the modern Bulgarian language.
32190         (Bug#20350)
32192 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
32194         Improve EUDC manual
32195         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
32196         authentication schemes.  Add index items.  Shorten example server
32197         name.
32199 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
32201         Don't show both feature and function with the same name
32202         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
32203         Don't show both feature and function with the same name.
32205         (elisp--xref-identifier-location): Skip variable, if it's also
32206         a function
32207         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
32208         Avoid returning both the variable and the function for the same
32209         minor mode.
32211 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
32213         Fix fontification of keywords clobbered by the prompt
32214         * lisp/comint.el (comint-output-filter): Remove the uses of
32215         with-silent-modifications I introduced as part of the last change.
32216         This fixes, e.g., erratically missing highlighting when running
32217         ./configure --help; ./configure in a shell-mode buffer with
32218         compilation-shell-minor-mode turned on.
32220 2015-04-17  Glenn Morris  <rgm@gnu.org>
32222         * admin/authors.el (authors-valid-file-names)
32223         (authors-renamed-files-alist): Additions.
32225 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
32227         * lisp/indent.el (indent-region): Don't deactivate the mark.
32228         (Bug#20357)
32230 2015-04-17  Sam Steingold  <sds@gnu.org>
32232         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
32234 2015-04-16  Leo Liu  <sdl.web@gmail.com>
32236         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
32238 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
32240         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
32241         Don't use `pcomplete' any more.
32243 2015-04-16  Glenn Morris  <rgm@gnu.org>
32245         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
32247 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
32249         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
32250         * configure.ac (LIBJPEG): Leave it empty for MinGW.
32252 2015-04-16  Glenn Morris  <rgm@gnu.org>
32254         * lisp/replace.el (query-replace-from-to-separator):
32255         Delay initialization to avoid rogue setting after startup.
32257 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
32259         Pre-4.6 GCC succeeds with unknown option
32260         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
32261         (Bug#20338)
32263 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
32265         '[:graph:]' now excludes whitespace, not just ' '
32266         * doc/lispref/searching.texi (Char Classes):
32267         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
32268         sans whitespace (not sans space).
32269         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
32270         not just space.
32271         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
32273 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
32275         * lisp/subr.el (substitute-key-definition-key, special-form-p)
32276         (macrop): Drop deprecated second arg to indirect-function.
32277         (looking-back): Make the second arg non-optional.
32279         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
32280         command is actually sent to the shell.
32282 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
32284         Port jpeg configuration to Solaris 10 with Sun C
32285         * configure.ac: Check for jpeglib 6b by trying to link it, instead
32286         of relying on cpp magic that has problems in practice.  Check for
32287         both jpeglib.h and jerror.h features.  Remove special case for
32288         mingw32, which should no longer be needed (and if it were needed,
32289         should now be addressable by hotwiring emacs_cv_jpeglib).
32290         (Bug#20332)
32292 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
32294         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
32295         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
32296         Move to elisp-mode.el.
32297         (lisp-mode-variables): (Re)move elisp-specific settings.
32298         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
32299         from lisp-mode-variables.
32300         (elisp--font-lock-flush-elisp-buffers): New function, moved from
32301         lisp-mode.el.
32303         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
32304         Avoid pathological slowdown at top-level in large file.
32306 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
32308         Standardize names of ChangeLog history files
32309         Suggested by Glenn Morris in:
32310         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
32311         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
32312         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
32313         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
32314         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
32315         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
32316         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
32317         Remove.
32319         Split top-level entries into pre- and post-April 7
32320         This more clearly distingiushes pre-April-7 ChangeLog entries (which
32321         are for top-level files only) from post-April-7 entries (which are
32322         about files at all levels.  Problem reported by Glenn Morris in:
32323         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
32324         * ChangeLog.1: Move post-April-7 entries from here ...
32325         * ChangeLog.2: ... to this new file.
32326         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
32328 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
32330         Fix recent cus-start changes that added customize-rogues
32331         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
32332         vars early.
32333         * lisp/loadup.el ("cus-start"): Move to the end to reduce
32334         customize-rogue.
32336 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
32338         Define cl-concatenate as an alias to seq-concatenate
32339         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
32340           code by making cl-concatenate an alias to seq-concatenate.
32342 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
32344         * src/lread.c (intern_1): Make sure we'd find the symbol we add
32345         (Bug#20334)
32346         * src/xfaces.c (resolve_face_name): Don't use `intern' with
32347         Lisp_Strings.
32349 2015-04-15  Glenn Morris  <rgm@gnu.org>
32351         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
32353 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
32355         Clean up gnus-uu saving code slightly
32356         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
32357         save-restriction/widen calls make more sense.
32359 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
32361         Make [:graph:] act like [:print:] sans space
32362         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
32363         [:graph:] so that it matches everything that [:print:] does,
32364         except for space.
32365         * doc/lispref/searching.texi (Char Classes):
32366         * etc/NEWS:
32367         * lisp/emacs-lisp/rx.el (rx):
32368         Document [:graph:] to be [:print:] sans ' '.
32369         * src/character.c, src/character.h (graphicp): New function.
32370         * src/regex.c (ISGRAPH) [emacs]: Use it.
32371         (BIT_GRAPH): New macro.
32372         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
32373         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
32374         Return BIT_GRAPH for RECC_GRAPH.
32375         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
32376         and ISPRINT if BIT_PRINT.
32378 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
32380         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
32381         Don't use call-next-method in a cl-defmethod.
32383         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
32384         (eieio--class-p): Remove, provided by cl-defstruct.
32386 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
32388         Add seq-intersection and seq-difference to the seq library
32389         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
32390         New functions.
32391         * test/automated/seq-tests.el: Add tests for seq-intersection and
32392         seq-difference.
32393         * doc/lispref/sequences.texi: Add documentation for seq-intersection
32394         and seq-difference.
32396 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
32398         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
32399         to avoid leaking internals.
32401 2015-04-14  Sam Steingold  <sds@gnu.org>
32403         package--ensure-init-file: widen requires save-restriction
32405 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
32407         Improve the commit-msg Git hook for unibyte environments
32408         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
32409         in unibyte environments.  (Suggested by Paul Eggert
32410         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
32411         [:print:], based on UTF-8 sequences of the unprintable characters.
32413         Describe problems with cursor caused by Windows Magnifier
32414         * etc/PROBLEMS: Describe the problem with cursor shape on
32415         MS-Windows due to Windows Magnifier.
32416         (Bug#20271)
32418         Make [:print:] support non-ASCII characters correctly
32419         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
32420         (BIT_PRINT): New bit mask.
32421         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
32422         * src/character.c (printablep): New function.
32423         * src/character.h (printablep): Add prototype.
32424         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
32425         of 'print', 'alnum', and 'alphabetic'.
32426         * doc/lispref/searching.texi (Char Classes): Document the new
32427         behavior of [:print:].
32428         * etc/NEWS: Mention the new behavior of [:print:].
32430         Assign correct general-category and names to surrogates
32431         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
32432         surrogates.  This avoids assigning them the default
32433         general-category of 'Cn', i.e. unassigned codepoints.
32434         (unidata-get-name): Give surrogates synthetic names.
32436 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
32438         Assume C89 offsetof in xterm.c, xlwmenu.c
32439         * lwlib/xlwmenu.c (offset):
32440         * src/xterm.c (cvt_string_to_pixel_args):
32441         Use offsetof, not XtOffset.
32443 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
32445         Assume C89 offsetof in widget.c
32446         * src/widget.c (XtOffset): Remove; no longer needed.
32447         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
32449         Fix think-o in previous patch
32450         * src/window.c (count_windows, get_leaf_windows):
32451         Don't optimize count_windows incorrectly.
32453 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
32455         Avoid some int overflows in window.c
32456         * src/print.c (print_object):
32457         * src/window.c (sequence_number):
32458         * src/window.h (struct window.sequence_number):
32459         Don't assume window sequence number fits in int.
32460         * src/window.c (window_select_count):
32461         * src/window.h (struct window.use_time, window_select_count):
32462         Don't assume window use time fits in int.
32463         * src/window.c (Fsplit_window_internal):
32464         Don't assume user-supplied integer, or sum, fits in int.
32465         (Fset_window_configuration, count_windows, get_leaf_windows)
32466         (save_window_save, Fcurrent_window_configuration):
32467         Use ptrdiff_t for object counts.
32468         (Fset_window_configuration): Omit unused local 'n'.
32469         (count_windows): Simplify by writing in terms of get_leaf_windows.
32470         (get_leaf_windows): Don't store through FLAT if it's null.
32471         (extract_dimension): New static function.
32472         (set_window_margins, set_window_fringes, set_window_scroll_bars):
32473         Use it to avoid undefined behavior when converting user-supplied
32474         integer to 'int'.
32476 2015-04-13  Glenn Morris  <rgm@gnu.org>
32478         Minor doc copyedits
32479         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
32480         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
32482 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
32484         [Gnus] Catch the invalid-operation that idna.el will issue
32485         * lisp/gnus/gnus-art.el (gnus-use-idna):
32486         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
32487         * lisp/gnus/message.el (message-use-idna):
32488         Catch the invalid-operation that idna.el will issue.
32490 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
32492         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
32494 2015-04-13  Sam Steingold  <sds@gnu.org>
32496         package--ensure-init-file: widen before looking for
32497         "(package-initialize)"
32499 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
32501         Change diff-switches default to `-u' (Bug#20290)
32502         * doc/emacs/files.texi (Comparing Files): Document the new default
32503         value of `diff-switches'.
32504         * doc/emacs/trouble.texi (Sending Patches): Document the preference
32505         for unified diff format.  Escape the plus in the suggested `-F' regexp
32506         value.
32507         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
32509 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32511         (gnus-group--setup-tool-bar-update): Fix last change
32512         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
32513         cursor-sensor-functions should be a list of functions.
32515 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
32517         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
32518         Use gmm-called-interactively-p.
32520 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32522         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
32523         (Bug#20321)
32524         * lisp/cus-start.el (read-buffer-function): Don't advertise
32525         iswitchb-read-buffer any more.
32526         (iswitchb): Don't tweak this obsolete group any more.
32528 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
32530         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
32532         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
32533         Adding a string after a constructor's argument list will use
32534         that string as the constructor function docstring.  If this string
32535         is absent but the struct itself was given a docstring, use that as
32536         the constructor's docstring.
32537         Fixes bug#17284.
32539 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32541         Deprecate `intangible' and `point-entered' properties
32542         * lisp/emacs-lisp/cursor-sensor.el: New file.
32543         * lisp/simple.el (pre-redisplay-functions): New hook.
32544         (redisplay--pre-redisplay-functions): New function.
32545         (pre-redisplay-function): Use it.
32546         (minibuffer-avoid-prompt): Mark obsolete.
32547         (redisplay--update-region-highlight): Adapt it to work as a function on
32548         pre-redisplay-functions.
32549         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
32550         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
32551         than point-entered to make the prompt intangible.
32552         * lisp/forms.el: Move `provide' calls to the end.
32553         (forms-mode): Don't use `run-hooks' on a local var.
32554         (forms--make-format, forms--make-format-elt-using-text-properties):
32555         Use cursor-intangible rather than `intangible'.
32556         (forms-mode): Enable cursor-intangible-mode.
32557         * lisp/isearch.el (isearch-mode): Use defvar-local.
32558         (cursor-sensor-inhibit): Declare.
32559         (isearch-mode): Set cursor-sensor-inhibit.
32560         (isearch-done): Set it back.
32561         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
32562         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
32563         any more.
32564         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
32565         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
32566         Add Edebug spec.
32567         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
32568         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
32569         inhibit-point-motion-hooks any more.
32570         (ses--cell-at-pos, ses--curcell): New functions, extracted from
32571         ses-set-curcell.
32572         (ses-set-curcell): Use them.
32573         (ses-print-cell, ses-setup): Use cursor-intangible instead of
32574         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
32575         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
32576         Use ses--cell-at-pos.
32577         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
32578         extracted from ses-command-hook.  Make them work with multiple windows
32579         displaying the same buffer.
32580         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
32581         Enable cursor-intangible-mode.
32582         (ses-command-hook): Remove cell highlight and mode-line update code.
32583         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
32584         Update for new name of text-property holding the cell name.
32585         (ses-rename-cell): Don't mess with mode-line-process.
32586         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
32587         cursor-sensor-functions property instead of point-entered.
32588         (erc-insert-timestamp-right, erc-format-timestamp):
32589         Use cursor-intangible rather than `intangible'.
32590         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
32591         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
32592         cursor-sensor-mode if needed.
32593         (erc-echo-timestamp): Adapt to calling convention of
32594         cursor-sensor-functions.
32595         (erc-insert-timestamp-right): Remove unused vars `current-window' and
32596         `indent'.
32597         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
32598         (gnus-update-group-mark-positions): Remove unused `topic' var.
32599         (gnus-group-insert-group-line): Remove unused var `header'.
32600         (gnus-group--setup-tool-bar-update): New function.
32601         (gnus-group-insert-group-line): Use it.
32602         (gnus-group-update-eval-form): Declare local
32603         dynamically-bound variables.
32604         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
32605         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
32606         (gnus-group-prepare-topics, gnus-topic-update-topic)
32607         (gnus-topic-change-level, gnus-topic-catchup-articles)
32608         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
32609         Use inhibit-read-only.
32610         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
32611         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
32612         * lisp/textmodes/reftex-index.el (reftex-display-index):
32613         Use cursor-intangible-mode if available.
32614         (reftex-index-post-command-hook): Check cursor-intangible.
32615         * lisp/textmodes/reftex-toc.el (reftex-toc):
32616         Use cursor-intangible-mode if available.
32617         (reftex-toc-recenter, reftex-toc-post-command-hook):
32618         Check cursor-intangible.
32619         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
32620         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
32621         (sgml-tags-invisible): Use with-silent-modifications and
32622         inhibit-read-only.  Enable cursor-sensor-mode.
32623         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
32624         calling convention of cursor-sensor-functions.
32625         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
32626         (table-point-entered-cell-hook, table-point-left-cell-hook):
32627         Don't autoload.
32628         (table-cell-entered-state): Remove var.
32629         (table--put-cell-point-entered/left-property)
32630         (table--remove-cell-properties):
32631         Use cursor-sensor-functions rather than point-entered/left.
32632         (table--point-entered/left-cell-function): Merge
32633         table--point-entered-cell-function and table--point-left-cell-function
32634         and adjust to calling convention of cursor-sensor-functions.
32636         Update ldef-boots.el
32638         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
32640         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
32642         Collapse successive char deletions in the undo log
32643         * src/cmds.c (remove_excessive_undo_boundaries): New function,
32644         extracted from Fself_insert_command.
32645         (Fdelete_char, Fself_insert_command): Use it.
32646         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
32647         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
32649         xterm and OSC 52: Add NEWS entry, and tweak the code
32650         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
32651         to top-level.
32652         (terminal-init-xterm-activate-set-selection): Set a terminal property.
32653         (xterm--set-selection): Use it instead of checking the value of
32654         `terminal-initted'.  Don't use string-bytes.
32656 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
32658         xterm.el: Implement OSC-52 functionality for setting the X selection
32659         * lisp/term/xterm.el (xterm-max-cut-length): New var.
32660         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
32661         New funs.
32662         (terminal-init-xterm, xterm--version-handler): Use them.
32664 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32666         Remove left over code from when we used an obsolete/loaddefs.el file
32667         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
32668         when we used an obsolete/loaddefs.el file.
32670         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
32671         (semanticdb-without-unloaded-file-searches): Use declare.
32672         (semantic-fw-add-edebug-spec): Remove.
32674         * lisp/completion.el (completion-lisp-mode-hook):
32675         Use completion-separator-chars rather than local key binding.
32677         * src/*.c: Set deactivate_mark buffer-locally
32678         (Bug#20260)
32679         * src/insdel.c (prepare_to_modify_buffer_1):
32680         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
32681         buffer-locally.
32683 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
32685         python.el: Keep symmetry on sexp navigation with parens
32686         (Bug#19954)
32687         * lisp/progmodes/python.el
32688         (python-nav--forward-sexp): Add argument skip-parens-p.
32689         (python-nav-forward-sexp, python-nav-backward-sexp)
32690         (python-nav-forward-sexp-safe)
32691         (python-nav-backward-sexp-safe): Use it.
32692         * test/automated/python-tests.el
32693         (python-nav-forward-sexp-1): Fix test.
32695 2015-04-12  João Távora  <joaotavora@gmail.com>
32697         Don't use `setq-local' in Gnus code
32698         This might break upstream builds with older Emacsen
32699         * lisp/gnus/message.el (message-mode): Use `set' and
32700         `make-local-variable' instead of `setq-local'.
32702 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
32704         Update Makefile.in's .PHONY dependencies
32705         * Makefile.in (change-history-commit, master-branch-is-current)
32706         (no-ChangeLog): Now phony.
32708         Remove configure's --with-mmdf option
32709         * configure.ac (MAIL_USE_MMDF): Remove.
32710         * etc/NEWS: Document this.
32711         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
32712         (Bug#20308)
32714         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
32715         That way, 'make install' won't think it's a man page.
32716         Reported by Ashish SHUKLA in:
32717         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
32719         Improve 'make change-history' prereq tests
32720         * Makefile.in (gen_origin): Fix to match what's in the master branch.
32721         (no-ChangeLog, master-branch-is-current): New rules.
32722         (change-history): Depend on them, to avoid similar future problems.
32723         Escape the local-variables string to pacify Emacs when editing
32724         Makefile.in.
32726 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
32728         * test/automated/package-test.el (with-package-test):
32729         Kill Packages buffer.
32731         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
32732         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
32733         "Upgrade" last, and use capitalized instead of all-caps.
32735         * lisp/emacs-lisp/package.el: Completely silence async operations.
32736         (package--make-autoloads-and-stuff): Silence autoloads.
32737         (package--save-selected-packages): New function, silences
32738         `customize-save-variable'.
32739         (package--user-selected-p, package-install-from-buffer)
32740         (package-delete, package-install): Use it.
32741         (package-install-from-archive)
32742         (package-menu--perform-transaction): Silence.
32743         (package-menu-execute): Feedback when operation starts.
32745         Use delay-mode-hooks when visiting the init-file
32746         * lisp/emacs-lisp/package.el (package--ensure-init-file):
32747         delay-mode-hooks.
32748         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
32750         * lisp/files.el: Only message when saving if save-silently is nil.
32751         (save-silently): New variable.
32752         (files--message): New function.
32753         (find-file-noselect, save-buffer, basic-save-buffer)
32754         (basic-save-buffer-2, save-some-buffers, not-modified)
32755         (append-to-file): Use them.
32757 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
32759         Support debug declarations in pcase macros
32760         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
32761         (pcase-UPAT): Use it.  Remove "`".
32762         (pcase--edebug-match-macro): New function.
32763         (pcase-defmacro): Support debug declarations.
32764         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
32765         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
32766         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
32767         Add debug declaration.
32769         pcase.el: Edebug support for `app' and vector patterns
32770         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
32771         (pcase-UPAT): Use it.  Support `app' patterns.
32772         (pcase-QPAT): Support vector patterns.
32774         edebug.el: Disambiguate vector specifications
32775         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
32776         `(vector ...)' as a vector specification, not as a sublist.
32778         (gnus-summary-refer-thread): Don't clobber unread articles
32779         This fixes a bug where `A T' causes "random" articles to become marked
32780         as read.
32781         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
32782         gnus-newsgroup-unreads remains sorted.
32784         mouse-sel.el: Fix mouse-sel-get-selection-function
32785         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
32786         Use gui--last-selected-text-primary instead of no longer existing
32787         gui-last-selected-text.
32789         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
32791         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
32793 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
32795         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
32797         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
32798         right buffer.
32800         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
32801         (byte-compile--interactive): New var.
32802         (byte-compile--message): New function.
32803         (byte-compile-log-1, byte-force-recompile)
32804         (byte-recompile-directory, byte-recompile-file)
32805         (byte-compile-file, compile-defun)
32806         (byte-compile-file-form-defmumble, byte-compile)
32807         (byte-compile-file-form-defalias, display-call-tree): Use it.
32809         * lisp/files.el: Don't message when nothing happened.
32810         (save-some-buffers, basic-save-buffer): Before messaging to say
32811         "nothing was saved" check if (called-interactively-p 'any).
32813 2015-04-12  João Távora  <joaotavora@gmail.com>
32815         Summary: Improve sexp-based movement in message-mode
32816         Works by giving citations and smileys a different syntax.  This helps
32817         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
32818         sexp-based movement.
32819         * lisp/gnus/message.el (message--syntax-propertize): New function.
32820         (message-mode): Set syntax-related vars.
32821         (message-smileys): New variable.
32822         * test/automated/message-mode-tests.el: New file
32824 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
32826         Use bool for boolean in window.c
32827         * src/window.c: Omit unnecessary static function decls.
32828         (adjust_window_count, select_window, Fselect_window)
32829         (window_body_width, Fwindow_body_height, Fwindow_body_width)
32830         (set_window_hscroll, check_window_containing, Fwindow_at)
32831         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
32832         (unshow_buffer, replace_window, recombine_windows)
32833         (add_window_to_list, candidate_window_p, next_window)
32834         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
32835         (Fget_buffer_window, Fdelete_other_windows_internal)
32836         (replace_buffer_in_windows_safely, set_window_buffer)
32837         (Fset_window_buffer, Fforce_window_update)
32838         (temp_output_buffer_show, make_parent_window)
32839         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
32840         (resize_frame_windows, Fsplit_window_internal)
32841         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
32842         (Fresize_mini_window_internal, mark_window_cursors_off)
32843         (window_scroll, window_scroll_pixel_based)
32844         (window_scroll_line_based, scroll_command, Fscroll_other_window)
32845         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
32846         (Fmove_to_window_line, Fset_window_configuration)
32847         (delete_all_child_windows, apply_window_adjustment)
32848         (set_window_fringes, set_window_scroll_bars)
32849         (Fset_window_vscroll, foreach_window, foreach_window_1)
32850         (compare_window_configurations, Fcompare_window_configurations):
32851         Prefer 'bool', 'true', and 'false' for booleans.
32852         * src/window.h (WINDOW_MODE_LINE_LINES)
32853         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
32855 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
32857         Speed up byte-compilation and autoload generation by avoiding mode-hooks
32858         This prevents emacs-lisp-mode-hook from being run everytime an
32859         autoload file is generated, which can account for a fraction of
32860         package installation time depending on the hooks the user has
32861         configured.
32862         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
32863         * lisp/emacs-lisp/autoload.el (autoload-find-file)
32864         (autoload-find-generated-file): Use delay-mode-hooks.
32866         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
32867         (package-menu-refresh): Respect async and do new package checking.
32868         (list-packages): Use `package-menu-refresh' instead of repeating code.
32870         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
32871         (package--quick-help-keys): New variable.
32872         (package--prettify-quick-help-key): New function.
32873         (package-menu-quick-help): Use it.
32875         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
32876         (package--build-compatibility-table): Require finder.
32878         * test/automated/package-test.el: Fix new test.
32880         * lisp/emacs-lisp/package.el: Silence async operations.
32881         (package--silence): New variable.
32882         (package--message): New function.
32883         (package-import-keyring, package-refresh-contents)
32884         (package-compute-transaction, package-install, package-delete)
32885         (package-menu--perform-transaction, package-menu-execute): Use it.
32887         * test/automated/package-test.el: Test async functionality.
32888         (package-test-update-archives-async): New test.
32890 2015-04-11  Daiki Ueno  <ueno@gnu.org>
32892         Utilize `make-process' in epg.el
32893         * lisp/epg.el (epg-error-output): Abolish.
32894         (epg-context): New slot `error-buffer'.
32895         (epg--start): Use `make-process' and `make-pipe-process'.
32896         (epg--process-filter): Remove code separating stderr from stdout.
32897         (epg-wait-for-completion): Simplify `error-output' handling.
32898         (epg-reset): Dispose error buffer.
32900 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
32902         * .gitignore: Ignore doc temps and outputs.
32904         Port commit-msg to MSYS Bash+Gawk
32905         See Eli Zaretskii in:
32906         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
32907         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
32908         (cent_sign, print_at_sign, at_sign): Revert previous change.
32909         (print_at_sign): Prepend "BEGIN".
32910         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
32912         Port commit-msg to broken MS-Windows shell
32913         * build-aux/git-hooks/commit-msg (cent_sign):
32914         Just use UTF-8 here rather than ASCII + printf, as the latter fails
32915         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
32916         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
32918 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
32920         Support GnuTLS v3.4 and later on MS-Windows
32921         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
32922         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
32923         GnuTLS DLL to load according to value of libgnutls-version.
32924         (Bug#20294)
32926 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
32928         Minor quoting etc. fixes to misc manuals
32929         Fix some minor quoting and spacing issues.  Distinguish more
32930         clearly among grave accent and apostrophe (which are ASCII) and
32931         single quote (which is not).  Prefer the standard terms
32932         "apostrophe" and "grave accent" to alternative names that can be
32933         confusing.  Use apostrophes to single-quote ASCII text.
32934         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
32935         rather than approximating it in ASCII with grave accent.
32937 2015-04-11  Daiki Ueno  <ueno@gnu.org>
32939         Respect more keyword args in `make-process'
32940         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
32941         keywords as documented.
32943 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
32945         Extract ChangeLog entries when committing a directory
32946         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
32947         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
32948         Add a FIXME comment.
32949         (log-edit-changelog-entries): Extract from
32950         `log-edit-changelog-entries', handle FILE being a directory
32951         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
32953 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
32955         Fix problems found by --enable-gcc-warnings
32956         * src/process.c (create_process, Fmake_pipe_process)
32957         (Fmake_network_process): Omit unused locals.
32959         Fix commit-msg to handle scissors lines
32960         * build-aux/git-hooks/commit-msg:
32961         Ignore every line after a scissors line, such as a line generated
32962         by 'git commit -v'.  Problem reported by Johan Bockgård in:
32963         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
32965         port commit-msg to Gawk 3.0.4 (1999)
32966         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
32967         (print_at_sign, at_sign): New vars.  Use them to avoid problems
32968         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
32969         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
32971         Have commit-msg report commit failure
32972         * build-aux/git-hooks/commit-msg: If the commit is aborted,
32973         say so.  Simplify by doing this at the end.  Problem reported
32974         by Eli Zaretskii in:
32975         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
32977 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
32979         Clean up LDAP Configuration section of EUDC manual
32980         * doc/misc/eudc.texi: Combine indices.
32981         (LDAP Configuration): Use command markup.  Add index entries.
32982         Change formatting.  Wrap long lines.  Add noindent markup.
32984 2015-04-10  Daiki Ueno  <ueno@gnu.org>
32986         Add facility to collect stderr of async subprocess
32987         * src/w32.h (register_aux_fd): New function declaration.
32988         * src/w32.c (register_aux_fd): New function.
32989         * src/process.h (struct Lisp_Process): New member stderrproc.
32990         * src/process.c (PIPECONN_P): New macro.
32991         (PIPECONN1_P): New macro.
32992         (Fdelete_process, Fprocess_status, Fset_process_buffer)
32993         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
32994         (Fcontinue_process): Handle pipe process specially.
32995         (create_process): Respect p->stderrproc.
32996         (Fmake_pipe_process): New function.
32997         (Fmake_process): Add new keyword argument :stderr.
32998         (wait_reading_process_output): Specially handle a pipe process when
32999         it gets an EOF.
33000         (syms_of_process): Register Qpipe and Smake_pipe_process.
33001         * doc/lispref/processes.texi (Asynchronous Processes): Document
33002         `make-pipe-process' and `:stderr' keyword of `make-process'.
33003         * lisp/subr.el (start-process): Suggest to use `make-process' handle
33004         standard error separately.
33005         * test/automated/process-tests.el (process-test-stderr-buffer)
33006         (process-test-stderr-filter): New tests.
33007         * etc/NEWS: Mention new process type `pipe' and its usage with the
33008         `:stderr' keyword of `make-process'.
33010 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
33012         Minor quoting etc. fixes to lispref manual
33013         * doc/lispref/tips.texi (Documentation Tips):
33014         Distinguish more clearly among grave accent, apostrophe,
33015         and single quote.
33016         * doc/lispref/README, doc/lispref/buffers.texi:
33017         * doc/lispref/commands.texi, doc/lispref/control.texi:
33018         * doc/lispref/customize.texi, doc/lispref/display.texi:
33019         * doc/lispref/elisp.texi, doc/lispref/files.texi:
33020         * doc/lispref/frames.texi, doc/lispref/hash.texi:
33021         * doc/lispref/help.texi, doc/lispref/internals.texi:
33022         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
33023         * doc/lispref/markers.texi, doc/lispref/modes.texi:
33024         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
33025         * doc/lispref/os.texi, doc/lispref/positions.texi:
33026         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
33027         * doc/lispref/text.texi, doc/lispref/tips.texi:
33028         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
33029         Use American-style double quoting in ordinary text,
33030         and quote 'like this' when single-quoting in ASCII text.
33031         Also, fix some minor spacing issues.
33033 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
33035         Handle symlinked test directory in tramp-tests.el
33036         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
33037         (tramp--test-check-files): Use `file-truename' for directories.
33039 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
33041         Fix 'recenter' when visual-line-mode is turned on
33042         * src/window.c (Frecenter): Use the same code for GUI and TTY
33043         frames alike; use vmotion only for "initial" frames.  This is
33044         because vmotion doesn't support visual-line-mode.  Rewrite the
33045         'iarg >= 0' case to use move_it_* functions instead of using
33046         vmotion, for the same reason.  Fix the clipping of the argument
33047         value to support scroll-margin in all cases and avoid unwarranted
33048         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
33049         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
33050         which see.
33052 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
33054         * lisp/abbrev.el (define-abbrev-table): Refine last change.
33056         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
33057         use of c[ad]+r", so as to keep the "cl-" prefix on all
33058         cl-lib definitions.
33060         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
33061         Use inhibit-point-motion-hooks.
33063         * lisp/cedet/semantic: Remove some dead code.
33064         * lisp/cedet/semantic/util-modes.el
33065         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
33066         any more.
33067         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
33068         not supported any more.
33069         (semantic-safe): Use `declare'.
33070         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
33071         (semantic-tag-intangible-p): Remove unused functions.
33072         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
33073         Remove unused function.
33075         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
33076         (gnus-article-hide-text, gnus-article-unhide-text)
33077         (gnus-article-unhide-text-type): Remove special handling of
33078         `intangible' since that property is not used any more.
33079         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
33081 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
33083         Use the VC root in `log-edit-listfun'
33084         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
33085         `log-edit-listfun'.
33087 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
33089         Fix description of Unix time, mention new function.
33090         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
33091         Unix time.
33092         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
33093         (Basic Operations on Units): Mention `calc-convert-exact-units'.
33095 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
33097         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
33099 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
33101         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
33102         Don't add newline after the last entry.
33104 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
33106         css-mode.el: Add "not" pseudo-class
33107         (Bug#20267)
33108         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
33109         list of CSS pseudo-classes.
33111 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
33113         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
33115 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
33117         Stop messing with the EMACS env var
33118         * doc/emacs/misc.texi (Interactive Shell): Remove description of
33119         EMACS env var.
33121 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
33123         Adapt 'make change-history' to coding cookie
33124         * Makefile.in (change-history): Adjust to change of format of
33125         ChangeLog file, which now has a coding cookie before an indented
33126         copyright notice.
33128 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
33130         Adapt 'make change-history' to coding cookie
33131         * Makefile.in (change-history): Adjust to change of format of
33132         ChangeLog file, which now has a coding cookie before an indented
33133         copyright notice.
33135         gitlog-to-changelog coding cookie and mv -i
33136         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
33137         for copyright notice prototype, so that we get a proper "coding:"
33138         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
33139         existing ChangeLog.  Problems reported by Eli Zaretskii in:
33140         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
33142         Merge from gnulib
33143         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
33144         2015-04-09 gitlog-to-changelog: port to MS-Windows
33146 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
33148         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
33149         (Bug#20212)
33151 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
33153         Stop messing with the EMACS env var
33154         (Bug#20202)
33155         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
33156         * lisp/comint.el (comint-exec-1):
33157         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
33158         * lisp/progmodes/compile.el (compilation-start): Same and bring
33159         INSIDE_EMACS's format in line with other users.
33161         css-mode.el (css-smie-rules): Fix indentation after complex selectors
33162         (Bug#20282)
33163         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
33164         inner structure of selectors.
33166 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
33168         python.el: Indent docstring lines to base-indent
33169         (Bug#19595)
33170         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
33171         an initial patch.
33172         * lisp/progmodes/python.el
33173         (python-indent-context): Add :inside-docstring context.
33174         (python-indent--calculate-indentation): Handle :inside-docstring.
33175         (python-indent-region): Re-indent docstrings.
33176         * test/automated/python-tests.el (python-indent-region-5)
33177         (python-indent-inside-string-2): Fix tests.
33179         python.el: Increase native completion robustness
33180         (Bug#19755)
33181         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
33182         this and providing useful ideas.
33183         * lisp/progmodes/python.el
33184         (python-shell-completion-native-output-timeout): Increase value.
33185         (python-shell-completion-native-try-output-timeout): New var.
33186         (python-shell-completion-native-try): Use it.
33187         (python-shell-completion-native-setup): New readline setup avoids
33188         polluting current context, ensures output when no-completions are
33189         available and includes output end marker.
33190         (python-shell-completion-native-get-completions): Trigger with one
33191         tab only.  Call accept-process-output until output end is found or
33192         python-shell-completion-native-output-timeout is exceeded.
33194 2015-04-08  Samer Masterson  <samer@samertm.com>
33196         * lisp/eshell: Make backslash a no-op in front of normal chars
33197         (Bug#8531)
33198         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
33199         (eshell-parse-backslash): Return escaped character after backslash
33200         if it is special.  Otherwise, if the backslash is not in a quoted
33201         string, ignore the backslash and return the character after; if
33202         the backslash is in a quoted string, return the backslash and the
33203         character after.
33204         * test/automated/eshell.el (eshell-test/escape-nonspecial)
33205         (eshell-test/escape-nonspecial-unicode)
33206         (eshell-test/escape-nonspecial-quoted)
33207         (eshell-test/escape-special-quoted): Add tests for new
33208         `eshell-parse-backslash' behavior.
33210 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
33212         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
33213         after the file name.
33214         (Bug#20276)
33216 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
33218         Minor quoting etc. fixes to Emacs manual
33219         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
33220         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
33221         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
33222         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
33223         * doc/emacs/indent.texi, doc/emacs/macos.texi:
33224         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
33225         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
33226         * doc/emacs/search.texi, doc/emacs/trouble.texi:
33227         * doc/emacs/vc1-xtra.texi:
33228         Use American-style double quoting in ordinary text,
33229         and quote 'like this' when single-quoting in ASCII text.
33230         Also, fix some minor spacing issues.
33232         Minor quoting etc. fixes to elisp intro
33233         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
33234         American-style double quoting in ordinary text.  In ASCII text,
33235         consistently quote 'like this' instead of `like this', unless
33236         Emacs requires the latter.
33238 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
33240         * CONTRIBUTE: Mention log-edit-insert-changelog.
33242         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
33244 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
33246         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
33248 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
33250         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
33251         Fix inheritance of initargs.  (Bug#20270)
33253 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
33255         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
33256         while dowloading information.
33258         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
33259         (package--ensure-init-file): Check file contents before visiting.
33260         (package-initialize): Call it.
33261         (package-install-from-buffer, package-install): Don't call it.
33263 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
33265         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
33266         (Bug#17517)
33268 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
33270         * lisp/net/tramp-cache.el (tramp-flush-file-property):
33271         Fix nasty scoping bug.
33273 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
33275         Add notice to visual commands section
33276         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
33277         such as git call less with its -F option which omits pagination if
33278         the contents is less than one page long.  This interferes with
33279         eshell's visual (sub-)commands.
33281 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
33283         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
33284         environment variable expansion in file names.  (Bug#19839)
33286 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
33288         Prefer double-quote to accent-grave in man pages
33290 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
33292         (Bug#20257)
33293         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
33295 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
33297         Update etc/PROBLEMS.
33298         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
33299         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
33300         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
33301         respectively); other minor updates and tweaks.  (Bug#20011)
33303 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
33305         Add doc strings for some Isearch state vars
33306         * lisp/misearch.el (multi-isearch-buffer-list)
33307         (multi-isearch-file-list): Add doc strings.
33308         (Bug#20232)
33310 2015-04-07  Alan Mackenzie  <acm@muc.de>
33312         Always mark "<" and ">" in #include directives with text properties.
33313         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
33314         "anchored matcher" with an invocation of
33315         c-make-font-lock-search-function to allow fontification when there's
33316         no trailing space on an "#include <..>" line.
33318 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
33320         Generate a ChangeLog file from commit logs
33321         * .gitignore: Add 'ChangeLog'.
33322         * build-aux/gitlog-to-changelog: New file, from Gnulib.
33323         * build-aux/gitlog-to-emacslog: New file.
33324         * CONTRIBUTE: Document the revised workflow.
33325         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
33326         instead of just special cases.
33327         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
33328         (ChangeLog, unchanged-history-files, change-history)
33329         (change-history-commit): New rules.
33330         * admin/admin.el (make-manuals-dist--1):
33331         Don't worry about doc/ChangeLog.
33332         * admin/authors.el: Add a FIXME.
33333         * admin/make-tarball.txt:
33334         * lisp/calendar/icalendar.el:
33335         * lisp/gnus/deuglify.el:
33336         * lisp/obsolete/gulp.el:
33337         * lwlib/README:
33338         Adjust to renamed ChangeLog history files.
33339         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
33340         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
33341         Remove obsolete discussion of merging ChangeLog files.
33342         New section "Maintaining ChangeLog history".
33343         * build-aux/git-hooks/pre-commit:
33344         Reject attempts to commit files named 'ChangeLog'.
33345         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
33346         * make-dist: Make and distribute top-level ChangeLog if there's a
33347         .git directory.  Distribute the new ChangeLog history files
33348         instead of scattered ChangeLog files.  Distribute the new files
33349         gitlog-to-changelog and gitlog-to-emacslog.
33350         (Bug#19113)
33352         Rename ChangeLogs for gitlog-to-changelog
33353         This patch was implemented via the following shell commands:
33354         find * -name ChangeLog |
33355         sed 's,.*,git mv & &.1,
33356         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
33357         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
33358         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
33359         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
33360         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
33361         sh
33362         git commit -am"[this commit message]"
33364 This file records repository revisions from
33365 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
33366 commit 73cbb813cfea53e4162409f2adc0a793ab301894 (inclusive).
33367 See ChangeLog.1 for earlier changes.
33369 ;; Local Variables:
33370 ;; coding: utf-8
33371 ;; End:
33373   Copyright (C) 2015-2016 Free Software Foundation, Inc.
33375   This file is part of GNU Emacs.
33377   GNU Emacs is free software: you can redistribute it and/or modify
33378   it under the terms of the GNU General Public License as published by
33379   the Free Software Foundation, either version 3 of the License, or
33380   (at your option) any later version.
33382   GNU Emacs is distributed in the hope that it will be useful,
33383   but WITHOUT ANY WARRANTY; without even the implied warranty of
33384   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
33385   GNU General Public License for more details.
33387   You should have received a copy of the GNU General Public License
33388   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.