Completely ignore buffers with no name when copying file names
[emacs.git] / ChangeLog.2
blob6edc6546034b615c3af97bb41056eb9c8770d9c8
1 2016-02-15  Glenn Morris  <rgm@gnu.org>
3         * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
5 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7         Index tilde characters in names of backup files
9         * doc/emacs/files.texi (Backup Names): Improve indexing.
10         (Bug#22625)
12 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
14         Document deprecation of hi-lock-mode's 'C-x w' bindings
16         * doc/emacs/display.texi (Highlight Interactively): Deprecate the
17         "C-x w" bindings of hi-lock-mode.
19         * etc/NEWS: Mark the deprecation entry as documented.
21 2016-02-15  Stefan Monnier  <monnier@iro.umontreal.ca>
23         Announce that the `C-x w' bindings are deprecated
25 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
27         Suppress GNUstep hardening
29         Fedora 23 normally hardens GNUstep applications, which causes
30         ‘./configure --with-ns’ to break Emacs’s funky way of undumping.
31         Fix this by eliding the hardening options (Bug#22518).
32         * src/Makefile.in (LIBS_GNUSTEP): Omit options like
33         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-ld’.
34         (GNU_OBJC_CFLAGS): Omit options like
35         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1’.
37 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
39         Fix redisplay after a large insertion
41         * src/xdisp.c (redisplay_internal): Don't accept the results of
42         "optimization 3" if the cursor ends up in a partially visible
43         glyph row.  (Bug22637)
45 2016-02-15  Andreas Schwab  <schwab@linux-m68k.org>
47         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
49         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
51                 * lisp/gnus/nnimap.el (nnimap-change-group): Revert last
52                 change.  (Bug#22634)
54 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
56         * lib-src/make-docfile.c: Include stdarg.h.
58 2016-02-15  Alan Mackenzie  <acm@muc.de>
60         Extend gpm-mouse-mode's doc string and doc to point out limitations.
62         * lisp/t-mouse.el (gpm-mouse-mode): Extend doc string to indicate the
63         inability to transfer text between Emacs and other programs which use GPM.
65         * doc/emacs/frames.texi (Text-Only Mouse): Note the inability to transfer text
66         between Emacs and other progrmas which use GPM.
68 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
70         Revert "Backport: * lisp/isearch.el: Turn char-folding off by default"
72         * lisp/isearch.el: Turn char-folding back oon by default.
74         This reverts commit 12c50e82c9b432b2fc31f8fb2215f43ceea80822.
76 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
78         Revert "Support integer image rotation and respect EXIF rotations"
80         This reverts commit 0f600496050bf435f55dc81056e06fcd45992dc8.
82         This change does not work on Fedora.
84 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
86         Revert "Document EXIF image rotation"
88         This reverts commit 10b8ed27ec91ff52f93eb0297dcc3abb214931aa.
90         This change does not work on Fedora, for instance.
92 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
94         Document OS X LANG default
96         * doc/emacs/cmdargs.texi (General Variables):
97         Document OS X Language and Region system preference.
98         Suggested by Alan Third.
100 2016-02-15  Alan Third  <alan@idiocy.org>
102         Set locale when run from OS X GUI
104         * src/emacs.c (main): Call ns_init_locale.
105         * src/nsterm.m (ns_init_locale): Get locale from OS and set LANG.
106         * src/nsterm.h: Include ns_init_locale.
108 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
110         make-docfile cleanup for I/O, etc.
112         * lib-src/make-docfile.c (progname, generate_globals, num_globals)
113         (num_globals_allocated, globals): Now static.
114         (generate_globals, struct rcsoc_state, read_c_string_or_comment):
115         (write_c_args, scan_c_stream, search_lisp_doc_at_eol, scan_lisp_file):
116         Use bool for boolean.
117         (verror): New function.
118         (fatal, error): Use it.  API is now like printf.  All callers changed.
119         (main): Remove err_count local that was always 0.
120         (main, scan_c_stream, scan_lisp_file): Check for I/O error.
121         (scan_file, scan_c_file, scan_c_stream, scan_lisp_file):
122         Return void, not 0.
123         (put_char, scan_keyword_or_put_char, scan_c_file): Use char for byte.
124         (scan_keyword_or_put_char): Check for missing ( and unexpected EOF.
125         (close_emacs_globals): Use ptrdiff_t for index, not int.
126         (scan_c_file, scan_lisp_file): Exit with failure if file cannot be
127         opened, rather than diagnosing but exiting with status 0.
128         (search_lisp_doc_at_eol): Don't worry about ungetc of EOF; it's
129         portable now.
131 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
133         Memory-management cleanup in make-docfile
135         I compiled it with -fsanitize=address and fixed the leaks it detected.
136         Also, I changed it to prefer signed to unsigned integer types,
137         and to check for integer overflow.
138         * lib-src/make-docfile.c:
139         Include <stddef.h>, <stdint.h>, <intprops.h>, <min-max.h>.
140         (memory_exhausted): New function.
141         (xmalloc, xrealloc): Use it.
142         (xmalloc, xrealloc, scan_file, struct rcsoc_state, write_c_args)
143         (uncompiled, scan_lisp_file):
144         Prefer signed integer types to unsigned.
145         (xstrdup): Remove.  All uses removed.
146         (num_globals, num_globals_allocated, write_globals, scan_c_stream):
147         Use ptrdiff_t, not int, for indexes that in theory could exceed INT_MAX.
148         (add_global): Use const to pacify --enable-gcc-warnings.
149         Make a copy here, rather than relying on strdup calls later.
150         (add_global, write_globals, scan_c_stream):
151         Avoid integer overflow when calculating sizes.
152         (write_globals, scan_c_stream, scan_lisp_file): Avoid memory leak.
153         (scan_c_stream): Check for add_global failure.
155 2016-02-15  Kevin Gallagher  <Kevin.Gallagher@boeing.com>
157         Kevin Gallagher has new email address
159         * lisp/emulation/edt.el:
160         * lisp/emulation/edt-lk201.el:
161         * lisp/emulation/edt-mapper.el:
162         * lisp/emulation/edt-pc.el:
163         * lisp/emulation/edt-vt100.el:
164         * etc/edt-user.el:
165         * doc/misc/edt.texi: Update Kevin Gallagher's email address.
167 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
169         Improve doc strings of 'forward/backward-word-strictly'
171         * lisp/simple.el (backward-word): Refer to 'backward-word-strictly'
172         in the doc string.  Suggested by Glenn Morris <rgm@gnu.org>.
173         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
174         Mention 'subword-mode' in the doc strings.
176         * src/syntax.c (Fforward_word): Refer to 'forward-word-strictly'
177         in the doc string.  (Bug#22560)
179 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
181         Describe Makefile test targets in test/README
183         * CONTRIBUTE: Move Makefile test targets to test/README.
185         * Makefile.in:
186         * test/README: Describe Makefile test targets.
188 2016-02-15  Artur Malabarba  <bruce.connor.am@gmail.com>
190         Backport: * lisp/isearch.el: Turn char-folding off by default
192         (search-default-mode): Set default value to nil.
194 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
196         Document EXIF image rotation
198         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
200 2016-02-15  Dima Kogan  <dima@secretsauce.net>
202         Support integer image rotation and respect EXIF rotations
204         * src/image.c (imagemagick_load_image): Allow integer rotations in
205         addition to floating point rotations (bug#22591).
206         * src/image.c (imagemagick_load_image): Images that have an
207         orientation given in EXIF and have no explicit :rotation tag are now
208         pre-rotated.  All information such as width/height is reported for the
209         rotated image.
211 2016-02-15  Matthew Carter  <m@ahungry.com>
213         Quote table names for postgres listings (sql-mode)
215         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
216           unquoted table names to the completion list.
218 2016-02-15  Juri Linkov  <juri@linkov.net>
220         * lisp/replace.el (replace-match-maybe-edit): Make arg `backward' optional.
222         Doc fix.
223         (replace-search, replace-highlight): Make arg `backward' optional.
224         (Bug#18388)
226 2016-02-15  Juri Linkov  <juri@linkov.net>
228         * lisp/simple.el (next-line-or-history-element): Reset temporary-goal-column.
230         (previous-line-or-history-element): Reset temporary-goal-column.
231         Use end-of-visual-line instead of line-end-position.  (Bug#22544)
233 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
235         Suppress ACL ops if configured with --disable-acl
237         Without this patch, some ACL operations were suppressed, but not all.
238         * src/fileio.c [!USE_ACL]: Do not include sys/acl.h.
239         (Ffile_acl, Fset_file_acl) [!USE_ACL]: Return nil in this case.
241 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
243         Mention web bugs
245         * doc/misc/emacs-mime.texi (Display Customization):
246         Mention web bugs in the mm-html-blocked-images section.
248 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
250         Make mm-html-blocked-images default to "" again
252         * lisp/gnus/mm-decode.el (mm-html-blocked-images):
253         Default to "" that blocks all external images.
255         * doc/misc/emacs-mime.texi (Display Customization):
256         Mention that mm-html-blocked-images defaults to "".
258 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
260         Minor alignas cleanup
262         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
263         over from the old way of doing things, before Bug#20862 was fixed.
265 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
267         Add lmalloc commentary and tweak laligned
269         * src/alloc.c (laligned): Help compiler in a tiny way by putting
270         the more-commonly-failing disjunct first.
272 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
274         Clarify documentation of key binding conventions
276         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
277         "punctuation characters" are reserved after "C-c".  (Bug#22604)
279 2016-02-15  Oscar Fuentes  <ofv@wanadoo.es>
281         * etc/NEWS: mention the `vc-faces' customization group
283 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
285         Sync with gnulib
287         This incorporates:
288         2016-02-09 stdalign: port to clang 3.7.0
289         2016-02-06 misc: port better to gcc -fsanitize=address
290         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
291         Copy from gnulib.
293 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
295         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
297 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
299         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
301         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
302         (mm-html-blocked-images): Default to nil.
304         * doc/misc/emacs-mime.texi (Display Customization): Mention that
305         mm-html-inhibit-images and mm-html-blocked-images default to nil.
307         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
308         mm-html-blocked-images.
310 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
312         Increase success rate of fallback lmalloc
314         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
315         larger and larger sizes, to increase the probability that
316         the allocator will return a Lisp-aligned pointer.
318 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
320         Make backgrounds extend to the end of the lines in shr
322         * lisp/net/shr.el (shr-face-background): Faces can also be on
323         the form `(:background "#fff)' (bug#22547).
325 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
327         Make the `R' command get the correct relative <img>s
329         * lisp/net/eww.el (eww-readable): Preserve the base URL so
330         that image expansions are fetched from the right place (bug#22605).
332         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
334         Backport:
336 2016-02-15  Mike Kupfer  <m.kupfer@acm.org>
338         Fix typos in emacs-mime.texi and gnus.texi
340         * doc/misc/emacs-mime.texi (Display Customization):
341         * doc/misc/gnus.texi (HTML): Fix typo.
343 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
345         * doc/misc/emacs-mime.texi (Display Customization):
346         Doc fix for mm-html-inhibit-images.
348 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
350         Fix message-cross-post-followup-to group names
352         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
353         insert group names like "nntp+foo:zot", because those aren't valid.
355 2016-02-15  David Edmondson  <dme@dme.org>
357         Compare recipient and keys case-insensitively
359         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
360         recipient address with that from a key, do so in a case insensitive
361         manner (bug#22603).
363 2016-02-15  Glenn Morris  <rgm@gnu.org>
365         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
367 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
369         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
371         * doc/misc/emacs-mime.texi (Display Customization):
372         Remove mm-inline-text-html-with-images; add documentations for
373         mm-html-inhibit-images and mm-html-blocked-images.
375         * lisp/gnus/gnus-art.el (gnus-article-show-images):
376         No need to bind mm-inline-text-html-with-images.
377         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
378         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
379         bind mm-html-inhibit-images and mm-html-blocked-images.
380         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
381         (gnus-mm-display-part, gnus-mime-display-single)
382         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
384         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
385         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
386         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
387         mm-html-inhibit-images and mm-html-blocked-images respectively
388         instead of gnus-inhibit-images and gnus-blocked-images.
390         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
391         instead of mm-inline-text-html-with-images.
393 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
395         Port to FreeBSD 11-CURRENT i386
397         Problem reported by Herbert J. Skuhra in:
398         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
399         Instead of trying
400         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
401         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
402         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
403         (MALLOC_IS_GC_ALIGNED): New macro.
404         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
405         No longer needed now that alloc.c uses lmalloc and lrealloc.
407 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
409         Some fixes in file-notify-tests.el
411         * test/automated/file-notify-tests.el
412         (file-notify--test-with-events-check)
413         (file-notify--test-with-events-explainer): New defuns.
414         (file-notify--test-with-events): Use it.
415         (file-notify-test07-backup): Fix docstring.  Some of the
416         backends fire two `changed' events.  Backup by rename doesn't
417         work for kqueue.
419 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
421         Fix Bug#22557
423         * lisp/filenotify.el (file-notify-callback): Do not send a
424         `stopped' event in case of backup by renaming.  (Bug#22557)
426         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
427         all targets but check and check-maybe.
429         * test/automated/file-notify-tests.el
430         (file-notify--test-read-event-timeout): New defconst.
431         (file-notify--deftest-remote, file-notify--wait-for-events)
432         (file-notify-test02-events)
433         (file-notify-test04-file-validity)
434         (file-notify-test06-many-events): Use it.
435         (file-notify--test-cleanup): Make it more robust.  Delete also
436         backup file.
437         (file-notify-test07-backup): New test.
439 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
441         Fix test for dladdr
443         Problem reported by Andreas Schwab in:
444         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
445         * configure.ac (dladdr): Link with LIBMODULES when checking for
446         this function.
448 2016-02-15  Andreas Schwab  <schwab@linux-m68k.org>
450         Fix gnus-group-get-new-news-this-group on group with closed server
452         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
453         method and pass to nnimap-open-server.
455 2016-02-15  Artur Malabarba  <bruce.connor.am@gmail.com>
456 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
458         * doc/lispref/sequences.texi: Add documentation for seq-map-indexed
460 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
462         New function seq-map-indexed
464         * lisp/emacs-lisp/seq.el (seq-map-indexed): New function.
465         * test/lisp/emacs-lisp/seq-tests.el: Add tests for seq-map-indexed.
467 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
469         * lisp/gnus/mm-util.el: Remove the mm-string-as-multibyte alias.
471 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
473         Fix problem with wrong encoding of non-ASCII message bodies
475         * lisp/gnus/mml.el (mml-generate-mime-1): Disable
476         multibyteness before encoding the data.
478 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
480         Remove codepage setup code from mm-util
482         * lisp/gnus/mm-util.el (mm-codepage-setup): Remove.
483         (mm-codepage-iso-8859-list): Remove.
484         (mm-codepage-ibm-list, mm-setup-codepage-iso-8859)
485         (mm-setup-codepage-ibm): Remove.
486         (mm-charset-eval-alist): Remove the code pages from the
487         default value.
489 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
491         Remove compat code for older Emacsen
493         * lisp/gnus/gnus-art.el (gnus-button-url-regexp): Remove
494         XEmacs compat code.
496         * lisp/gnus/gnus-sync.el (gnus-sync-json-alist-p): Remove
497         unused compat function.
498         (gnus-sync-json-plist-p): Ditto.
500         * lisp/gnus/message.el (message-default-charset): Make obsolete.
501         (message-info): Remove compat code.
502         (message-setup-fill-variables): Remove kludge needed earlier
503         to not overwrite `normal-auto-fill-function'.
504         (message-split-line): Remove compat code.
506         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Remove
507         compat code.
509 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
511         Remove some compat functions from gmm-utils.el
513         * lisp/gnus/gmm-utils.el (gmm-tool-bar-from-list): Remove
514         compat code.
515         (gmm-image-search-load-path): Remove.
516         (gmm-image-load-path-for-library): Remove.
518 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
520         Remove the gmm-lazy and nnmail-lazy compat widgets
522         * lisp/gnus/gmm-utils.el (gmm-lazy): Remove.
524         * lisp/gnus/nnmail.el (nnmail-lazy): Remove.
526 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
528         Clean up nnimap-request-move-article slightly
530         * lisp/gnus/nnheader.el (subr-x): Require.
532         * lisp/gnus/nnimap.el (nnimap-request-move-article): Clean up
533         the code slightly.
535 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
537         Use open-network-stream instead of open-protocol-stream
539         * lisp/gnus/nnimap.el: Use open-network-stream instead of
540         open-protocol-stream.
542         * lisp/gnus/nntp.el: Ditto.
544         * lisp/gnus/pop3.el: Ditto.
546         * lisp/gnus/sieve-manage.el: Ditto.
548         * lisp/net/network-stream.el (open-protocol-stream): Make obsolete.
550 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
552         Remove compat code that relies on (featurep 'mule)
554         * lisp/gnus/gnus-group.el (gnus-group-name-decode): Remove
555         compat code.
557         * lisp/gnus/gnus-start.el (gnus-read-descriptions-file):
558         Remove compat code.
560         * lisp/gnus/mm-bodies.el (mm-decode-body, mm-decode-string):
561         Remove compat code.
563         * lisp/gnus/mm-view.el (mm-w3m-standalone-supports-m17n-p):
564         Remove compat code.
565         (mm-w3m-standalone-supports-m17n-p): Ditto.
567 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
569         Remove compat functions from starttls.el
571         * lisp/gnus/starttls.el
572         (starttls-set-process-query-on-exit-flag): Remove.
574 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
576         Remove compat functions from smime.el
578         * lisp/gnus/smime.el (smime-replace-in-string): Remove.
579         (smime-make-temp-file): Remove.
581 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
583         Remove compat code from smiley
585         * lisp/gnus/smiley.el (smiley-style): Remove compat code.
587 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
589         Remove compat code from rfc2047
591         * lisp/gnus/rfc2047.el (rfc2047-encode-message-header): Remove
592         compat code.
593         (rfc2047-decode-string): Ditto.
595 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
597         Remove compat function from pop3
599         * lisp/gnus/pop3.el (pop3-set-process-query-on-exit-flag): Remove.
601 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
603         Remove compat code in Gnus backends
605         * lisp/gnus/nndiary.el (nndiary-error): Remove.
607         * lisp/gnus/nndraft.el (nndraft-request-associate-buffer): Ditto.
609         * lisp/gnus/nnfolder.el (nnfolder-read-folder): Ditto.
611         * lisp/gnus/nnheader.el (nnheader-find-file-noselect): Ditto.
613         * lisp/gnus/nnimap.el (nnimap-log-buffer): Remove compat code.
615 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
617         Remove compat code from some mml files
619         * lisp/gnus/mml-sec.el (mml-secure-passphrase-cache-expiry):
620         Remove compat code.
622         * lisp/gnus/mml-smime.el (mml-smime-openssl-sign-query):
623         Always use `mail-extract-address-components', since this isn't
624         time critical.
625         (mml-smime-get-dns-cert): Ditto.
627         * lisp/gnus/mml.el (mml-preview): Remove compat code.
629 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
631         Remove compat code and compat functions from mm-util.el
633         * lisp/gnus/mm-util.el (mm-mime-mule-charset-alist): Remove
634         compat code.
635         (mm-coding-system-priorities)
636         (mm-mule-charset-to-mime-charset, mm-charset-after)
637         (mm-mime-charset, mm-iso-8859-x-to-15-region): Remove compat code.
638         (mm-detect-coding-region): Define unconditionally.
639         (mm-detect-mime-charset-region): Ditto.
640         (mm-coding-system-to-mime-charset): It's 'mime-charset now.
641         (coding-system-name)
642         (find-file-coding-system-for-read-from-filename)
643         (find-operation-coding-system): Remove aliases.
645 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
647         Remove some compat code from mm-*.el
649         * lisp/gnus/mm-bodies.el (mm-decode-body): Ditto.
651         * lisp/gnus/mm-decode.el (mm-tmp-directory)
652         (mm-valid-image-format-p): Remove compat code.
654         * lisp/gnus/mm-url.el (mm-url-insert-file-contents): Remove
655         "Connection" "Close" workaround for older Emacsen.
657 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
659         Remove compat code and functions from message.el
661         * lisp/gnus/message.el (message-send-mail-function): Remove
662         compat code.
663         (message-dont-reply-to-names, message-mode)
664         (message-setup-fill-variables, message-fill-paragraph)
665         (message-remove-blank-cited-lines, message-make-from)
666         (message-forward-rmail-make-body, message-tool-bar-gnome)
667         (message-tab): Remove compat code.
668         (message-completion-in-region): Remove.
669         (message-read-from-minibuffer): Remove compat code.
671 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
673         Declare rfc1843 instead of autoloading
675         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Declare
676         instead of autoload.
678 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
680         Avoid signaling an error in 'dired-do-find-regexp-and-replace'
682         * lisp/dired-aux.el: Require cl-lib, so that 'cl-mapcan' is
683         autoloaded correctly.  (Bug#22613)
685 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
687         Fix network-stream-tests.el for MS-Windows
689         * test/lisp/net/network-stream-tests.el
690         (connect-to-tls-ipv6-nowait): Skip for MS-Windows builds.
691         (connect-to-tls-ipv4-wait): Add a 0.1 sleep-for.
693 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
695         Remove some Message compat functions
697         * lisp/gnus/message.el (message-kill-all-overlays): Define
698         unconditionally.
699         (message-window-inside-pixel-edges): Remove.
700         (mail-dont-reply-to): Remove.
702 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
704         Remove some Gnus compat code
706         * lisp/gnus/gnus-art.el (gnus-mime-inline-part): Remove compat code.
707         (gnus-mm-display-part): Ditto.
709         * lisp/gnus/gnus-start.el (gnus-dribble-read-file): Remove
710         compat code.
712 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
714         Sort groups before inserting them into the group buffer
716         * lisp/gnus/gnus-group.el (gnus-group-describe-all-groups):
717         Sort groups before inserting them.
719 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
721         Make "unseen" tracking work again in Gnus
723         * lisp/gnus/gnus-sum.el (gnus-update-marks): Make "unseen"
724         tracking work again.
726 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
728         Remove Gnus compat functions defined in gnus.el
730         * lisp/gnus/gnus.el (gnus-extent-detached-p): Remove.
731         (gnus-extent-start-open, gnus-character-to-event)
732         (gnus-assq-delete-all, gnus-add-text-properties)
733         (gnus-put-text-property, gnus-key-press-event-p):
735 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
737         Remove compat code from gnus-uu and win
739         * lisp/gnus/gnus-util.el (gnus-image-type-available-p): Remove
740         compat code.
742         * lisp/gnus/gnus-uu.el (gnus-uu-tmp-dir): Remove compat code.
744         * lisp/gnus/gnus-win.el (gnus-frames-on-display-list): Remove.
746 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
748         Remove several gnus-util compat functions
750         * lisp/gnus/gnus-util.el (gnus-set-process-query-on-exit-flag): Remove.
751         (gnus-read-shell-command): Remove.
752         (gnus-match-substitute-replacement): Remove.
753         (gnus-string-match-p): Remove.
754         (gnus-string-prefix-p): Remove.
756 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
758         Remove the gnus-merge alias
760         * lisp/gnus/gnus-util.el (gnus-merge): Remove.
762 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
764         Remove the gnus-union alias
766         * lisp/gnus/gnus-util.el (gnus-union): Remove.
768 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
770         Remove the gnus-delete-alist alias
772         * lisp/gnus/gnus-util.el (gnus-run-mode-hooks): Remove compat code.
773         (gnus-delete-alist): Remove.
775 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
777         Remove the gnus-float-time alias
779         * lisp/gnus/gnus-util.el (gnus-completion-styles): Remove
780         compat code.
781         (gnus-float-time): Remove.
783 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
785         Remove compat code from gnus-srvr, start and sum
787         * lisp/gnus/gnus-srvr.el (gnus-browse-foreign-server): Remove
788         compat code.
790         * lisp/gnus/gnus-start.el (gnus-check-reasonable-setup):
791         Remove compat code.
793         * lisp/gnus/gnus-sum.el (gnus-summary-display-arrow)
794         (gnus-summary-make-menu-bar, gnus-summary-make-tool-bar)
795         (gnus-recenter)
796         (gnus-summary-limit-strange-charsets-predicate)
797         (gnus-summary-show-thread): Remove compat code.
799 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
801         Remove compat code from gnus-spec.el
803         * lisp/gnus/gnus-spec.el (gnus-lrm-string-p): Remove compat code.
804         (gnus-balloon-face-function): Remove compat code.
806 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
808         Fix compat change in last check-in
810         * lisp/gnus/gnus-group.el
811         (gnus-group-name-charset-group-alist): `find-coding-system'
812         doesn't exist in Emacs.
814 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
816         Always use url-queue
818         * lisp/gnus/gnus-html.el (gnus-html-schedule-image-fetching):
819         Always use url-queue.
821 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
823         Remove compat functions from gnus-html.el
825         * lisp/gnus/gnus-html.el (gnus-html-encode-url-chars): Remove.
827 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
829         Remove compat code from gnus-group.el
831         * lisp/gnus/gnus-group.el (gnus-group-name-charset-group-alist)
832         (gnus-group-make-tool-bar, gnus-group-update-tool-bar): Remove compat code.
834 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
836         Define gnus-diary-kill-entire-line unconditionally
838         * lisp/gnus/gnus-diary.el (gnus-diary-kill-entire-line):
839         Define unconditionally.
841 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
843         Remove compat code from gnus-cache and gnus-bookmark
845         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-bmenu-mode-map): Ditto.
847         * lisp/gnus/gnus-cache.el (gnus-cache-decoded-group-name):
848         Remove compat code.
850 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
852         Remove compat code from gnus-art.el
854         * lisp/gnus/gnus-art.el (gnus-article-prepare)
855         (gnus-mime-copy-part, gnus-output-to-file)
856         (gnus-article-reply-with-original)
857         (gnus-button-handle-apropos-variable)
858         (gnus-button-handle-apropos-documentation):
860 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
862         Remove compat code from gnus-agent.el
864         * lisp/gnus/gnus-agent.el (gnus-agent-make-mode-line-string):
865         Remove compat code.
867 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
869         Rewrite gmm-labels usage to use cl-labels
871         * lisp/gnus/gmm-utils.el (gmm-tool-bar-style): Remove compat code.
872         (gmm-labels): Remove.
874 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
876         Remove compat code from canlock.el
878         * lisp/gnus/canlock.el (defmacro): Remove
880 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
882         Remove compat code from auth-source
884         * lisp/gnus/auth-source.el (auth-source-read-char-choice):
885         Remove compat code.
887 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
889         Fix gnus-group.el compilation warnings about unprefixed variables
891         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): Avoid
892         compilation warnings by passing in the dynamic variables as
893         explicit lexical parameters to `eval'.
895 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
897         Fix the :tracker slot name
899         * lisp/gnus/registry.el (registry-lookup-secondary): The
900         `tracker' slot is called `tracker', not `:tracker'.
902 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
904         Fix compilation warnings in gnus-art.el
906         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Autoload.
907         (gnus-article-hide): Avoid compilation warnings.
909 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
911         Fix compilation warning in gnus-score.el
913         * lisp/gnus/gnus-score.el (gnus-art): Require to silence byte
914         compiler.
916 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
918         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
920         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
922         This makes nnimap groups not be activated.
924 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
926         Fix encoding problem introduced by previous patch series
928         * lisp/gnus/rfc2047.el: Ditto (bug#22648).
930         * lisp/gnus/rfc2231.el: Fix problem created by the
931         mm-replace-in-string conversion.
933 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
935         Revert "Avoid defvarring prefix-less variables"
937         This reverts commit 303390bda34f98b400798d5383cf0d722e35ba19.
939         The defvars are needed if we're doing lexical-binding
941 2016-02-12  Glenn Morris  <rgm@gnu.org>
943         * test/lisp/url/url-auth-tests.el (url-auth-test-digest-auth):
944         Make it pass.
946         * test/lisp/url/url-auth-tests.el
947         (url-auth-test-digest-auth-retrieve-cache): Fix obvious typo.
949 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
951         Finish up cl-defmethoding registry,el
953         * lisp/gnus/registry.el (initialize-instance): Use cl-defmethod.
955 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
957         Revert the gnus-replace-in-string change, fix arguments, reapply
959 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
961         Silence more message.el compilation warnings
963         * lisp/gnus/message.el (message-generate-headers): Don't use
964         variable values directly to get the header values, because
965         that breaks with lexical binding (without unprefixed defvars).
967 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
969         Fix various compilation warnings in message.el
971         * lisp/gnus/message.el (message-fix-before-sending): Use
972         read-multiple-choice instead of gnus-multiple-choice.
973         (mm-util): Require.
974         (rfc2047): Require.
975         (message-remove-blank-cited-lines): Use message instead of
976         gnus-message.
977         (message-send): Use y-or-n-p instead of gnus-y-or-n-p.
979 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
981         Silence compilation warning in mm-view
983         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Silence
984         compilation warning.
986 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
988         Fix epg-related compilation warnings in mml-sec
990         * lisp/gnus/mml-sec.el: Fix compilation warnings from the epg
991         library.
993 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
995         rmail-dont-reply-to-names is obsolete
997         * lisp/gnus/nnmail.el (nnmail-fancy-expiry-target): Don't bind
998         the obsolete `rmail-dont-reply-to-names' variable.
1000 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1002         Partially revert the defmethod->cl-defmethod change in registry.el
1004         * lisp/gnus/registry.el (initialize-instance): Use defmethod,
1005         since cl-defmethod doesn't work with :after.
1006         (initialize-instance): Ditto, but with :before.
1008 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1010         Avoid obsolete function in plstore
1012         * lisp/gnus/plstore.el (plstore--insert-buffer): Use setf
1013         instead of the obsolete epg-context-set-armor.
1015 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1017         Use cl-defmethod in registry.el
1019         * lisp/gnus/registry.el: Use cl-defmethod instead of the
1020         obsolete defmethod.
1022 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1024         Make sieve-manage require sasl
1026         * lisp/gnus/sieve-manage.el: Fix compilation warning by
1027         requiring sasl.
1029 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1031         Avoid defvarring prefix-less variable
1033         * lisp/gnus/mm-uu.el (mm-uu-entry): Rename from `entry'.
1035 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1037         * lisp/gnus/mailcap.el: Remove usage of mailcap-delete-duplicates.
1039 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1041         Don't use the obsolete char-valid-p function
1043         * lisp/gnus/mm-url.el (mm-url-decode-entities): Don't use the
1044         obsolete char-valid-p function.
1046 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1048         Fix missed translation in a previous commit
1050         * lisp/gnus/mailcap.el (mailcap-mime-types): Fix missed
1051         translation of mailcap-delete-duplicates.
1053 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1055         Avoid using mm-make-temp-file
1057         * lisp/gnus/mail-source.el (mail-source-delete-crash-box): Ditto.
1059         * lisp/gnus/mm-decode.el (mm-display-external): Ditto.
1061         * lisp/gnus/mml-smime.el (mml-smime-openssl-encrypt): Ditto.
1063 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1065         Fix compilation warning in gnus-start
1067         * lisp/gnus/gnus-start.el (gnus-slave-save-newsrc): Avoid
1068         mm-make-temp-file.
1070 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1072         Avoid the obsoleted defmethod
1074         * lisp/gnus/gnus-icalendar.el: Use cl-defmethod instead of
1075         defmethod.
1077 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1079         Avoid defvarring prefix-less variables
1081         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): We
1082         don't need to `defvar' the short variables to allow `eval' to
1083         use them.
1085 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1087         nnweb doesn't need unibyte buffers
1089         * lisp/gnus/nnweb.el (nnweb-retrieve-headers)
1090         (nnweb-read-overview, nnweb-request-article)
1091         (nnweb-google-reference): Unibyte buffers are not needed here.
1093 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
1095         Encode before sending from nnspool
1097         * lisp/gnus/nnspool.el (nnspool-request-post): Encode data
1098         before sending it to the news server.
1100 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1102         nnrss buffers don't have to be unibyte
1104         * lisp/gnus/nnrss.el (nnrss-insert): The buffer doesn't have
1105         to be unibyte just to receive data, I think.
1107 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1109         Don't use mm-with-unibyte-current-buffer in mml2015
1111         * lisp/gnus/mml2015.el (mml2015-mailcrypt-encrypt): Don't use
1112         mm-with-unibyte-current-buffer.
1114 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1116         Don't use mm-with-unibyte-current in mml1991
1118         * lisp/gnus/mml1991.el (mml1991-epg-sign): Don't use
1119         mm-with-unibyte-current.
1121 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1123         Don't use mm-with-unibyte-current in mml1991
1125         * lisp/gnus/mml1991.el (mml1991-pgg-sign): Don't use
1126         mm-with-unibyte-current.
1128 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1130         Don't use mm-with-unibyte-buffer in utf7
1132         * lisp/gnus/utf7.el (utf7-fragment-encode): Don't use
1133         mm-with-unibyte-buffer.
1135 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1137         Remove XEmacs compat code from Gnus helper libraries
1139         * lisp/gnus/plstore.el (plstore-called-interactively-p): Remove.
1141         * lisp/gnus/pop3.el (pop3-make-date): Remove XEmacs compat.
1143         * lisp/gnus/sieve-mode.el: Remove XEmacs compat.
1145         * lisp/gnus/spam-stat.el (spam-stat-called-interactively-p): Remove.
1147 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1149         Remove XEmacs compat code from Gnus backends
1151         * lisp/gnus/mm-view.el (mm-inline-image-xemacs): Remove.
1152         (mm-inline-image): Rename from mm-inline-image-emacs.
1154         * lisp/gnus/mml.el: Remove XEmacs compat code.
1156         * lisp/gnus/nnheader.el: Remove XEmacs compat code.
1158         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Remove
1159         XEmacs compat code.
1161         * lisp/gnus/nnir.el (nnir-run-gmane): Remove XEmacs compat code.
1163         * lisp/gnus/nnmail.el (nnmail-pathname-coding-system): Remove
1164         XEmacs compat code.
1166         * lisp/gnus/nnmairix.el: Remove XEmacs compat code.
1168         * lisp/gnus/nnrss.el: Remove XEmacs compat code.
1170         * lisp/gnus/nntp.el: Remove XEmacs compat code.
1172 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1174         Remove XEmacs compat functions from mm-util.el
1176         * lisp/gnus/mm-util.el (mm-special-display-p): Remove.
1177         (mm-decode-coding-string, mm-encode-coding-string)
1178         (mm-decode-coding-region, mm-encode-coding-region): Remove.
1179         (mm-string-to-multibyte): Remove.
1180         (mm-char-or-char-int-p): Remove.
1181         (mm-ucs-to-char): Remove compat versions of the function.
1182         (mm-read-coding-system): Remove.
1183         (mm-coding-system-p): Remove compat code.
1184         (mm-enrich-utf-8-by-mule-ucs): Remove.
1185         (mm-enable-multibyte, mm-disable-multibyte): Remove compat versions.
1186         (mm-delete-duplicates): Remove.
1187         (mm-multibyte-p): Remove compat versions.
1188         (mm-xemacs-find-mime-charset-1): Remove.
1189         (mm-xemacs-find-mime-charset): Remove.
1190         (mm-make-temp-file): Made obsolete.
1191         (mm-find-buffer-file-coding-system): Remove XEmacs compat.
1193 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1195         Remove Message and mm-decode XEmacs compat code
1197         * lisp/gnus/message.el: Remove XEmacs compat code.
1199         * lisp/gnus/mm-decode.el (mm-create-image-xemacs): Remove.
1201         * lisp/gnus/mm-util.el: Remove some XEmacs compat code.
1203 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1205         Remove som XEmacs compat code from message.el
1207         * lisp/gnus/message.el: Remove some XEmacs compat code.
1209 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1211         Remove XEmacs compat code from ietf-drums.el
1213         * lisp/gnus/ietf-drums.el (ietf-drums-syntax-table): Drop
1214         XEmacs compat.
1216 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1218         Remove XEmacs compat code from gravatar.el
1220         * lisp/gnus/gravatar.el: Remove XEmacs compat code from
1221         gravatar.el.
1223 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1225         Remove more XEmacs compat code from Gnus
1227         * lisp/gnus/gnus-util.el (gnus-bound-and-true-p): Remove.
1228         (gnus-timer--function): Remove.
1230         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Remove XEmacs
1231         19.2 compat.
1233         * lisp/gnus/gnus-win.el: Remove XEmacs compat code.
1235 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1237         Remove more XEmacs compat functions from gnus-util.el
1239         * lisp/gnus/gnus-util.el (gnus-put-display-table): Remove.
1240         (gnus-get-display-table): Remove.
1241         (gnus-format-message): Remove.
1243 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1245         Remove more XEmacs compat functions from Gnus
1247         * lisp/gnus/gnus-util.el (gnus-next-char-property-change): Remove.
1248         (gnus-previous-char-property-change): Remove.
1249         (gnus-graphic-display-p): Remove.
1250         (gnus-select-frame-set-input-focus): Remove.
1252 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1254         Remove more XEmacs compat code from gnus-util
1256         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
1257         all its usages).
1258         (gnus-invisible-p): Remove.
1260 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1262         Remove gnus-make-local-hook
1264         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
1265         all its usages).
1267 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
1269         gnus-replace-in-string -> replace-regexp-in-string
1271         * lisp/gnus/gnus-util.el (gnus-replace-in-string): Declare
1272         obsolete.  Transform all usages of it into
1273         replace-regexp-in-string.
1275         * lisp/gnus/mailcap.el (mailcap-replace-in-string): Remove.
1277 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
1279         Remove Gnus XEmacs compat
1281         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Remove comment
1282         about code that doesn't work in XEmacs.
1284         * lisp/gnus/gnus-sum.el: Remove XEmacs compat.
1286         * lisp/gnus/gnus-topic.el: Remove XEmacs compat.
1288 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
1290         Remove compat functions in gnus-spec.el
1292         * lisp/gnus/gnus-spec.el (gnus-string-width-function): Remove.
1293         (gnus-substring-function): Remove.
1294         (gnus-use-correct-string-widths): Remove.
1295         (gnus-make-format-preserve-properties): Remove.
1296         (gnus-xmas-format): Remove.
1298         * lisp/gnus/gnus-srvr.el (gnus-server-mode): Remove XEmacs compat.
1300 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
1302         Remove Gnus XEmacs compat functions
1304         * lisp/gnus/gnus-registry.el: Remove XEmacs compat.
1306         * lisp/gnus/gnus-salt.el: Remove XEmacs compat.
1308         * lisp/gnus/gnus-score.el (gnus-decay-score): Remove XEmacs compat.
1310 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
1312         Remove Gnus XEmacs compatibility
1314         * lisp/gnus/gnus-demon.el (gnus-demon-idle-since): Remove
1315         XEmacs compat.
1317         * lisp/gnus/gnus-dired.el: Remove XEmacs compat.
1319         * lisp/gnus/gnus-draft.el: Remove XEmacs compat.
1321         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-insert): Remove
1322         XEmacs compat.
1324         * lisp/gnus/gnus-group.el: Remove XEmacs compat.
1326         * lisp/gnus/gnus-html.el: Remove XEmacs compat.
1328         * lisp/gnus/gnus-ml.el: Remove XEmacs compat.
1330         * lisp/gnus/gnus-picon.el (gnus-picon-style): Remove XEmacs comment.
1332 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
1334         Don't use image-map if it isn't defined
1336         * lisp/net/shr.el (shr-image-map): Only use image-map as a
1337         parent if it's defined (bug#22614).
1339 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
1341         Check for MagickAutoOrientImage
1343         * configure.ac: Check for MagickAutoOrientImage.
1345         * src/image.c (imagemagick_load_image): Don't use
1346         MagickAutoOrientImage unless it's available.
1348 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
1350         Document EXIF image rotation
1352         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
1354 2016-02-10  Dima Kogan  <dima@secretsauce.net>
1356         Support integer image rotation and respect EXIF rotations
1358         * src/image.c (imagemagick_load_image): Allow integer rotations in
1359         addition to floating point rotations (bug#22591).
1360         * src/image.c (imagemagick_load_image): Images that have an
1361         orientation given in EXIF and have no explicit :rotation tag are now
1362         pre-rotated.  All information such as width/height is reported for the
1363         rotated image.
1365 2016-02-10  Wolfgang Jenkner  <wjenkner@inode.at>
1367         * lisp/net/shr.el (image-map): Defvar it.  (Bug#22614)
1369 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
1371         * lisp/gnus/gnus-cite.el: Remove XEmacs compat code.
1373 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1375         Remove compat code from gnus-bookmark.el
1377         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-mouse-available-p): Remove.
1378         (gnus-bookmark-remove-properties): Remove.
1380 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1382         Remove XEmacs compat code from gnus-a*.el
1384         * lisp/gnus/gnus-agent.el: Remove compat code.
1386         * lisp/gnus/gnus-art.el: Remove compat code.
1388         * lisp/gnus/gnus-async.el: Remove compat code.
1390 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1392         Remove gmm compat functions
1394         * lisp/gnus/gmm-utils.el (gmm-image-search-load-path): Remove.
1395         (gmm-write-region): Remove.
1396         (gmm-called-interactively-p): Remove.
1398 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1400         * lisp/gnus/ecomplete.el: Remove XEmacs compat code.
1402 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1404         Remove compat code from compface.el
1406         * lisp/gnus/compface.el: Remove XEmacs compat code throughout.
1408 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1410         Remove the now empty gnus-ems.el and references to it
1412 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1414         Remove Gnus compat names for mouse bindings
1416         * lisp/gnus/gnus-ems.el (gnus-widget-button-keymap): Remove.
1417         (gnus-down-mouse-2): Remove.
1418         (gnus-down-mouse-3): Remove.
1420 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1422         Drop Gnus compat functions
1424         * lisp/gnus/gnus-ems.el (gnus-mule-max-width-function): Remove.
1426         * lisp/gnus/gnus-util.el (gnus-kill-all-overlays): Move here.
1428         * lisp/gnus/gnus.el (gnus-mode-line-modified): Remove.
1430 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1432         Get rid of gnus-ems-redefine
1434         * lisp/gnus/gnus-ems.el (gnus-mouse-face-prop): Remove.
1436 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1438         * lisp/gnus/gnus-spec.el: Move definition here from gnus-ems.el.
1440 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1442         Remove Gnus compat code
1444         * lisp/gnus/gnus-ems.el (gnus-ems-redefine): Remove
1445         transitional code from ten years ago.
1447 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1449         Allow interactively scaling past :max-width etc
1451         * lisp/image.el (image--current-scaling)
1452         (image--image-without-parameters): New functions.
1453         (image--change-size): Use them to allow changing the size of a
1454         image even if it has :width/:max-width (etc.) already set.
1456 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1458         * lisp/gnus/mm-decode.el (shr-image-map): Compilation fix.
1460 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1462         Allow accessing the image commands via shr
1464         * lisp/gnus/mm-decode.el (mm-convert-shr-links): Allow
1465         accessing the image commands.
1467         * lisp/net/shr.el (shr-image-map): New map used for images.
1468         (shr-urlify): Don't overwrite image maps when applying URL maps.
1470 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1472         Use a sparse image keymap
1474         * lisp/image.el (image-map): Use a sparse keymap.
1476 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1478         Put a keymap on images created with insert-image and friends
1480         * lisp/image.el (image-save): New command.
1481         (image-rotate): Ditto.
1482         (image-map): New keymap.
1483         (insert-image): Put the image-map on all images.
1484         (insert-sliced-image): Ditto.
1485         * doc/lispref/display.texi (Showing Images): Document the
1486         image map.
1488 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1490         Fix some folding issues in read-multiple-choice
1492         * lisp/subr.el (read-multiple-choice): Fix folding when you
1493         have many items.
1495 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1497         Fix typo in last checkin
1499 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1501         Remove Gnus compat functions
1503         * lisp/gnus/gnus-ems.el (gnus-mark-active-p)
1504         (gnus-region-active-p, gnus-select-lowest-window)
1505         (gnus-summary-display-table, gnus-max-width-function): Remove
1506         compat functions.
1508 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1510         Move non-compat Gnus functions to gnus-util.el
1512         * lisp/gnus/gnus-util.el (gnus-remove-image, gnus-put-image)
1513         (gnus-create-image, gnus-image-type-available-p): Move here
1514         from gnus-ems.el, since these aren't compat functions.
1516 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
1518         Omit valloc decl if redundant
1520         * src/gmalloc.c (valloc): Omit decl if malloc.h is included,
1521         to pacify --enable-gcc-warnings.
1523 2016-02-09  Wolfgang Jenkner  <wjenkner@inode.at>
1525         Restore the calloc family.
1527         * src/gmalloc.c (calloc, gcalloc, hybrid_calloc): Restore definitions.
1528         They were lost in a4817d8 but calloc is still (marginally) used in
1529         code statically liked with emacs, so hybrid_calloc is needed.
1530         Also, in the non-hybrid case, we can't get rid of calloc anyway as
1531         other libraries liked with emacs may need it.
1532         * src/conf_post.h: Restore redefinition of calloc to hybrid_calloc.
1534 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
1536         Remove some Gnus compat functions
1538         * lisp/gnus/gnus-ems.el (gnus-string-mark-left-to-right)
1539         (gnus-window-inside-pixel-edges, gnus-set-process-plist)
1540         (gnus-process-plist, gnus-process-get, gnus-process-put): Remove.
1542 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
1544         -
1546         -
1548 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
1550         Merge from origin/emacs-25
1552         4feb962 * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
1553         cc419fb Don't inloop gnus-uu-mark-thread on the last thread
1554         51c77a2 Display non-ASCII group names better in prompts
1555         f93d669 Default to gpg2 instead of gpg
1557 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
1559         Merge from origin/emacs-25
1561         9ffe7dd * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
1562         16140f7 * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
1563         3db6adb * lisp/isearch.el (search-default-mode)
1564         4ea1ea7 * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
1565         c77ffc8 Use monitor's resolution for positioning tooltips
1566         49e5749 Fix file-notify-test on MS-Windows
1567         be1d874 Fix issues found by auditing w32notify code
1568         87ae218 Extend etags Ruby support for accessors
1569         aa35257 Update publicsuffix.txt.
1570         6816bff Ensure that Gnus dribble handling allows removing entries
1571         691feae Be consistent when using encoded strings in nnimap data
1572         3ed423b Display the decoded Gnus group name
1573         5428b5b Use completion-ignore-case instead of defining command
1575 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
1577         Merge from origin/emacs-25
1579         1eaf68f * test/automated/file-notify-tests.el (file-notify-test06-many-events):
1580         d333716 ; * etc/NEWS: Expand news entry for scss-mode
1581         c32c16f ; Better document changes in ls-lisp default behavior
1582         dc6eed2 Fix doc string of tls-program
1584 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
1586         Merge from origin/emacs-25
1588         2c117fc * etc/NEWS: Document new mpc.el features
1589         71a0496 * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
1590         9dfece1 Correctly fontify C++ initializations which "look like" functions.
1591         4485222 Improve newsticker-treeview-selection-face
1592         4236944 Minor fix in tagging Ruby accessors by etags
1593         35fc77d Spelling fixes
1594         3dda110 Remove 'def X' from the example
1596 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
1598         Minor alignas cleanup
1600         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
1601         over from the old way of doing things, before Bug#20862 was fixed.
1603 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
1605         Add lmalloc commentary and tweak laligned
1607         * src/alloc.c (laligned): Help compiler in a tiny way by putting
1608         the more-commonly-failing disjunct first.
1610 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
1612         Clarify documentation of key binding conventions
1614         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
1615         "punctuation characters" are reserved after "C-c".  (Bug#22604)
1617 2016-02-09  Oscar Fuentes  <ofv@wanadoo.es>
1619         * etc/NEWS: mention the `vc-faces' customization group
1621 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
1623         Sync with gnulib
1625         This incorporates:
1626         2016-02-09 stdalign: port to clang 3.7.0
1627         2016-02-06 misc: port better to gcc -fsanitize=address
1628         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
1629         Copy from gnulib.
1631 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
1633         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
1635 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
1637         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
1639         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
1640         (mm-html-blocked-images): Default to nil.
1642         * doc/misc/emacs-mime.texi (Display Customization): Mention that
1643         mm-html-inhibit-images and mm-html-blocked-images default to nil.
1645         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
1646         mm-html-blocked-images.
1648 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
1650         Increase success rate of fallback lmalloc
1652         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
1653         larger and larger sizes, to increase the probability that
1654         the allocator will return a Lisp-aligned pointer.
1656 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
1658         Make backgrounds extend to the end of the lines in shr
1660         * lisp/net/shr.el (shr-face-background): Faces can also be on
1661         the form `(:background "#fff)' (bug#22547).
1663 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
1665         Make the `R' command get the correct relative <img>s
1667         * lisp/net/eww.el (eww-readable): Preserve the base URL so
1668         that image expansions are fetched from the right place (bug#22605).
1670         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
1672         Backport:
1674 2016-02-08  Mike Kupfer  <m.kupfer@acm.org>
1676         Fix typos in emacs-mime.texi and gnus.texi
1678         * doc/misc/emacs-mime.texi (Display Customization):
1679         * doc/misc/gnus.texi (HTML): Fix typo.
1681 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
1683         * doc/misc/emacs-mime.texi (Display Customization):
1684         Doc fix for mm-html-inhibit-images.
1686 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
1688         Fix message-cross-post-followup-to group names
1690         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
1691         insert group names like "nntp+foo:zot", because those aren't valid.
1693 2016-02-08  David Edmondson  <dme@dme.org>
1695         Compare recipient and keys case-insensitively
1697         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
1698         recipient address with that from a key, do so in a case insensitive
1699         manner (bug#22603).
1701 2016-02-08  Glenn Morris  <rgm@gnu.org>
1703         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
1705 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
1707         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
1709         * doc/misc/emacs-mime.texi (Display Customization):
1710         Remove mm-inline-text-html-with-images; add documentations for
1711         mm-html-inhibit-images and mm-html-blocked-images.
1713         * lisp/gnus/gnus-art.el (gnus-article-show-images):
1714         No need to bind mm-inline-text-html-with-images.
1715         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
1716         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
1717         bind mm-html-inhibit-images and mm-html-blocked-images.
1718         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
1719         (gnus-mm-display-part, gnus-mime-display-single)
1720         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
1722         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
1723         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
1724         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
1725         mm-html-inhibit-images and mm-html-blocked-images respectively
1726         instead of gnus-inhibit-images and gnus-blocked-images.
1728         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
1729         instead of mm-inline-text-html-with-images.
1731 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
1733         Port to FreeBSD 11-CURRENT i386
1735         Problem reported by Herbert J. Skuhra in:
1736         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
1737         Instead of trying
1738         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
1739         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
1740         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
1741         (MALLOC_IS_GC_ALIGNED): New macro.
1742         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
1743         No longer needed now that alloc.c uses lmalloc and lrealloc.
1745 2016-02-08  Michael Albinus  <michael.albinus@gmx.de>
1747         Some fixes in file-notify-tests.el
1749         * test/automated/file-notify-tests.el
1750         (file-notify--test-with-events-check)
1751         (file-notify--test-with-events-explainer): New defuns.
1752         (file-notify--test-with-events): Use it.
1753         (file-notify-test07-backup): Fix docstring.  Some of the
1754         backends fire two `changed' events.  Backup by rename doesn't
1755         work for kqueue.
1757 2016-02-07  Michael Albinus  <michael.albinus@gmx.de>
1759         Fix Bug#22557
1761         * lisp/filenotify.el (file-notify-callback): Do not send a
1762         `stopped' event in case of backup by renaming.  (Bug#22557)
1764         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
1765         all targets but check and check-maybe.
1767         * test/automated/file-notify-tests.el
1768         (file-notify--test-read-event-timeout): New defconst.
1769         (file-notify--deftest-remote, file-notify--wait-for-events)
1770         (file-notify-test02-events)
1771         (file-notify-test04-file-validity)
1772         (file-notify-test06-many-events): Use it.
1773         (file-notify--test-cleanup): Make it more robust.  Delete also
1774         backup file.
1775         (file-notify-test07-backup): New test.
1777 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
1779         Fix test for dladdr
1781         Problem reported by Andreas Schwab in:
1782         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
1783         * configure.ac (dladdr): Link with LIBMODULES when checking for
1784         this function.
1786 2016-02-07  Andreas Schwab  <schwab@linux-m68k.org>
1788         Fix gnus-group-get-new-news-this-group on group with closed server
1790         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
1791         method and pass to nnimap-open-server.
1793 2016-02-07  Artur Malabarba  <bruce.connor.am@gmail.com>
1795         * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
1797         While tabs in code are mostly fine because the Emacs sources have a
1798         .dir-locals file specifying tab-width, the same is not true of tabs in
1799         code examples inside docstrings.  The docstring is printed on a *Help*
1800         buffer, which can be created on any directory and won't necessarily have
1801         the same tab-width set.
1803 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
1805         Don't inloop gnus-uu-mark-thread on the last thread
1807         * lisp/gnus/gnus-uu.el (gnus-uu-mark-thread): Don't infloop on the
1808         final thread in the summary buffer (bug#16666).
1810 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
1812         Display non-ASCII group names better in prompts
1814         * lisp/gnus/gnus-sum.el (gnus-articles-to-read): To decode the
1815         group name, we have to do that before we remove the prefix.
1817 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
1819         Default to gpg2 instead of gpg
1821         * lisp/epg-config.el (epg-gpg-program): Prefer gpg2 over gpg, if
1822         it exists.  This fixes many problems with using the GPG
1823         authentication agent.
1825 2016-02-06  David Edmondson  <dme@dme.org>
1827         src/process.c Correctly convert AF_INET6 addresses
1829         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
1830         converted to a list of 16 bit quantities by
1831         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
1832         same scheme rather than expecting a (longer) list of 8 bit
1833         quantities.
1835         Backport:
1837         (cherry picked from commit 55ce3c30d617c38eb086d5ad4ffbd881c20c559c)
1839 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
1841         * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
1843 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
1845         * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
1847         (menu-bar-search-options-menu): New variable
1849 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
1851         * lisp/isearch.el (search-default-mode)
1853         (isearch-regexp-function): Improve docstrings.
1855 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
1857         * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
1859         (search-default-mode): New variable.
1860         (isearch-mode, isearch-define-mode-toggle)
1861         (isearch--describe-regexp-mode): Update accordingly.
1862         * lisp/menu-bar.el (nonincremental-search-forward): Update accordingly.
1863         * etc/NEWS: Update accordingly.
1864         * doc/emacs/search.texi: Update accordingly.
1866 2016-02-06  Oscar Fuentes  <ofv@wanadoo.es>
1868         Use monitor's resolution for positioning tooltips
1870         * src/xfns.c (compute_tip_xy): Use the resolution of the monitor where
1871           the mouse pointer is to avoid placing the tooltip over the border of
1872           the monitor on multi-head displays. Fixes bug#22549.
1874 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
1876         Fix file-notify-test on MS-Windows
1878         * test/automated/file-notify-tests.el (file-notify--test-timeout):
1879         Reduce w32notify timeout to 10 sec.
1880         (file-notify-test06-many-events): Call read-event after each
1881         rename, to keep the w32notify backend happy in batch mode.
1882         (Bug#22534)
1884 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
1886         Fix issues found by auditing w32notify code
1888         * src/w32inevt.c (handle_file_notifications): Count the number of
1889         events to be returned.
1890         * src/w32notify.c (send_notifications): Don't copy to the file
1891         notification buffer more than it can hold.  (Bug#22534)
1893 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
1895         Extend etags Ruby support for accessors
1897         * lib-src/etags.c (Ruby_functions): Support accessors defined with
1898         parentheses.  (Bug#22563)
1900         * test/etags/ruby-src/test1.ru (A::B): Add tests for accessors
1901         defined with parentheses.
1902         * test/etags/ETAGS.good_1:
1903         * test/etags/ETAGS.good_2:
1904         * test/etags/ETAGS.good_3:
1905         * test/etags/ETAGS.good_4:
1906         * test/etags/ETAGS.good_5:
1907         * test/etags/ETAGS.good_6:
1908         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
1910 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
1912         Update publicsuffix.txt.
1914         * etc/publicsuffix.txt: Updated from
1915         https://publicsuffix.org/list/public_suffix_list.dat.
1917 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
1919         Ensure that Gnus dribble handling allows removing entries
1921         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Ensure that each
1922         entry is on a single line.
1924 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
1926         Be consistent when using encoded strings in nnimap data
1928         * lisp/gnus/nnimap.el (nnimap-encode-gnus-group): New function
1929         (nnimap-request-list): Use it.
1930         (nnimap-request-newgroups): Ditto.
1932 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
1934         Display the decoded Gnus group name
1936         * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Use the
1937         decoded group name in the message.
1939 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
1941         Use completion-ignore-case instead of defining command
1943         * lisp/erc/erc.el (erc-mode): Set completion-ignore-case so
1944         that we get case-insensitive completion.
1945         (erc-completion-at-point): Remove.
1947 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
1949         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
1951 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
1953         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
1955         Reduce the number of iterations to 250 in case of w32notify.
1957 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
1959         Fix problems caused by new implementation of sub-word mode
1961         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
1962         New functions.
1963         (word-move-empty-char-table): New variable.
1965         * etc/NEWS: Mention 'forward-word-strictly' and
1966         'backward-word-strictly'.
1968         * doc/lispref/positions.texi (Word Motion): Document
1969         'find-word-boundary-function-table', 'forward-word-strictly', and
1970         'backward-word-strictly'.  (Bug#22560)
1972         * src/syntax.c (syms_of_syntax)
1973         <find-word-boundary-function-table>: Doc fix.
1975         * lisp/wdired.el (wdired-xcase-word):
1976         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
1977         (texinfo-copy-section-title, texinfo-start-menu-description)
1978         (texinfo-copy-menu-title, texinfo-specific-section-type)
1979         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
1980         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
1981         (texinfo-insert-@end):
1982         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
1983         (texinfo-anchor, texinfo-multitable-widths)
1984         (texinfo-multitable-item):
1985         * lisp/textmodes/tex-mode.el (latex-env-before-change):
1986         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
1987         * lisp/skeleton.el (skeleton-insert):
1988         * lisp/simple.el (count-words):
1989         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
1990         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
1991         (vhdl-update-sensitivity-list, vhdl-template-block)
1992         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
1993         (vhdl-template-default-indent, vhdl-template-for-loop)
1994         (vhdl-template-if-then-use, vhdl-template-bare-loop)
1995         (vhdl-template-nature, vhdl-template-procedural)
1996         (vhdl-template-process, vhdl-template-selected-signal-asst)
1997         (vhdl-template-type, vhdl-template-variable)
1998         (vhdl-template-while-loop, vhdl-beginning-of-block)
1999         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
2000         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
2001         (verilog-forward-sexp, verilog-beg-of-statement)
2002         (verilog-set-auto-endcomments, verilog-backward-token)
2003         (verilog-do-indent):
2004         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
2005         (vera-indent-block-closing):
2006         * lisp/progmodes/simula.el (simula-context)
2007         (simula-backward-up-level, simula-forward-down-level)
2008         (simula-previous-statement, simula-next-statement)
2009         (simula-skip-comment-backward, simula-calculate-indent)
2010         (simula-find-if, simula-electric-keyword):
2011         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
2012         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
2013         (ruby-smie--forward-token, ruby-smie--backward-token)
2014         (ruby-singleton-class-p, ruby-calculate-indent)
2015         (ruby-forward-sexp, ruby-backward-sexp):
2016         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
2017         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
2018         (perl-syntax-propertize-special-constructs)
2019         (perl-backward-to-start-of-continued-exp):
2020         * lisp/progmodes/pascal.el (pascal-indent-declaration):
2021         * lisp/progmodes/octave.el (octave-function-file-p):
2022         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
2023         * lisp/progmodes/js.el (js--forward-function-decl):
2024         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
2025         (idlwave-beginning-of-block, idlwave-end-of-block)
2026         (idlwave-block-jump-out, idlwave-determine-class):
2027         * lisp/progmodes/icon.el (icon-is-continuation-line)
2028         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
2029         * lisp/progmodes/hideif.el (hide-ifdef-define):
2030         * lisp/progmodes/f90.el (f90-change-keywords):
2031         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
2032         (cperl-linefeed, cperl-electric-terminator)
2033         (cperl-find-pods-heres, cperl-fix-line-spacing)
2034         (cperl-invert-if-unless):
2035         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
2036         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
2037         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
2038         (ada-adjust-case-skeleton, ada-create-case-exception)
2039         (ada-create-case-exception-substring)
2040         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
2041         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
2042         (ada-get-indent-if, ada-get-indent-block-start)
2043         (ada-get-indent-loop, ada-get-indent-type)
2044         (ada-search-prev-end-stmt, ada-check-defun-name)
2045         (ada-goto-decl-start, ada-goto-matching-start)
2046         (ada-goto-matching-end, ada-looking-at-semi-or)
2047         (ada-looking-at-semi-private, ada-in-paramlist-p)
2048         (ada-search-ignore-complex-boolean, ada-move-to-start)
2049         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
2050         * lisp/net/quickurl.el (quickurl-grab-url):
2051         * lisp/mail/sendmail.el (mail-do-fcc):
2052         * lisp/mail/rmail.el (rmail-resend):
2053         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
2054         * lisp/mail/mail-extr.el (mail-extract-address-components):
2055         * lisp/json.el (json-read-keyword):
2056         * lisp/files.el (insert-directory):
2057         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
2058         * lisp/completion.el (symbol-under-point, symbol-before-point)
2059         (symbol-before-point-for-complete, next-cdabbrev)
2060         (add-completions-from-c-buffer):
2061         * lisp/cedet/semantic/texi.el (semantic-up-context)
2062         (semantic-beginning-of-context):
2063         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
2064         use 'forward-word-strictly' and 'backward-word-strictly' instead
2065         of 'forward-word' and 'backward-word'.
2067 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
2069         Fix doc string of tls-program
2071         * lisp/net/tls.el (tls-program): Document the %t parameter (bug#22559).
2073 2016-02-05  Mark Oteiza  <mvoteiza@udel.edu>
2075         * etc/NEWS: Document new mpc.el features
2077 2016-02-04  Leo Liu  <sdl.web@gmail.com>
2079         * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
2081 2016-02-04  Alan Mackenzie  <acm@muc.de>
2083         Correctly fontify C++ initializations which "look like" functions.
2085         Fixes bug#7579.
2087         lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
2088         parameter to enable handling of "anonymous" declarators in declarations.
2090         lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
2091         whether a "(" opens a parameter list of a function, or an initialization of a
2092         variable.
2094 2016-02-04  Ulf Jasper  <ulf.jasper@web.de>
2096         Improve newsticker-treeview-selection-face
2098         * newst-treeview.el (newsticker-treeview-selection-face): Improve
2099         readability for dark background.
2101 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
2103         Minor fix in tagging Ruby accessors by etags
2105         * lib-src/etags.c (Ruby_functions): Don't tag accessors whose
2106         names are not literal symbols.  (Bug#22241)
2108 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
2110         Spelling fixes
2112 2016-02-04  Dmitry Gutov  <dgutov@yandex.ru>
2114         Remove 'def X' from the example
2116         * test/etags/ruby-src/test1.ru (A::B): Remove 'def X'
2117         (http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00167.html).
2118         * test/etags/CTAGS.good:
2119         * test/etags/ETAGS.good_1:
2120         * test/etags/ETAGS.good_2:
2121         * test/etags/ETAGS.good_3:
2122         * test/etags/ETAGS.good_4:
2123         * test/etags/ETAGS.good_5:
2124         * test/etags/ETAGS.good_6: Adjust accordingly.
2126 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
2128         Fix network-stream-tests on MS-Windows
2130         * test/lisp/net/network-stream-tests.el (make-local-unix-server):
2131         Skip if local sockets are not supported.
2133 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
2135         * admin/notes/bug-triage: Fix bug priorities.  Explain colors in debbugs-gnu.
2137 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
2139         Disable 'timer-list'
2141         * lisp/emacs-lisp/timer-list.el: Make 'timer-list' a disabled
2142         command.
2144 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
2146         Avoid aligned_alloc static/extern collision
2148         * src/alloc.c (aligned_alloc): Define to private name when a
2149         static function, to avoid collision with lisp.h extern decl.
2150         Reported by John Yates in:
2151         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00439.html
2153 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
2155         Make `message-beginning-of-line' aware of folded headers
2157         * lisp/gnus/message.pl (message-beginning-of-header): New function which
2158         moves point to the beginning of a mail header.  The function is aware of
2159         folded headers and with non-nil argument looks for the true beginning of
2160         a header while with nil argument moves to the indented text of header's
2161         value.
2162         (message-beginning-of-line): Function is now aware of folded headers and
2163         either moves point to the indention of a header or, in visual-line-mode,
2164         searches for the beginning of the header.
2166 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
2168         Optimise ‘point in message header’ check
2170         * lisp/gnus/message.el (message-point-in-header-p): Replace two unbound
2171         regular expression matches with a single bound string match thus
2172         reducing amount of work the function is doing.
2174 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
2176         Make the `R' command get the correct relative <img>s
2178         * lisp/net/eww.el (eww-readable): Preserve the base URL so
2179         that image expansions are fetched from the right place (bug#22605).
2181 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
2183         Add a mode to list and cancel timers
2185         * doc/lispref/os.texi (Timers): Menton `timer-list'.
2187         * lisp/emacs-lisp/timer-list.el: New file.
2189 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
2191         Add new commands to allow changing the size of images
2193         * lisp/image.el (image-increase-size, image-decrease-size):
2194         New commands.
2195         (image-change-size): New function.
2197 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
2199         Allow the image scale to be a floating point number
2201         * src/image.c (compute_image_size): The scale can be a
2202         floating point number.
2204 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
2206         Add an IPv6 test
2208         * test/lisp/net/network-stream-tests.el
2209         (connect-to-tls-ipv6-nowait): Add an ipv6 test, too.
2211 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
2213         Use gnutls-serv instead of openssh
2215         * test/lisp/net/network-stream-tests.el (make-tls-server): Use
2216         gnutls-serv instead of openssh.
2218 2016-02-08  Daniel Colascione  <dancol@dancol.org>
2220         Performance improvements for vc-hg
2222         Teach vc-hg how to read some Mercurial internal data structures,
2223         allowing us to avoid the need to run hg status -A, which is very slow
2224         for large repositories.  Fall back to running hg if anything looks
2225         funny.  vc-hg now puts the _working directory_ revision in the
2226         modeline instead of the file revision, which greatly improves
2227         performance and which allows us to again skip running hg in the case
2228         that we have an active bookmark.
2230         * lisp/vc/vc-hg.el (vc-hg-state): Try calling `vc-hg-statefast'
2231         (vc-hg-symbolic-revision-styles)
2232         (vc-hg-use-file-version-for-mode-line-version)
2233         (vc-hg-parse-hg-data-structures): New user preferences
2234         (vc-hg--active-bookmark-internal, vc-hg--run-log)
2235         (vc-hg--symbolic-revision, vc-hg-mode-line-string)
2236         (vc-hg--read-u8, vc-hg--read-u32-be)
2237         (vc-hg--raw-dirstate-search, vc-hg--cached-dirstate-search)
2238         (vc-hg--parts-to-string, vc-hg--pcre-to-elisp-re)
2239         (vc-hg--glob-to-pcre, vc-hg--hgignore-add-pcre)
2240         (vc-hg--hgignore-add-glob, vc-hg--hgignore-add-path)
2241         (vc-hg--slurp-hgignore-1, vc-hg--slurp-hgignore)
2242         (vc-hg--ignore-patterns-valid-p)
2243         (vc-hg--ignore-patterns-ignored-p, vc-hg--time-to-fixnum)
2244         (vc-hg--file-ignored-p, vc-hg--read-repo-requirements)
2245         (vc-hg--requirements-understood-p, vc-hg--dirstate-scan-cache)
2246         (vc-hg-state-fast): New functions.
2247         (vc-hg--hgignore-patterns, vc-hg--hgignore-filenames)
2248         (vc-hg--cached-ignore-patterns, vc-hg--dirstate-scan-cache)
2249         (vc-hg--dirstate-scan-cache): New internal variables.
2250         * lisp/vc/vc-hooks.el (vc-refresh-state): Invoke vc find-file-hook
2251         before updating modeline.
2253 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
2255         Skip TLS tests if we don't have openssl
2257         * test/lisp/net/network-stream-tests.el (connect-to-tls): Skip
2258         TLS tests if we don't have openssl and GnuTLS.
2260 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
2262         Automatically scale images up on high-density screens
2264         * doc/lispref/display.texi (ImageMagick Images): Mention :scale.
2265         (Defining Images): Mention image-scaling-factor.
2267         * lisp/image.el (image-compute-scaling-factor): New function
2268         (bug#22172).
2269         (create-image): Use it.
2270         (image-scaling-factor): New variable.
2272         * src/image.c (compute_image_size): Take :scale into account.
2274 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
2276         Ensure progress when fetching from the queue
2278         * lisp/url/url-queue.el (url-queue-check-progress): Ensure
2279         that we have progress when fetching queued requests (bug#22576).
2281 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
2283         Make mail-extract-address-components return the user name more
2285         * lisp/mail/mail-extr.el (mail-extract-address-components):
2286         Return the name even if it's the same as the mailbox name (if
2287         `mail-extr-ignore-single-names' isn't set) (bug#22594).
2289 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
2291         Message no longer warns about unknown top level domains
2293 2016-02-07  Jarno Malmari  <jarno@malmari.fi>
2295         Add tests for url-auth
2297         * test/lisp/url/url-auth-tests.el: New file.
2299 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
2301         Add a TLS connection test
2303         * test/lisp/net/network-stream-tests.el (connect-to-tls): Add
2304         a TLS connection test.
2306 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
2308         Add more network tests
2310         * test/lisp/net/network-stream-tests.el (echo-server-nowait):
2311         New test.
2313 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
2315         Add network tests
2317         * test/lisp/net/network-stream-tests.el: New suite of network tests.
2319 2016-02-07  Foo  <rasmus@gmx.us>
2321         Allow various Gnus and Message address variables to be functions
2323         * doc/misc/gnus.texi (To From Newsgroups):
2324         gnus-ignored-from-addresses can be a function.
2326         * doc/misc/message.texi (Wide Reply):
2327         message-dont-reply-to-names can be a function.
2329         * lisp/gnus/gnus-icalendar.el (gnus-icalendar-identities):
2330         message-alternative-emails can be a function.
2332         * lisp/gnus/gnus-notifications.el (gnus-notifications):
2333         message-alternative-emails can be a function (bug#22315).
2335         * lisp/gnus/gnus-sum.el
2336         (gnus-summary-from-or-to-or-newsgroups):
2337         gnus-ignored-from-addresses can be a function (bug#22315).
2339 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
2341         Fix typo in Gnus regexp
2343         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Fix
2344         typo in last change to this regexp (bug#22592).
2346 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
2348         Port to FreeBSD x86
2350         Reported by Herbert J. Skuhra in:
2351         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00336.html
2352         * src/lisp.h (NONPOINTER_BITS) [__FreeBSD__]: Zero in this case too,
2353         since malloc always returns a multiple of 8 in FreeBSD.
2355 2016-02-07  Alan Mackenzie  <acm@muc.de>
2357         On leaving CC Mode, clean up by removing character properties.
2359         * lisp/progmodes/cc-mode.el (c-leave-cc-mode-mode): Remove from the buffer
2360         all instances of the text properties/extents category, syntax-table,
2361         c-is-sws, c-in-sws, c-type, and c-awk-NL-prop.
2363 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
2365         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Don't use
2366         the no-longer-existing message-valid-fqdn-regexp variable.
2368 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
2370         Remove message-valid-fqdn-regexp, since it changes too much now
2371         * lisp/gnus/message.el (message-valid-fqdn-regexp): Remove.
2372         (message-bogus-recipient-p): Don't use it any more.
2373         (message-make-fqdn): Ditto.  Suggested by Lars-Johan Liman.
2375 2016-02-06  Paul van der Walt  <paul@denknerd.org>  (tiny change)
2377         * lisp/gnus/message.el (message-subject-re-regexp): Also match
2378         "Re :" as a "Re:" prefix (commonly used in France).
2380 2016-02-06  Adam Sjøgren  <asjo@koldfront.dk>
2382         * lisp/net/shr.el (shr-tag-del, shr-tag-ins): New functions.
2384 2016-02-06  David Edmondson  <dme@dme.org>
2386         src/process.c Correctly convert AF_INET6 addresses
2387         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
2388         converted to a list of 16 bit quantities by
2389         conv_sockaddr_to_lisp().  conv_lisp_to_sockaddr() should follow the
2390         same scheme rather than expecting a (longer) list of 8 bit
2391         quantities.
2393 2016-02-06  Martin Jesper Low Madsen  <martin@martinjlowm.dk>  (tiny change)
2395         * lisp/gnus/auth-source.el (auth-source-macos-keychain-search):
2396         Search for all host/port (or protocol) combinations for a match in
2397         the OS X keychain.
2399 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
2401         Remove nonsensical setting of gnus-newsgroup-unseen
2403         * lisp/gnus/gnus-sum.el (gnus-update-marks): Remove nonsensical
2404         setting of gnus-newsgroup-unseen.
2406 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
2408         Use underline on all terminals that support it
2410         * lisp/subr.el (read-multiple-choice): Use
2411         display-supports-face-attributes-p instead of
2412         display-graphic-p to determine whether we can use underlining.
2414 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
2416         Make the nsm query say what it did after the user interaction
2418         * lisp/net/nsm.el (nsm-query): Issue a message about
2419         aborting/accepting messages (suggested by N. Jackson)
2420         (bug#22531).
2422 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
2424         Omit XLI (init) == 0 optimization in make-vector
2426         * src/alloc.c (Fmake_vector): Simplify by omitting the (XLI (init)
2427         == 0) case, as this optimization is probably not worth the hassle.
2428         Just for the record, the test for that case could have been
2429         (XLI (init) % ((EMACS_UINT) -1 / UCHAR_MAX) == 0) (!),
2430         assuming the typical platform with no padding bits and where
2431         conversion to int omits the most significant bits.
2433 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
2435         * autogen.sh: Port to dash (Bug#22556).
2437 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
2439         Minor cleanup for Tramp "doas".
2441         * doc/misc/tramp.texi (Inline methods): Add "doas" method.
2443         * etc/NEWS: Add Tramp connection method "doas".
2445         * lisp/net/tramp-sh.el (tramp-methods) <doas>:
2446         Add `tramp-remote-shell-args'.
2448 2016-02-05  Xi Lu  <lx@shellcodes.org>
2450         * lisp/net/tramp-sh.el (tramp-methods) <doas>: Add.  (Bug#22542)
2452         (tramp-default-user-alist): Add rule for "doas".
2453         (top): Completion function for "doas" is
2454         `tramp-completion-function-alist-su'.
2456 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
2458         Restore the window configuration
2460         * lisp/net/nsm.el (nsm-query-user): Restore the window
2461         configuration (bug#22532).
2463 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
2465         Use an X popup in read-multiple-choice if running from a mouse command
2467         * lisp/subr.el (read-multiple-choice): Use an X popup if
2468         called from a mouse action (bug#19368).
2470 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
2472         Display cursor in echo area when prompting
2474         * lisp/subr.el (read-multiple-choice): Display the cursor in
2475         the echo area when prompting (bug#19368).
2477 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
2479         Make NSM prompting clearer
2481         * lisp/net/nsm.el (nsm-query-user): Use read-multiple-choice
2482         to prompt in a nicer way (bug#19368).
2484 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
2486         Underline read-multiple-choice-face
2488         * lisp/faces.el (read-multiple-choice-face): Also underline
2489         the choice.
2491 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
2493         Make the read-multiple-choice prompt a bit prettier
2495         * doc/lispref/commands.texi (Reading One Event): Mention
2496         read-multiple-choice-face.
2498         * lisp/subr.el (read-multiple-choice): Make the prompting a bit
2499         prettier.
2501 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
2503         Prefer memcpy and memset to doing it by hand
2505         * src/alloc.c (Fmake_vector):
2506         * src/ccl.c (setup_ccl_program):
2507         Use memset to clear array.
2508         * src/alloc.c (Fvector, Fmake_byte_code):
2509         * src/charset.c (Fdefine_charset_internal):
2510         Use memcpy to copy array.
2512 2016-02-04  Nicolas Petton  <nicolas@petton.fr>
2514         Do not ignore redirections of 301, 302 and 307 status codes
2516         The current version of HTTP/1.1 (RFC 7231) no longer requires
2517         confirmation on 301, 302 or 307 status codes, therefore we do not have
2518         to ignore redirects for other requests than GET and HEAD.
2520         * lisp/url/url-http.el (url-http-parse-headers): Do not ignore 301, 302
2521         and 307 redirects for other requests than GET and HEAD.
2523 2016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
2525         * lisp/net/eww.el (eww-switch-to-buffer): Use pop-to-buffer-same-window instead.
2527 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
2529         Simplify USE_ALIGNED_ALLOC
2531         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify, now that we’ve merged
2532         in the emacs-25 changes.  Omit no-longer-needed decl for aligned_alloc.
2534 2016-02-04  Eric Abrahamsen  <eric@ericabrahamsen.net>
2536         Honor docstring of gnus-group-get-new-news
2538         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg
2539         is t, but non-numeric, unconditionally consider all groups to need
2540         updating.
2542 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
2544         New function read-multiple-choice
2546         * doc/lispref/commands.texi (Reading One Event): Document
2547         read-multiple-choice.
2549         * lisp/faces.el (read-multiple-choice-face): New face.
2551         * lisp/subr.el (read-multiple-choice): New function.
2553 2016-02-04  John Wiegley  <johnw@newartisans.com>
2555         Merge from origin/emacs-25
2557         ee73997 Make erc work better when encountering unknown prefix chars
2558         b99141d Make erc completion case-insensitive again
2559         66c4620 Make complection in erc use consistent casing
2560         8c562b2 Make /QUIT in erc more robust
2561         d93d2c5 Make tracking faces in Emacs work more reliably
2562         af6ab7e Make shr not bug out on images on non-graphical displays
2563         3311f40 Fix bookmark display widths
2564         d90ab1e Fix typo in eww-make-unique-file-name
2565         7f81825 Make it possible to TAB to input fields
2566         a43a1dc Insert complete alt texts when images are disabled
2567         56ed4e1 Allow eww text fields to grow
2568         66b315c Make erc work when subword-mode is switched on
2569         255b68f Fix IMAP doc example
2570         91557f5 Quoting fixes in doc strings and diagnostics
2571         2c0dc9f Fix warning message in hack-local-variables
2572         504696d Etags: yet another improvement in Ruby tags
2573         8784ebf Fix x-popup-menu on TTYs without a mouse
2574         8b87ecb * lisp/emacs-lisp/map.el: Improvements to the docstring of the
2575                 pcase macro
2576         6191003 Use pop-to-buffer-same-window in eww
2577         fe321fd * autogen.sh: Revert all recent changes.
2578         74ebd4a * make-dist: Updates related to nt/.
2579         737193a * make-dist: Add modules/.
2580         3696bf2 * make-dist: Update for super-special file that can't live in etc/.
2581         a4278e2 Fix failure to compile ns-win.el in parallel builds
2582         860da4d Fix names of tags generated for Ruby accessors
2583         f6213ce Fix file-name recognition in 'etags'
2584         e42e662 Change Ruby file names and extensions recognized by 'etags'
2585         58bfb6a More improvements for Ruby support in 'etags'
2586         c04e911 Add --git-config option to autogen.sh
2587         5713466 Fix editing undo changes in eww fields
2588         51362d6 Allow the user more control of popping up the eww window
2589         ee0fbd8 Make eww-browse-url with new-window parameter work again
2590         9c3142d Clean up eww code slightly
2591         cb035f3 Don't insert nil faces in shr
2592         4c3fae3 ; * lisp/progmodes/prolog.el: Remove some obsolete commentary.
2593         93f2153 Improve the custom type of some user options.
2594         9f60d7e Mark some risky calendar variables.
2595         1d07dcd Highlight two additional SCSS keywords
2596         ee8b466 Recommend enabling integrity-checking in git
2597         e639e10 Some corrections in Elisp manual
2598         d766ca8 Chatter when autogen.sh changes Git configuration
2599         3b734e1 * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
2600         43cb9f8 Omit unnecessary history from Lisp intro
2601         2fbd1da * etc/HISTORY: Add some more history, plus git tags.
2602         c90e1b4 Improve elisp “Security Considerations” doc
2603         cedd7ca autogen.sh now arranges for git to check hashes
2604         86ce76b ; Fix ChangeLog.2 commit ID.
2605         7b1d2b1 Fix (c & 040) typo in emergency escapes
2606         a8273da Fix display of overlay strings with 'display' and 'box' property
2607         fc48106 Fix imap-starttls-open
2608         cdecbed Fix return value of imap-starttls-open
2609         20c7e34 ; * etc/NEWS: Fix renamed command name
2610         98bdbdb Correct reference to DARWIN_OS preprocessor symbol
2611         b250d29 Spelling fix
2612         b920a0e Spelling fixes
2613         93b144b Pacify GCC on C library without glibc API
2615 2016-02-04  John Wiegley  <johnw@newartisans.com>
2617         Merge from origin/emacs-25
2619         ea26c8a * lisp/net/browse-url.el (browse-url-default-browser): Lower
2620                 priority of non-free Chrome.
2621         0fac75f Improve the custom type of some user options.
2622         2df0e04 Highlight CSS variables with variable name face
2623         3cf5e81 * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not
2624                 user-serviceable.
2625         2a5233c Mark some user options that can get evalled as risky.
2626         39b166f Disable DebPrint in sys_read on MS-Windows
2627         9fd0189 ;Fix ChangeLog entry
2628         4bb7233 Fix typos in Introduction to Emacs Lisp manual
2630 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
2632         Allow sending empty hidden values in eww
2634         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
2635         values (bug#22388).
2637         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
2639         Backport:
2641 2016-02-04  David Edmondson  <dme@dme.org>
2643         Make erc work better when encountering unknown prefix chars
2645         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
2646         instead of erroring out on unknown prefix chars (bug#22380).
2648 2016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
2650         Add a new command to switch between erc buffers
2652         * doc/misc/eww.texi: Document eww-switch-to-buffer and its keybinding
2653         * etc/NEWS: Mention new command
2654         * lisp/net/eww.el (eww-mode-map): Bind eww-switch-to-buffer to "s"
2655         (eww-mode-map): Add menu item
2656         (eww-switch-to-buffer): New command
2658 2016-02-04  David Edmondson  <dme@dme.org>
2660         Make erc work better when encountering unknown prefix chars
2662         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
2663         instead of erroring out on unknown prefix chars (bug#22380).
2665 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
2667         Allow sending empty hidden values in eww
2669         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
2670         values (bug#22388).
2672 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
2674         Make erc completion case-insensitive again
2676         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
2677         case-insensitive again (bug#11360).
2679 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
2681         Make complection in erc use consistent casing
2683         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
2684         case in the complection consistent (bug#18509).
2686 2016-02-04  Francis Litterio  <flitterio@gmail.com>
2688         Make /QUIT in erc more robust
2690         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
2691         issuing /QUIT to disconnected servers (bug#22099).
2693 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
2695         Make tracking faces in Emacs work more reliably
2697         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
2698         faces to avoid later ambiguity (bug#22424).
2700 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
2702         Make shr not bug out on images on non-graphical displays
2704         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
2705         images on non-graphical displays (bug#22327).
2707 2016-02-04  Andrew Hyatt  <ahyatt@gmail.com>
2709         Remove packages obsoleted before Emacs 24.
2711         In accordance with the policy discussed in the emacs-devel list,
2712         packages that have been obsoleted for a full major release cycle are up
2713         for deletion.
2715         This removes almost all packages that are now eligible for deletion,
2716         with the exception of "cl-compat", which seems it is likely to still be
2717         used, and "optional", which offers some functionality that doesn't have
2718         a replacement yet.
2720 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
2722         Fix bookmark display widths
2724         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
2725         preparing it so that the widths are computed correctly (bug#22328).
2727 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
2729         Fix typo in eww-make-unique-file-name
2731         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
2732         actually work.
2734 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
2736         Make it possible to TAB to input fields
2738         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
2739         input fields (bug#22540).
2741 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
2743         Insert complete alt texts when images are disabled
2745         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
2746         the complete alt/title string (bug#22293).
2748 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
2750         Allow eww text fields to grow
2752         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
2753         grow when typing in stuff that's longer than the original width.
2755 2016-02-03  Dima Kogan  <dima@secretsauce.net>
2757         Make erc work when subword-mode is switched on
2759         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
2760         (erc-bounds-of-word-at-point): New functions to do word-based
2761         things when subword-mode is switched on.
2763         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
2764         (bug#17558).
2766 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
2768         Fix IMAP doc example
2770         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
2772 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
2774         Quoting fixes in doc strings and diagnostics
2776         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
2777         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
2778         (mml-smime-get-ldap-cert):
2779         Follow user style preference when quoting diagnostics.
2781 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
2783         Mention context when resume from emergency escape
2785         That way, if the user has been doing something else for a while,
2786         they are reminded of the situation when restarting Emacs,
2787         and are more likely to understand the two questions.
2788         * doc/emacs/trouble.texi (Emergency Escape): Document this.
2789         * src/keyboard.c (handle_interrupt): Implement this.
2791 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
2793         Fix warning message in hack-local-variables
2795         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
2796         the original buffer name in the warning message.  (Bug#21681)
2798 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
2800         Etags: yet another improvement in Ruby tags
2802         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
2803         Ruby accessor definitions.  (Bug#22241)
2805         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
2806         accessors and multiline definitions.
2807         * test/etags/ETAGS.good_1:
2808         * test/etags/ETAGS.good_2:
2809         * test/etags/ETAGS.good_3:
2810         * test/etags/ETAGS.good_4:
2811         * test/etags/ETAGS.good_5:
2812         * test/etags/ETAGS.good_6:
2813         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
2815 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
2817         Fix x-popup-menu on TTYs without a mouse
2819         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
2820         for the TTY case without a mouse.  (Bug#22538)
2822 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
2824         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
2826 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
2828         Port aligned_alloc decl to Cygwin.
2830         Problem reported by Ken Brown (Bug#22522#38).
2831         * configure.ac (aligned_alloc): Check for decl too.
2832         * src/lisp.h (aligned_alloc): Declare if not already declared.
2834 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
2836         autogen.sh now configures git only on request
2838         * autogen.sh (do_autoconf, do_git): New vars.
2839         Support new arguments --help, all, autoconf, git.
2840         By default, just do autoconf-related configuration, not git.
2841         Prefer 'echo' to 'cat <<EOF ...', as this tends to avoid temp files.
2842         If GNU cp is available, use it to backup .git/config before
2843         changing it.  When configuring git, chatter about what is being
2844         done, and configure git to check hashes.  Avoid some duplicate
2845         file name specification when creating git hooks.
2847         * GNUmakefile (ALL_IF_GIT): New macro.
2848         (configure): Use it.
2849         * INSTALL.REPO: Suggest './autogen.sh all'.
2851 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
2853         Use pop-to-buffer-same-window in eww
2855         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
2856         switch-to-buffer (bug#22244).
2858 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
2860         * autogen.sh: Revert all recent changes.
2862 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
2864         Build with C11 if available
2866         * admin/merge-gnulib (GNULIB_MODULES): Add std-gnu11.
2867         * m4/std-gnu11.m4: New file, from gnulib.
2868         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
2870 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
2872         Update gnulib copy
2874         * doc/misc/texinfo.tex: Copy from gnulib.
2876 2016-02-02  Glenn Morris  <rgm@gnu.org>
2878         * make-dist: Updates related to nt/.
2880         * make-dist: Add modules/.
2882         * make-dist: Update for super-special file that can't live in etc/.
2884 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
2886         Fix failure to compile ns-win.el in parallel builds
2888         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
2889         dependency on $(lispsource)/international/charprop.el.
2890         (Bug#22501)
2892 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
2894         Fix names of tags generated for Ruby accessors
2896         * lib-src/etags.c (Ruby_functions): Don't include the leading
2897         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
2899         * test/etags/ETAGS.good_1:
2900         * test/etags/ETAGS.good_2:
2901         * test/etags/ETAGS.good_3:
2902         * test/etags/ETAGS.good_4:
2903         * test/etags/ETAGS.good_5:
2904         * test/etags/ETAGS.good_6:
2905         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
2907 2016-02-02  Glenn Morris  <rgm@gnu.org>
2909         * lisp/vc/add-log.el (change-log-directory-files, find-change-log):
2910         Doc tweaks.
2912 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
2914         Fix file-name recognition in 'etags'
2916         * lib-src/etags.c (get_language_from_filename): If FILE includes a
2917         leading directory, compare only its basename to the known file
2918         names in lang_names[].
2920         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
2921         renaming.
2922         * test/etags/ETAGS.good_1:
2923         * test/etags/ETAGS.good_2:
2924         * test/etags/ETAGS.good_3:
2925         * test/etags/ETAGS.good_4:
2926         * test/etags/ETAGS.good_5:
2927         * test/etags/ETAGS.good_6:
2928         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
2929         to the results in Makefile due to the above etags.c fix.
2931 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
2933         Change Ruby file names and extensions recognized by 'etags'
2935         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
2936         of Ruby files.
2937         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
2938         <lang_names>: Add Ruby_filenames to the Ruby entry.
2939         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
2940         (Bug#22241)
2942 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
2944         Port better to platforms lacking aligned_alloc
2946         Problem reported by Ken Brown (Bug#22522).
2947         * src/lisp.h (hybrid_aligned_alloc)
2948         [HYBRID_MALLOC && !HAVE_ALIGNED_ALLOC]: New decl.
2950 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
2952         Port malloc.h hygiene fix to LTO
2954         * src/alloc.c (__malloc_initialize_hook):
2955         Make it externally visible (Bug#22522).
2957 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
2959         More improvements for Ruby support in 'etags'
2961         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
2962         alias_method.  Identify constants even if the assignment is not
2963         followed by whitespace.  (Bug#22241)
2965         * test/etags/ruby-src/test1.ruby: Add tests for constants,
2966         accessors, and alias_method.
2967         * test/etags/ETAGS.good_1:
2968         * test/etags/ETAGS.good_2:
2969         * test/etags/ETAGS.good_3:
2970         * test/etags/ETAGS.good_4:
2971         * test/etags/ETAGS.good_5:
2972         * test/etags/ETAGS.good_6:
2973         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
2975 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
2977         Add --git-config option to autogen.sh
2979         * autogen.sh: New options --git-config, --help.
2980         (git_config): New shell var.  Alter function to respect this var.
2982 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
2984         Fix editing undo changes in eww fields
2986         * eww.el (eww-tag-form): Don't overwrite initial form data in text
2987         fields.
2988         (eww-process-text-input): Make `M-t' at the end of text fields work
2989         better (bug#19085).
2991 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
2993         Allow the user more control of popping up the eww window
2995         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
2996         Michael Heerdegen) (bug#22244).
2998 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
3000         Make eww-browse-url with new-window parameter work again
3002         * eww.el (eww-browse-url): Stay in the same buffer if we're
3003         already in a eww mode buffer so that eww-browse-url with a
3004         new-window parameter works (bug#22244).
3006 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
3008         Clean up eww code slightly
3010         * eww.el (eww-browse-url): Clean up code slightly.
3012 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
3014         Don't insert nil faces in shr
3016         * shr.el (shr-insert-table): Don't add nil faces, because that
3017         will show up in *Messages* as "Invalid face reference: nil [32
3018         times]".
3020 2016-02-01  Glenn Morris  <rgm@gnu.org>
3022         Make find-change-log prefer a VCS root, if no ChangeLog exists.
3024         * lisp/vc/add-log.el (change-log-directory-files): New option.
3025         (find-change-log): Respect change-log-directory-files.
3026         * doc/emacs/maintaining.texi (Change Log Commands):
3027         Mention change-log-directory-files.
3029 2016-02-01  Glenn Morris  <rgm@gnu.org>
3031         Improve the custom type of some user options.
3033         * lisp/autoinsert.el (auto-insert-alist):
3034         * lisp/replace.el (query-replace-from-to-separator):
3035         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
3036         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
3037         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
3038         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
3039         (prolog-mode-specificators, prolog-determinism-specificators)
3040         (prolog-directives, prolog-program-name, prolog-program-switches)
3041         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
3042         (prolog-prompt-regexp): Improve custom type.
3044 2016-02-01  Glenn Morris  <rgm@gnu.org>
3046         Mark some risky calendar variables.
3048         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
3049         Remove risky setting for deleted obsolete alias.
3050         (calendar-chinese-standard-time-zone-name)
3051         (calendar-chinese-daylight-saving-start)
3052         (calendar-chinese-daylight-saving-end):
3053         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
3054         (calendar-european-date-display-form)
3055         (calendar-american-date-display-form, calendar-date-display-form):
3056         * lisp/calendar/diary-lib.el (diary-remind-message)
3057         (diary-header-line-format):
3058         * lisp/calendar/solar.el (calendar-time-display-form)
3059         (calendar-location-name): Mark as risky.
3061 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
3063         Highlight two additional SCSS keywords
3065         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
3066         identifiers on the form !foo.
3067         (scss-bang-ids): New defconst holding SCSS identifiers on the form
3068         !foo.
3069         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
3070         `font-lock-builtin-face'.
3072         * test/indent/css-mode.css: Add bang rule test case.
3074         * test/indent/scss-mode.css: Add test cases for the introduced bang
3075         rules.
3077 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
3079         Recommend enabling integrity-checking in git
3081         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
3083         This is related to the autogen.sh changes made by Paul Eggert in
3084         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
3085         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
3086         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
3087         "Recommend these .gitconfig settings for git integrity." at
3088         https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
3090 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
3092         Some corrections in Elisp manual
3094         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
3095         argument POSITION.
3096         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
3097         is an option.
3098         * doc/lispref/display.texi (Refresh Screen): Describe optional
3099         argument FRAME of `redraw-frame'.
3100         (Attribute Functions): Describe optional argument CHARACTER of
3101         `face-font'.
3102         (Defining Images): `image-load-path' is an option.
3103         (Beeping): `ring-bell-function' is an option.
3104         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
3105         argument of `set-frame-size' is optional.
3106         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
3107         is optional.
3108         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
3109         `set-transient-map'.
3110         * doc/lispref/minibuf.texi (Text from Minibuffer):
3111         `read-regexp-defaults-function' is an option.
3112         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
3113         * doc/lispref/modes.texi (Mode Line Variables):
3114         `mode-line-position' and `mode-line-modes' are variables, not
3115         options.
3116         * doc/lispref/strings.texi (Creating Strings): The START argument
3117         of `substring' is optional.
3118         * doc/lispref/text.texi (Buffer Contents): Describe optional
3119         argument NO-PROPERTIES of `thing-at-point'.
3120         (User-Level Deletion): Both arguments of
3121         `delete-trailing-whitespace' are optional.
3122         (Margins): Use @key{RET} instead of @kbd{RET}.
3123         * doc/lispref/windows.texi (Display Action Functions): Write
3124         non-@code{nil} instead of non-nil.
3125         (Choosing Window Options): The WINDOW arg of
3126         `split-window-sensibly' is optional.
3127         (Choosing Window Options): Write non-@code{nil} instead of
3128         non-nil.
3129         (Window Start and End): Both args of `window-group-end' are
3130         optional.
3132         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
3133         to POSITION to keep consisteny with doc-string.
3135 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
3137         Double static heap size.
3139         * src/sheap.h (STATIC_HEAP_SIZE): Double it, since it was too
3140         small on FreeBSD (Bug#22086).
3142 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
3144         Chatter when autogen.sh changes Git configuration
3146         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
3148 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
3150         * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
3152 2016-02-01  Michael Albinus  <michael.albinus@gmx.de>
3154         Fix Bug#20821
3156         * lisp/net/tramp.el (tramp-file-name-handler):
3157         * lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name):
3158         Use `tramp-drop-volume-letter'.  (Bug#20821)
3160 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
3162         Omit unnecessary history from Lisp intro
3164         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
3165         (Conclusion): Reword so as not to talk about earlier versions
3166         of Emacs in what should be an intro.
3168 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
3170         * etc/HISTORY: Add some more history, plus git tags.
3172 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
3174         Improve elisp “Security Considerations” doc
3176         * doc/lispref/os.texi (Security Considerations):
3177         Mention call-process and rename-file as opposed to shell commands.
3178         Add some more cross-references.
3180 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
3182         autogen.sh now arranges for git to check hashes
3184         Suggested by Karl Fogel in:
3185         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
3186         * autogen.sh: Do "git config transfer.fsckObjects true".
3188 2016-01-31  Dave Barker  <kzar@kzar.co.uk>
3190         Add ability to give rcirc servers an alias name
3192         * lisp/net/rcirc.el (rcirc-server-alist): Add :server-alias
3193         customization option.
3194         (rcirc, rcirc-connect): Take server alias into account.
3196 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
3198         Fix (c & 040) typo in emergency escapes
3200         * src/keyboard.c (handle_interrupt): Fix recently-introduced
3201         typo (040 should have been ~040) that silently suppressed
3202         auto-saves after emergency escapes.  Redo comparison to avoid
3203         similar problems.
3205 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
3207         Port new hybrid malloc to FreeBSD
3209         Problem reported by Wolfgang Jenkner in: http://bugs.gnu.org/22086#118
3210         * src/gmalloc.c (__malloc_initialize_hook, __after_morecore_hook)
3211         (__morecore) [HYBRID_MALLOC]: Define in this case too.
3213 2016-01-31  Wolfgang Jenkner  <wjenkner@inode.at>
3215         * configure.ac: Stop using mmap for buffers for FreeBSD.
3217 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
3219         Fix display of overlay strings with 'display' and 'box' property
3221         * src/xdisp.c (get_next_display_element): Take the box face from
3222         display stack level that comes from a buffer, not an overlay
3223         string.  (Bug#22499)
3225 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
3227         Fix imap-starttls-open
3229         * lisp/net/imap.el (imap-starttls-open): Log imap process
3230         output.  Call imap-parse-greeting.  (Bug#22500)
3232 2016-01-31  Michael Albinus  <michael.albinus@gmx.de>
3234         Merge changes from Tramp repository
3236         * doc/misc/Makefile.in (${buildinfodir}/tramp.info tramp.html):
3237         No EXTRA_OPTS needed.
3239         * doc/misc/tramp.texi: Merge changes from Emacsemacs-25
3240         branch, especially for @trampfn{}.
3241         (Top): Move @ifnottex down.
3242         (History): XEmacs support has been removed.
3243         (GVFS based methods, Remote processes): Do not use emacsgvfs flag.
3244         (Auto-save and Backup): Use both syntax versions.
3245         (File name Syntax): Remark on IPv6 adresses is valid for
3246         unified syntax only.
3248         * doc/misc/trampver.texi: Do not set emacsgvfs flag.
3250 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
3252         Fix return value of imap-starttls-open
3254         * lisp/net/imap.el (imap-starttls-open): Fix return value.
3256 2016-01-31  John Wiegley  <johnw@newartisans.com>
3258         Correct reference to DARWIN_OS preprocessor symbol
3260         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
3261           not be defined.
3263 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
3265         Spelling fixes
3267         Spelling fix
3269         Spelling fixes
3271 2016-01-30  Glenn Morris  <rgm@gnu.org>
3273         * lisp/vc/add-log.el (find-change-log): Use locate-dominating-file.
3275 2016-01-30  Matthew Carter  <m@ahungry.com>
3277         Quote table names for postgres listings (sql-mode)
3279         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
3280           unquoted table names to the completion list.
3282 2016-01-30  Glenn Morris  <rgm@gnu.org>
3284         Change Smerge "Mine" and "Other" for "Upper" and "Lower.  (Bug#20878)
3286         * lisp/vc/smerge-mode.el (smerge-diff-switches)
3287         (smerge-context-menu, smerge-match-conflict, smerge-swap): Doc fixes.
3288         (smerge-upper, smerge-upper-face, smerge-keep-upper)
3289         (smerge-diff-base-upper): Rename from smerge-mine, smerge-mine-face,
3290         smerge-keep-mine, smerge-diff-base-mine.  Update all uses.
3291         (smerge-mine-face, smerge-other-face): Remove obsolete face aliases.
3292         (smerge-lower, smerge-lower-face, smerge-lower-re, smerge-keep-lower)
3293         (smerge-diff-base-lower): Rename from smerge-other, smerge-other-face,
3294         smerge-other-re, smerge-keep-other, smerge-diff-base-lower.
3295         Update all uses.
3296         (smerge-basic-map): Add "l" and "u" bindings.
3297         (smerge-mode-menu): Update menu bindings for renaming.
3298         (smerge-font-lock-keywords): Update face names.
3299         (smerge-match-names): Update names.
3300         (smerge-diff-upper-lower): Rename from smerge-diff-mine-other.
3301         (smerge-match-conflict, smerge-ediff): Rename local variables.
3302         (smerge-makeup-conflict): Relabel markers.
3303         (smerge-parsep-re): Use renamed variables.
3305 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
3307         Port recent my_edata change to MS-Windows
3309         * src/lastfile.c (my_edata): Also define if WINDOWSNT.
3311 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
3313         Pacify GCC on C library without glibc API
3315         Without this change, with --enable-gcc-warnings GCC would complain
3316         “error: redundant redeclaration of ‘aligned_alloc’”.
3317         * configure.ac: Simplify aligned_alloc testing.
3318         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
3319         since the simplified configure.ac no longer checks for that.
3320         Don’t declare if HAVE_ALIGNED_ALLOC.
3321         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
3323 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
3325         Tell Automake the new lib/Makefile.am is OK
3327         * lib/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
3329 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
3331         Make it easy to override preferred-branch test
3333         * Makefile.in (preferred-branch-is-current):
3334         Rename from emacs-25-branch-is-current.  All uses changed.
3335         (PREFERRED_BRANCH): New macro.
3337 2016-01-30  Glenn Morris  <rgm@gnu.org>
3339         * lisp/net/browse-url.el (browse-url-default-browser):
3340         Lower priority of non-free Chrome.
3342 2016-01-30  Glenn Morris  <rgm@gnu.org>
3344         Improve the custom type of some user options.
3346         * lisp/desktop.el (desktop-minor-mode-table):
3347         * lisp/man.el (Man-frame-parameters):
3348         * lisp/midnight.el (midnight-delay):
3349         * lisp/speedbar.el (speedbar-select-frame-method):
3350         * lisp/tooltip.el (tooltip-frame-parameters):
3351         * lisp/tree-widget.el (tree-widget-space-width):
3352         * lisp/type-break.el (type-break-keystroke-threshold):
3353         * lisp/woman.el (woman-imenu-generic-expression):
3354         * lisp/cedet/ede.el (ede-debug-program-function):
3355         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
3356         * lisp/emulation/viper-keym.el (viper-toggle-key):
3357         * lisp/erc/erc-networks.el (erc-server-alist):
3358         * lisp/gnus/message.el (message-deletable-headers, message-signature):
3359         * lisp/mail/mailalias.el (mail-directory-stream):
3360         * lisp/play/tetris.el (tetris-x-colors):
3361         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
3363 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
3365         Highlight CSS variables with variable name face
3367         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
3368         (css--font-lock-keywords): Highlight variables in
3369         `font-lock-variable-name-face'.
3371 2016-01-30  Glenn Morris  <rgm@gnu.org>
3373         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
3375 2016-01-30  Glenn Morris  <rgm@gnu.org>
3377         Mark some user options that can get evalled as risky.
3379         * lisp/allout.el (allout-title):
3380         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
3381         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
3382         * lisp/progmodes/gud.el (gud-tooltip-display):
3383         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
3384         Mark as risky.
3386 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
3388         Disable DebPrint in sys_read on MS-Windows
3390         * src/w32.c (sys_read): Disable a debugging print that is normal
3391         when non-blocking reads are retried.
3393 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
3395         ;Fix ChangeLog entry
3397 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
3399         Fix typos in Introduction to Emacs Lisp manual
3401         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
3402         (kill-new function, Digression into C)
3403         (Complete forward-sentence, Divide and Conquer, Find a File)
3404         (lengths-list-many-files, Columns of a graph, defcustom)
3405         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
3406         <dbastos@toledo.com>.
3408 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
3410         Shrink static heap a bit
3412         * src/sheap.h: Include lisp.h, for Lisp_Object.
3413         (STATIC_HEAP_SIZE): Now an enum constant, not a macro.
3414         Make it 2 MiB * sizeof (Lisp_Object), which is a bit more
3415         conservative than the old value.
3416         (Bug#22086)
3418 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
3420         Fix extern symbols defined and not used
3422         * src/alloc.c: Always include <signal.h>.
3423         (malloc_warning) [!SIGDANGER && (SYSTEM_MALLOC || HYBRID_MALLOC)]:
3424         Do not define; unused.
3425         * src/emacs.c, src/lisp.h (might_dump) [!DOUG_LEA_MALLOC]: Now static.
3426         * src/gmalloc.c (gdefault_morecore): Rename from __default_morecore,
3427         to avoid collision with glibc.  Now static.  All uses changed.
3428         * src/lastfile.c (my_edata): Define only if
3429         ((!defined SYSTEM_MALLOC && !defined HYBRID_MALLOC && !defined
3430         WINDOWSNT) \ || defined CYGWIN || defined DARWIN_OS).
3431         (Bug#22086)
3433 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
3435         Build lib/e-*.o only on platforms that need it
3437         * configure.ac (hybrid malloc): Simplify configuration.
3438         (SHEAP_OBJ): Remove; no longer needed.
3439         (HYBRID_MALLOC): New var. Subst it.
3440         (HYBRID_MALLOC_LIB): New Automake conditional.
3441         * lib/Makefile.am (noinst_LIBRARIES): Add libegnu.a only if
3442         HYBRID_MALLOC_LIB.
3443         (libegnu_a_CPPFLAGS): Omit AM_CPPFLAGS; not needed.
3444         (MOSTLYCLEANFILES): Add libegnu.a.
3445         * src/Makefile.in (SHEAP_OBJ): Remove.
3446         (HYBRID_MALLOC): New macro.
3447         (base_obj): Use it to conditionally add sheap.o.
3448         (LIBEGNU_ARCHIVE): New macro.
3449         ($(LIBEGNU_ARCHIVE)): New rule, replacing $(lib)/libegnu.a.
3450         All uses of the latter replaced by the former.
3451         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify configuration.
3452         Correct misspelling ALIGNED_ALLOC to HAVE_ALIGNED_ALLOC.
3453         * src/gmalloc.c: Update comment.
3454         * src/lisp.h (aligned_alloc)
3455         [!DOUG_LEA_MALLOC && !HYBRID_MALLOC && !SYSTEM_MALLOC]:
3456         New decl.
3457         (Bug#22086)
3459 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
3461         Include <malloc.h> when advisable
3463         This should help insulate us better from future glibc changes.
3464         It is good hygiene to include .h files for APIs that Emacs uses.
3465         Fix type clashes between Emacs and GNU <malloc.h> (Bug#22086).
3466         * configure.ac: Check for malloc.h.
3467         * src/alloc.c: Include <malloc.h> depending on HAVE_MALLOC_H,
3468         not on DOUG_LEA_MALLOC.
3469         * src/emacs.c, src/gmalloc.c (malloc_enable_thread):
3470         Remove decl (now in lisp.h).
3471         * src/gmalloc.c: Include stddef.h earlier, for ptrdiff_t.
3472         [emacs]: Include lisp.h.
3473         [HAVE_MALLOC_H]: Include <malloc.h>.
3474         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
3475         (__after_morecore_hook, __malloc_initialize_hook, __morecore)
3476         (__default_morecore):
3477         [!HAVE_MALLOC_H]: New decls near non-inclusion of <malloc.h>.
3478         (calloc): Make it clear that the macro should not be used.
3479         Remove unused decl.
3480         (malloc_info): New macro, to avoid clash with glibc <malloc.h>.
3481         (__morecore, __default_morecore, __after_morecore_hook)
3482         (__malloc_extra_blocks, __malloc_initialize_hook, __free_hook)
3483         (__malloc_hook, __realloc_hook, __memalign_hook, memory_warnings):
3484         Remove later decls.
3485         (gmalloc_hook, gfree_hook, grealloc_hook):
3486         Rename from __malloc_hook, __free_hook, __realloc_hook to
3487         avoid type collision with glibc <malloc.h>.  All uses changed.
3488         (gmalloc_hook):
3489         (__malloc_extra_blocks) [DOUG_LEA_MALLOC||HYBRID_MALLOC||SYSTEM_MALLOC]:
3490         Now static.
3491         (gmalloc_hook, __malloc_extra_blocks): Define even if [!HYBRID_MALLOC].
3492         (__malloc_initialize_hook, __after_morecore_hook):
3493         Declare with types compatible with glibc.
3494         (__memalign_hook, hybrid_calloc) [HYBRID_MALLOC]:
3495         Remove.  All uses removed.
3496         * src/lisp.h (__malloc_extra_blocks, malloc_enable_thread): New decls.
3497         * src/ralloc.c, src/vm-limit.c:
3498         Simplify includes and include <malloc.h> if available.
3500 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
3502         * src/alloc.c: Include "sheap.h".
3504         (alloc_unexec_pre, alloc_unexec_post) [HYBRID_MALLOC]:
3505         Set and clear bss_sbrk_did_unexec, on all platforms not just Cygwin.
3506         * src/lisp.h (alloc_unexec_pre, alloc_unexec_post) [!DOUG_LEA_MALLOC]:
3507         Declare unconditionally.
3508         * src/unexcw.c, src/unexelf.c (bss_sbrk_did_unexec): Remove decl.
3509         (unexec): Don’t set or clear bss_sbrk_did_unexec;
3510         the caller now does this.
3511         (Bug#22086)
3513 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
3515         Pacify --enable-gcc-warnings when HYBRID_MALLOC
3517         * src/buffer.c (init_buffer):
3518         * src/emacs.c (main):
3519         * src/xsmfns.c (smc_save_yourself_CB, x_session_initialize):
3520         Use emacs_get_current_dir_name, not get_current_dir_name.
3521         * src/conf_post.h (aligned_alloc) [HYBRID_MALLOC && emacs]: New macro.
3522         (HYBRID_GET_CURRENT_DIR_NAME, get_current_dir_name): Remove.
3523         * src/emacs.c: Include "sheap.h".
3524         (report_sheap_usage): Remove decl.
3525         (Fdump_emacs) [HYBRID_MALLOC]: Report usage directly.
3526         Don't assume ptrdiff_t can be printed as int.
3527         * src/gmalloc.c [HYBRID_MALLOC]:
3528         Include "sheap.h" rather than declaring its contents by hand.
3529         (get_current_dir_name, gget_current_dir_name)
3530         (hybrid_get_current_dir_name): Remove.
3531         (emacs_abort): Remove duplicate decl.
3532         (aligned_alloc): Undef, like malloc etc.
3533         (ALLOCATED_BEFORE_DUMPING): Now a static function, not a macro.
3534         Make it a bit more efficient.
3535         (malloc_find_object_address): Remove unused decl.
3536         (enum mcheck_status, mcheck, mprobe, mtrace, muntrace, struct mstats)
3537         (mstats, memory_warnings): Declare only if GC_MCHECK.
3538         * src/lisp.h (emacs_get_current_dir_name):
3539         New decl, replacing get_current_dir_name.
3540         * src/sheap.c: Include sheap.h first.
3541         (STATIC_HEAP_SIZE): Remove; now in sheap.h.
3542         (debug_sheap): Now static.
3543         (bss_sbrk_buffer_end): Remove; no longer used.
3544         (bss_sbrk_ptr): Now static and private.
3545         (bss_sbrk_did_unexec): Now bool.
3546         (BLOCKSIZE): Remove, to avoid GCC warning about its not being used.
3547         (bss_sbrk): Don't treat request_size 0 as special, since the code
3548         works without this being a special case.
3549         Avoid overflow if request size exceeds INT_MAX.
3550         (report_sheap_usage): Remove; now done in emacs.c.
3551         * src/sheap.h: New file.
3552         * src/sysdep.c (get_current_dir_name): Remove macro.
3553         Include "sheap.h".
3554         (emacs_get_current_dir_name): Rename function from
3555         get_current_dir_name.  Handle HYBRID_MALLOC here;
3556         this is simpler.
3557         (Bug#22086)
3559 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
3561         Report static heap usage on non-Cygwin, too
3563         * src/emacs.c (Fdump_emacs) [HYBRID_MALLOC]: Report sheap usage here ...
3564         * src/unexcw.c (unexec): ... instead of here, since sheap can be used
3565         on platforms other than Cygwin (Bug#22086).
3567 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
3569         Pacify GCC on extern decls
3571         * src/unexelf.c (bss_sbrk_did_unexec): Move decl to top level
3572         to pacify recent GCC (Bug#22086).
3574 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
3576         Add musl patch to support HYBRID_MALLOC on elf systems
3578         * src/gmalloc.c: Adjust for HYBRID_MALLOC in the non CYGWIN case.
3579         (__default_morecore): Here, in particular.
3580         * configure.ac: Define HYBRID_MALLOC when unexelf.o is used.
3581         New variable SHEAP_OBJ.
3582         * src/Makefile.in: Use it.
3583         (Bug#22086)
3585 2016-01-30  Rich Felker  <dalias@libc.org>  (tiny change)
3587         unexelf.c hook to support HYBRID_MALLOC on ELF
3589         * src/unexelf.c (unexec) [HYBRID_MALLOC]:
3590         Define bss_sbrk_did_unexec (Bug#22086).
3592 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
3594         Link temacs with gnulib compiled with -Demacs
3596         This is done to support HYBRID_MALLOC, since some static variables
3597         (e.g., last_environ in putenv.c) hold pointers to memory malloced
3598         before dumping (Bug#22086).
3599         * lib/Makefile.am: Add incantation to install libegnu.a.
3600         * src/Makefile.in ($(lib)/libgnu.a): Replace with libegnu.a
3601         (temacs$(EXEEXT)): Use it.
3603 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
3605         Internal linkage for gmalloc etc. if HYBRID_MALLOC
3607         This avoids clashes with symbols if the after-dump malloc is
3608         derived from Doug Lea's implementation (Bug#22086).
3610         * src/gmalloc.c (emacs_abort, __morecore, __default_morecore):
3611         Move declarations up.  For HYBRID_MALLOC, turn all `extern'
3612         declarations below to `static' ones.
3613         (aligned_alloc): Declare for !MSDOS as well.
3614         (heapsize, _fraghead): Move resp. copy declaration downwards.
3615         For HYBRID_MALLOC, conditionalize out the other definitions,
3616         since the previous `static' declarations double as tentative
3617         definitions, anyway.
3618         (_malloc, _free, _realloc, __free_hook, _aligned_blocks)
3619         (__realloc_hook, __memalign_hook): Conditionalize out.
3620         (cfree, memalign, valloc): Ditto.
3622 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
3624         Merge from origin/emacs-25
3626         3f481ad Rename xref-query-replace to xref-query-replace-in-results
3627         62f4ed4 Update cl-defgeneric and cl-defmethod docstrings
3628         2111e0e Comment out next-error-function integration in xref
3629         4e11ad3 Correct a use of "which" in intro.texi
3630         a1865bc Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
3631         76045f7 Don't operate on menu bar of nonexistent frame
3632         c32f3bc Unbreak the GNUstep build.
3634 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
3636         Re-enable checks in member, memql, delete to complain about non-lists
3638         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
3640 2016-02-04  Martin Rudalics  <rudalics@gmx.at>
3642         Minor doc(-string) tweaks
3644         * lisp/window.el (window-in-direction): Fix doc-string typo.
3645         * doc/lispref/frames.texi (Frame Font): Mention canonical
3646         character width/height.
3647         * doc/lispref/windows.texi (Windows and Frames): Clarify
3648         handling of minibuffer window for `window-in-direction'.
3649         (Window Sizes): Minor tweaks in descriptions of
3650         `window-max-chars-per-line', `window-min-width' and
3651         `window-min-size'.
3652         (Deleting Windows): Minor tweak in `delete-window' description.
3653         (Selecting Windows): Clarify window use time description.
3654         (Cyclic Window Ordering): Minor tweak.
3655         (Switching Buffers): Clarify description of
3656         `switch-to-buffer-in-dedicated-window'.
3658 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
3660         Remove some useless-use-of eval.
3662         * lisp/gnus/gnus.el (gnus-load-hook): Don't use eval.
3663         * lisp/gnus/nnrss.el (xml): Simply require it.
3664         (xml-rpc-method-call): Use declare-function.
3666 2016-01-28  Glenn Morris  <rgm@gnu.org>
3668         Don't use eval to quieten prolog.el compilation.
3670         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
3671         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
3673 2016-01-28  Glenn Morris  <rgm@gnu.org>
3675         Mark some risky prolog variables.
3677         * lisp/progmodes/prolog.el (prolog-system-version)
3678         (prolog-keywords, prolog-types, prolog-mode-specificators)
3679         (prolog-determinism-specificators, prolog-directives)
3680         (prolog-program-name, prolog-program-switches)
3681         (prolog-consult-string, prolog-compile-string)
3682         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
3683         Mark anything processed by prolog-find-value-by-system as risky.
3685 2016-01-28  Glenn Morris  <rgm@gnu.org>
3687         * lisp/custom.el (defcustom): Doc fix.
3689         * doc/lispref/customize.texi (Variable Definitions):
3690         Defcustom should always have a type.
3692 2016-01-28  Glenn Morris  <rgm@gnu.org>
3694         * lisp/emacs-lisp/bytecomp.el (byte-compile-nogroup-warn):
3695         Warn if defcustom has no type.  (Bug#16276)
3697         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
3698         Fix :type.
3700         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
3702 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
3704         Fix Bug#22452
3706         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
3707         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
3708         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
3709         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
3710         Mark it as connected.
3712         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
3713         connection property "connected" is set.  (Bug#22452)
3715 2016-01-27  Glenn Morris  <rgm@gnu.org>
3717         * test/lisp/vc/vc-hg.el: Move from test/automated/.
3719         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
3721         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
3722         if not compiled with xwidgets.
3724 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
3726         C-u C-x = example doc fix
3728         * doc/emacs/mule.texi (International Chars):
3729         Adjust example to match current behavior of C-u C-x =.
3731 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
3733         malloc.h hygiene
3735         This attempts to future-proof Emacs a bit against possible glibc
3736         changes, by having Emacs use <malloc.h> declarations rather than
3737         coding them up by hand.  Problem noted by Florian Weimer in:
3738         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
3739         Implement this mainly by moving malloc.h-related functions from
3740         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
3741         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
3742         New function.
3743         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
3744         (alloc_unexec_pre, alloc_unexec_post): New functions.
3745         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
3746         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
3747         (__malloc_initialize_hook): Use it.
3748         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
3749         Move here from ...
3750         * src/emacs.c: ... here.
3751         (malloc_get_state, malloc_set_state): Remove extern decls.
3752         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
3753         All uses changed to similarly-named new function.
3754         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
3755         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
3756         New decls.
3758 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
3760         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
3762 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
3764         Remove never-set var handle_user_signal_hook
3766         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
3767         Remove never-set var.  All uses removed.
3769 2016-01-26  Anders Lindgren  <andlind@gmail.com>
3771         Fixed NextStep fullscreen issue (bug#22468)
3773         When in fullscreen mode, `[screen visibleFrame]' sometimes
3774         includes, sometimes excludes the menu bar. This could cause
3775         a frame to be placed too low when in fullscreen mode.
3777         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
3778         (constrain_frame_rect): New parameter, isFullscreen, when true don't
3779         query the height of the menu bar.
3780         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
3781         `constrain_frame_rect'.
3782         ([EmacsView initFrameFromEmacs:]): Trace.
3783         ([EmacsView isFullscreen]): Trace.
3784         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
3785         state to `constrain_frame_rect'.
3787 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3789         * lisp/files.el: Use a fixed file name for the second dir-locals file
3791         (dir-locals-file): Revert to its original fixed value.
3792         (dir-locals-file-2): New const.
3793         (dir-locals--all-files): Don't use `file-name-all-completions'.
3794         Instead, just check for the 2 dir-locals files and return a list
3795         of the ones that exit (if any).
3797         * etc/NEWS: Document the change.
3799         * doc/emacs/custom.texi (Directory Variables): Document the change.
3801         * doc/lispref/variables.texi (Directory Local Variables): Update
3802         accordingly.
3804 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3806         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
3808         Change a variable name to be more meaningful, and reorder some of
3809         the code with no change in behaviour.
3811 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3813         * lisp/files.el (dir-locals-find-file): Refactor return values
3815         Returning a cache remains unchanged, but the case of returning a
3816         file (or pattern) is now changed to return the contaning
3817         directory.
3819         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
3820         and make obsolete.
3821         (dir-locals-read-from-dir): Simplify accordingly.
3822         (hack-dir-local-variables): Simplify accordingly and rename a
3823         variable.
3825 2016-01-25  Glenn Morris  <rgm@gnu.org>
3827         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
3828         Declare.
3830         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
3832         * configure.ac (--with-cairo): Say it's experimental.
3834         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
3835         Rename using American spelling.  Update all uses.
3837 2016-01-25  Glenn Morris  <rgm@gnu.org>
3839         Yet more xwidget doc fixes.
3841         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
3842         (xwidget-insert, xwidget-webkit-browse-url)
3843         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
3844         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
3845         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
3846         (xwidget-webkit-show-id-element)
3847         (xwidget-webkit-show-id-or-named-element)
3848         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
3849         (xwidget-webkit-execute-script-rv)
3850         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
3851         (xwidget-put):  Doc fixes.
3852         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
3853         (xwidget-webkit-show-id-element)
3854         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
3856 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
3858         * lisp/gnus/gnus-art.el (gnus-blocked-images):
3859         Add explicit nil choice and tags.
3861 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
3863         Spelling fixes
3865 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
3867         (rng-c-fix-escaped-newlines): Use subst-char-in-string
3869         * lisp/nxml/rng-cmpct.el (rng-c-fix-escaped-newlines):
3870         Use subst-char-in-string.
3872 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
3874         * lisp/textmodes/sgml-mode.el (sgml-forward-sexp): New function
3876         (sgml-cursor-sensor, sgml-pretty-print, sgml-parse-tag-backward)
3877         (sgml-calculate-indent): Use it.
3879 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
3881         * lisp/org: Fix some compiler warnings
3883         * lisp/org/ob-core.el (org-babel-check-confirm-evaluate)
3884         (org-babel-map-src-blocks): Don't emit warnings if added vars are not used.
3885         (*this*): Declare as dyn-bound.
3886         (org-babel-expand-src-block, org-babel-load-in-session)
3887         (org-babel-switch-to-session-with-code, org-babel-get-rownames):
3888         Mark unused args.
3889         (org-babel-combine-header-arg-lists): Remove unused var `args'.
3890         (org-babel-find-named-block): Remove unused var `msg'.
3892         * lisp/org/org-src.el (org-inhibit-startup, org-src-fontify-natively):
3893         Declare as dyn-bound.
3894         (org-edit-src-code): Remove unused var `lfmt'.
3895         (org-edit-fixed-width-region): Remove unused var `preserve-indentation'.
3897 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
3899         * lisp/font-lock.el: Use #' to quote function symbols
3901 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
3903         (font-lock-ensure-function): Fix bug#22399
3905         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
3906         font-lock-mode is not enabled (bug#22399).
3908 2016-01-25  Alan Mackenzie  <acm@muc.de>
3910         Expunge "allow" + infinitive from source and doc, part 2.
3912         Do the same for "permit", "enable", "prevent", and (where appropriate)
3913         "require".
3915         doc/misc/reftex.texi:
3916         doc/misc/url.texi:
3917         lib/get-permissions.c:
3918         lib/strftime.c:
3919         lisp/org/org-element.el:
3920         lisp/org/org-mobile.el:
3921         lisp/textmodes/reftex-vars.el:
3922         src/bidi.c:
3923         src/emacs.c:
3924         src/xdisp.c:
3925         test/etags/c-src/emacs/src/lisp.h:
3927         Expunge the likes of "This allows to do something" from the above files.
3929 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3931         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
3933         `special-mode' is already read-only.
3935 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3937         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
3939 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
3941         Port "$@" to OpenIndiana ksh93
3943         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
3944         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
3945         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
3946         bug in long-dead shells, so remove the workaround.
3947         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
3948         Use plain "$@" rather than ${1+"$@"}.
3950 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
3952         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
3954 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
3956         Improve wording for SMB support
3958         * doc/misc/tramp.texi (External methods): Improve and modernize
3959         wording for discussion of smbclient.  There is no longer any
3960         need to mention the laundry list of old MS Windows implementations
3961         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
3963 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
3965         Merge from gnulib
3967         This incorporates:
3968         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
3969         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
3970         2016-01-15 detect utimes() correctly on OS/2 kLIBC
3971         2016-01-15 openat_proc_name: port to OS/2 kLIBC
3972         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
3973         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
3974         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
3975         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
3976         2016-01-14 sig2str: list all signals on FreeBSD >= 7
3977         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
3978         2016-01-12 mktime: rename macro to avoid glibc clash
3979         2016-01-12 Port "$@" to OpenIndiana ksh93
3980         2016-01-12 Port Universal Time settings to strict POSIX
3981         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
3982         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
3983         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
3984         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
3985         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
3986         * m4/fcntl.m4, m4/utimes.m4:
3987         Copy from gnulib.
3988         * m4/gnulib-comp.m4: Regenerate.
3990 2016-01-24  Alan Mackenzie  <acm@muc.de>
3992         Expunge "allow" + infinitive without direct object from source and doc.
3994         Do the same for "permit", "enable", and "prevent".
3996         * doc/emacs/mule.texi:
3997         * doc/lispref/control.texi:
3998         * doc/lispref/display.texi:
3999         * doc/lispref/frames.texi:
4000         * doc/lispref/functions.texi:
4001         * doc/lispref/nonascii.texi:
4002         * doc/lispref/streams.texi:
4003         * doc/lispref/windows.texi:
4004         * doc/misc/dbus.texi:
4005         * doc/misc/eww.texi:
4006         * doc/misc/flymake.texi:
4007         * doc/misc/octave-mode.texi:
4008         * doc/misc/org.texi:
4009         * doc/misc/reftex.texi:
4010         * doc/misc/tramp.texi:
4011         * doc/misc/wisent.texi:
4012         * etc/NEWS:
4013         * lisp/autorevert.el:
4014         * lisp/cedet/mode-local.el:
4015         * lisp/cedet/semantic/senator.el:
4016         * lisp/cedet/semantic/wisent.el:
4017         * lisp/dos-fns.el:
4018         * lisp/frameset.el:
4019         * lisp/gnus/gnus-agent.el:
4020         * lisp/gnus/mm-util.el:
4021         * lisp/international/characters.el:
4022         * lisp/ldefs-boot.el:
4023         * lisp/mail/mailclient.el:
4024         * lisp/man.el:
4025         * lisp/mh-e/mh-search.el:
4026         * lisp/net/tramp-cmds.el:
4027         * lisp/net/tramp-gvfs.el:
4028         * lisp/org/org-crypt.el:
4029         * lisp/org/org-element.el:
4030         * lisp/org/org-feed.el:
4031         * lisp/org/org.el:
4032         * lisp/org/ox-ascii.el:
4033         * lisp/org/ox-icalendar.el:
4034         * lisp/org/ox-publish.el:
4035         * lisp/org/ox.el:
4036         * lisp/play/gamegrid.el:
4037         * lisp/play/gomoku.el:
4038         * lisp/progmodes/antlr-mode.el:
4039         * lisp/progmodes/python.el:
4040         * lisp/progmodes/vhdl-mode.el:
4041         * lisp/strokes.el:
4042         * lisp/textmodes/ispell.el:
4043         * lisp/tree-widget.el:
4044         * lisp/vc/pcvs.el:
4045         * lisp/window.el:
4046         * src/lisp.h:
4047         * src/w32.c:
4048         * src/w32heap.c:
4049         * src/w32term.c:
4050         * src/window.c:
4051         * src/xfaces.c:
4053         Replace solecisms like "This allow to do something" with a correct
4054         alternative, such as "This allow you to do something", "This allows
4055         something to be done" or "This allows the doing of something".
4057 2016-01-24  l3thal  <kwhite@gnu.org>
4059         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
4061 2016-01-24  Kelvin White  <kwhite@gnu.org>
4063         Add NEWS entry for asynchronous reconnect in ERC
4065 2016-01-24  l3thal  <kwhite@gnu.org>
4067         Add NEWS entry for asynchronous reconnect in ERC
4069 2016-01-24  Kelvin White  <kwhite@gnu.org>
4071         browse-url.el: Add 'google-chrome' to supported browsers.
4073 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
4075         Port Tramp manual to latest Texinfo
4077         Otherwise, 'make pdf' did not work (Bug#22416).
4078         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
4079         (trampfn): Specialize to the case where METHOD is nonempty.
4080         The 2nd argument is now user@host, not 2nd user and 3rd host args.
4081         All uses changed.
4082         (trampf): New macro.
4084 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
4086         * eww.el (eww-render): Protect against empty content-types.
4088 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
4090         authors.el updates
4092         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
4093           Additions.
4095 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
4097         Rename xref-query-replace to xref-query-replace-in-results
4099         * lisp/progmodes/xref.el(xref-query-replace):
4100         Rename to xref-query-replace-in-results.
4101         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
4103         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
4104         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
4105         * doc/emacs/dired.texi (Operating on Files):
4106         * doc/emacs/maintaining.texi (Xref Commands)
4107         (Identifier Search, Identifier Search): Update accordingly.
4109 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
4111         Update cl-defgeneric and cl-defmethod docstrings
4113         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
4114         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
4115         (cl-defmethod): Mention that multiple dispatch arguments are
4116         allowed.  Document supported types.  (Bug#22336)
4118 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
4120         Comment out next-error-function integration in xref
4122         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
4123         Comment out next-error-function integration
4124         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
4126 2016-01-23  John Wiegley  <johnw@newartisans.com>
4128         Correct a use of "which" in intro.texi
4130 2016-01-23  Alan Mackenzie  <acm@muc.de>
4132         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
4134         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
4135         context of case labels (including "default") more rigorously.
4136         (c-guess-basic-syntax CASE 15): Consequential amendment.
4138         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
4140 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
4142         Don't operate on menu bar of nonexistent frame
4144         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
4145         is valid before redisplaying its menu. Fixes bug#22438.
4147 2016-01-23  Anders Lindgren  <andlind@gmail.com>
4149         Unbreak the GNUstep build.
4151         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
4152         predefined "caution" image. Add trace.
4153         (x_set_window_size): Remove unused variables `cols' and `rows'.
4154         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
4155         GNUstep is used.
4156         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
4157         ([EmacsWindow zoom:]): Remove unused variable `f'.
4159 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
4160             John Wiegley  <johnw@gnu.org>
4161             Michael Heerdegen  <michael_heerdegen@web.de>
4163         Improve documentation of 'pcase'
4165         * doc/lispref/control.texi (Pattern matching case statement):
4166         Reorganize, expand, and improve wording.
4168         * etc/NEWS: Mention that 'pcase' changes are documented.
4170 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
4172         * etc/NEWS: Say that Cairo is experimental.
4174 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
4176         Report error for PNG under Cairo
4178         * src/image.c (lookup_rgb_color): Signal a file error instead
4179         of dumping core when mishandling an image.
4181 2016-01-23  Arash Esbati  <esbati@gmx.de>
4183         Delete a spurious backquote (tiny change)
4185         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
4186         spurious backquote which raises an error with emacs 25.
4188 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
4190         Pacify --enable-gcc-warnings --with-cairo
4192         Problem reported by Alexander Kuleshov in:
4193         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
4194         * src/gtkutil.c (xg_get_page_setup):
4195         Use switch rather than if-then-else.
4196         * src/image.c (COLOR_TABLE_SUPPORT):
4197         Define directly rather than via #define and optional later #undef.
4198         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
4199         Crash when the pixel is undefined, as there is a genuine bug
4200         here (Bug#22442).
4201         * src/image.c (tiff_load, gif_load, svg_load_image)
4202         (x_kill_gs_process) [USE_CAIRO]:
4203         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
4204         Omit unused locals, or move them to where they’re needed.
4205         (x_clear_area1): Now ATTRIBUTE_UNUSED.
4207 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
4209         Update documentation for Dired search and replace
4211         * doc/emacs/dired.texi (Operating on Files): Update descriptions
4212         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
4213         'dired-do-find-regexp-and-replace'.
4215         * etc/NEWS: Mention xref-related changes in Dired.
4217 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
4219         Port recent xdisp.c fix to picky C compilers
4221         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
4222         putting #if inside the arguments to a standard function, which
4223         the C standard says has undefined behavior.
4225 2016-01-22  Alan Mackenzie  <acm@muc.de>
4227         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
4229         * cc-engine.el (c-forward-declarator): New function.
4230         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
4231         contained in the preceding arg list.
4233         * cc-fonts.el (c-font-lock-declarators): Use the new function
4234         `c-forward-declarator' in place of inline code.
4236 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
4238         Fix the build with --enable-checking=glyphs
4240         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
4241         build without xwidget support.
4243 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
4245         Document cl-generic.el
4247         * doc/lispref/functions.texi (Generic Functions): New section.
4248         (Bug#22336)
4249         (Functions): Update the chapter menu.
4250         * doc/lispref/elisp.texi: Update the master menu.
4252 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
4254         xwidgets style cleanup
4256         Adjust the newly-added Xwidgets code so that it uses a more-typical
4257         Emacs style.  This should not affect behavior, except that in
4258         a few places it adds runtime checks that Lisp arguments are of
4259         the proper type, and in one place it uses more-precise arithmetic.
4260         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
4261         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
4262         Include xwidget.h unconditionally.
4263         * src/buffer.c (Fkill_buffer):
4264         * src/dispnew.c (update_window):
4265         * src/emacs.c (main):
4266         * src/print.c (print_object):
4267         * src/window.c (Fdelete_window_internal):
4268         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
4269         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
4270         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
4271         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
4272         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
4273         Call xwidget functions and macros without worrying about
4274         HAVE_XWIDGETS when the code is a no-op on non-xwidget
4275         platforms.
4276         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
4277         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
4278         (struct it.xwidget):
4279         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
4280         Always define.
4281         * src/emacsgtkfixed.h: Omit unnecessary comment.
4282         * src/keyboard.c: Fix spacing.
4283         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
4284         Define to be a no-op if not HAVE_XWIDGETS.
4285         * src/xwidget.c: Include xwidget.h first (after config.h)
4286         to make sure that it can stand by itself.
4287         (Fmake_xwidget, Fxwidget_webkit_execute_script):
4288         Fix typo in doc string.
4289         (Fmake_xwidget): Check type of args.
4290         (Fmake_xwidget, offscreen_damage_event)
4291         (webkit_document_load_finished_cb, webkit_download_cb)
4292         (webkit_new_window_policy_decision_requested_cb)
4293         (webkit_navigation_policy_decision_requested_cb)
4294         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
4295         (xwidget_osr_event_set_embedder, xwidget_init_view):
4296         Omit unnecessary casts.
4297         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
4298         (xwidget_show_view, xwidget_hide_view)
4299         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
4300         (xwidget_touched):
4301         * src/xwidget.h (struct xwidget.kill_without_query)
4302         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
4303         Use bool for boolean.
4304         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
4305         Simplify by using list functions.
4306         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
4307         (Fxwidget_resize): Check type of integer args
4308         before doing any work.  Check that they are nonnegative.
4309         (Fxwidget_set_adjustment): Check type of integer arg.
4310         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
4311         Simplify.  Use double, not float.
4312         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
4313         (valid_xwidget_spec_p): Simplify.
4314         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
4315         * src/xwidget.h: Include lisp.h first, so that includers do
4316         not need to worry about doing that before including this file.
4317         Make this .h file safe to include even on non-HAVE_XWIDGETS
4318         configurations, to simplify the includers.
4319         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
4320         (xwidget_end_redisplay, lookup_xwidget)
4321         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
4322         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
4323         (struct glyph_matrix, struct glyph_string, struct xwidget)
4324         (struct xwidget_view, struct window):
4325         New forward or incomplete decls, so that includers need not
4326         assume the corresponding .h files are already included, or that
4327         HAVE_XWIDGETS is defined.
4328         (struct xwidget_type, xwidget_from_id): Remove; unused.
4330 2016-01-22  John Wiegley  <johnw@newartisans.com>
4332         Further corrections to the pcase docstring
4334 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
4336         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
4338 2016-01-21  Stephen Leake  <stephen_leake@stephe-leake.org>
4340         In xref-collect-references, force backends to respect the 'dir' arg
4342         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
4343         to use `default-directory'.
4345 2016-01-21  John Wiegley  <johnw@newartisans.com>
4347         Minor correction to pcase docstring
4349 2016-01-21  John Wiegley  <johnw@newartisans.com>
4351         Write a new docstring for the pcase macro
4353         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
4355 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
4357         Avoid byte-compiler warning in todo-mode (bug#21953)
4359         * todo-mode.el (todo-convert-legacy-files): Add limit argument
4360         to looking-back to comply with advertised-calling-convention.
4362 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
4364         Fix desktop support in todo-mode and doc-view (bug#22377)
4366         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
4367         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
4369         * lisp/calendar/todo-mode.el (todo-modes-set-2):
4370         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
4372 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
4374         No need to configure gobject-introspection
4376         It wasn’t needed for the recently-installed xwidget_mvp code; see:
4377         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
4378         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
4379         (HAVE_GIR):
4380         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
4381         Remove.  All uses removed.
4382         * configure.ac (emacs_config_features): Don’t worry about GIR.
4384 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
4386         Don’t export C symbols not used elsewhere
4388         These were recently added, mostly as part of xwidget code.
4389         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
4390         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
4391         Now static functions here, not macros in emacsgtkfixed.h.
4392         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
4393         Remove.  All uses replaced by definiens.
4394         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
4395         Remove; these are now static functions in emacsgtkfixed.c.
4396         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
4397         Remove; unused.
4398         (emacs_fixed_get_type): Remove decl; no longer extern.
4399         * src/xwidget.c (offscreen_damage_event)
4400         (webkit_mime_type_policy_typedecision_requested_cb)
4401         (webkit_new_window_policy_decision_requested_cb)
4402         (webkit_navigation_policy_decision_requested_cb)
4403         (xwidget_spec_value, xwidget_view_lookup)
4404         (xwidget_start_redisplay, xwidget_touch):
4405         Now static.
4406         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
4407         Remove decls.
4409 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
4411         Support squiggly heredocs in ruby-mode
4413         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
4414         Support squiggly heredocs added in Ruby 2.3.
4416         * test/indent/ruby.rb: Add squiggly example.
4418 2016-01-20  Glenn Morris  <rgm@gnu.org>
4420         * configure.ac (emacs_config_features): Remove WEBKIT.
4422 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
4424         Port to platforms with gtk3 but not webkitgtk3
4426         I ran into this problem on my Fedora 23 installation;
4427         Emacs configured but did not build when --with-xwidgets was specified.
4428         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
4429         (DOES_XWIDGETS_USE_GIR): New var.
4430         If --with-xwidgets is specified, report an error if not
4431         doable, to be consistent with the other --with options.
4432         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
4433         not work at all without webkitgtk3.  Simplify use of
4434         EMACS_CHECK_MODULES.  Output message about gobject
4435         introspection only if xwidgets are used.
4436         * etc/NEWS: Users need webkitgtk3, not merely webkit.
4437         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
4438         since this file is no longer compiled if webkitgtk3 is not available.
4440 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
4442         Fix doc string of 'isearch-search-fun-function'
4444         * lisp/isearch.el (isearch-search-fun-function)
4445         (isearch-search-string): Doc fixes.  (Bug#22411)
4447 2016-01-19  Stefan Monnier  <monnier@iro.umontreal.ca>
4449         * lisp/xwidget.el: Nitpicks
4451         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
4452         Use with-current-buffer rather than save-excursion + set-buffer.
4454 2016-01-19  Glenn Morris  <rgm@gnu.org>
4456         Don't hard-code 1 as point-min.
4458         * lisp/image-mode.el (image-display-size):
4459         * lisp/xwidget.el (xwidget-webkit-last-session)
4460         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
4462 2016-01-19  Glenn Morris  <rgm@gnu.org>
4464         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
4466 2016-01-19  Glenn Morris  <rgm@gnu.org>
4468         Trivial doc copyedits.
4470         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
4471         (Fxwidget_webkit_get_title, Fxwidget_resize)
4472         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
4473         (Fxwidget_info, Fxwidget_view_lookup)
4474         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
4476 2016-01-19  Glenn Morris  <rgm@gnu.org>
4478         Avoid advising image-display-size for xwidgets.
4480         * lisp/xwidget.el (xwidget-image-display-size): Remove.
4481         (image-display-size): Remove advice.
4482         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
4483         (image-display-size): Incorporate xwidget code directly.
4485 2016-01-19  Glenn Morris  <rgm@gnu.org>
4487         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
4489         * lisp/xwidget.el (window-configuration-change-hook)
4490         (kill-buffer-query-functions): Only modify these hooks if
4491         compiled with xwidget support.
4493 2016-01-19  Glenn Morris  <rgm@gnu.org>
4495         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
4497         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
4499         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
4501         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
4503 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
4505         * lisp/gnus/nnir.el (nnir-request-update-mark):
4506         Default to the original mark.
4507         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
4508         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
4510 2016-01-19  Glenn Morris  <rgm@gnu.org>
4512         * lisp/xwidget.el (report-xwidget-bug): Remove.
4514         (top-level): No longer require reporter.
4516 2016-01-19  Joakim Verona  <joakim@verona.se>
4517             Grégoire Jadi  <daimrod@gmail.com>
4519         Support for the new Xwidget feature.
4521         * configure.ac:
4522         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
4523         * xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
4524         * xdisp.c:
4525         (handle_display_spec, handle_single_display_spec, push_it)
4526         (pop_it, set_iterator_to_next, dump_glyph)
4527         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
4528         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
4529         (produce_xwidget_glyph, x_produce_glyphs)
4530         (get_window_cursor_type):
4531         * window.c (Fdelete_window_internal):
4532         * termhooks.h (e):
4533         * print.c (print_object):
4534         * lisp.h (ptrdiff_t):
4535         * keyboard.c (kbd_buffer_get_event, make_lispy_event)
4536         (syms_of_keyboard):
4537         * emacs.c (main):
4538         * dispnew.c (update_window, scrolling_window):
4539         * dispextern.h (g, i):
4540         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
4541         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
4542         * keyboard.c (kbd_buffer_get_event):
4543         * emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
4544         (emacs_fixed_class_init): Add case for an xwidget view.
4546         * xwidget.c, xwidget.h, xwidget.el: New files for xwidgets
4549         Various improvements to the Xwidget feature.
4550         * xwidgets.c:
4551         * emacsgtkfixed.c:
4552         * xwidget.el:
4554 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
4556         Improve documentation of 'alist-get'
4558         * doc/lispref/variables.texi (Setting Generalized Variables): Add
4559         'alist-get' to the list of functions that can appear in PLACE
4560         argument of 'setf'.
4562 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
4564         Minor copyedits of doc/emacs/maintaining.texi
4566         * doc/emacs/maintaining.texi (List Identifiers): More accurate
4567         description of "C-M-i" wrt tags tables.
4568         (Tags Tables): Move the definition of "tag" to a footnote.
4570 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
4572         Unbreak the Cygwin-w32 build
4574         * src/w32fns.c (globals_of_w32fns): Move the initialization of
4575         resetstkoflw into a part that isn't compiled on Cygwin.
4576         (Bug#22403)
4578 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
4580         * shr.el (shr-table-body): Allow tables to have text children.
4582 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
4584         Cope with multiple overlapping faces.
4586         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
4587           left.
4588           (hfy-face-resolve-face): Handle font specification as well as font
4589           name. Documentation update. (Bug#21990)
4591 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
4593         Fix spurious escapes in describe-input-method
4595         Problem reported by Vincent Belaïche (Bug#22309).
4596         * lisp/international/mule-cmds.el (describe-language-environment):
4597         * lisp/international/quail.el (quail-help):
4598         Apply substitute-command-keys to doc strings before displaying them.
4600 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
4602         Bump version to 25.0.90
4604         * README:
4605         * configure.ac:
4606         * msdos/sed2v2.inp: Bump version to 25.0.90.
4608 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
4610         * etc/AUTHORS: Update the AUTHORS file
4612 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
4614         authors.el updates
4616         * admin/authors.el (authors-renamed-files-alist): Additions.
4618 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
4620         Make it possible to run make change-history on emacs-25
4622         * Makefile.in: Check if the current branch is emacs-25 instead of
4623           master.
4625 2016-01-30  lu4nx  <lx@shellcodes.org>
4627         Support Go language in 'etags'
4629         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
4630         <Go_help>: New help.
4631         <Go_suffixes>: New variable.
4632         (Go_functions): New function.
4633         <lang_names>: Add entry for Go.  (Bug#22370)
4635         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
4636         * doc/man/etags.1: Mention Go support.
4638         * etc/NEWS: Mention Go support.
4640         * test/etags/go-src/test.go:
4641         * test/etags/go-src/test1.go: New test files.
4642         * test/etags/Makefile (GOSRC): New variable.
4643         (SRCS): Add $(GOSRC).
4644         * test/etags/ETAGS.good_1:
4645         * test/etags/ETAGS.good_2:
4646         * test/etags/ETAGS.good_3:
4647         * test/etags/ETAGS.good_4:
4648         * test/etags/ETAGS.good_5:
4649         * test/etags/ETAGS.good_6:
4650         * test/etags/CTAGS.good: Adapt to addition of Go tests.
4652 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
4654         Improve Ruby support in 'etags'
4656         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
4657         singleton classes.  Remove class qualifiers from tags generated
4658         for method and constant names.  (Bug#22241)
4660         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
4661         are tagged by etags in Ruby.
4663         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
4665         * test/etags/ruby-src/test1.ruby: Add more tests.
4666         * test/etags/ETAGS.good_1:
4667         * test/etags/ETAGS.good_2:
4668         * test/etags/ETAGS.good_3:
4669         * test/etags/ETAGS.good_4:
4670         * test/etags/ETAGS.good_5:
4671         * test/etags/ETAGS.good_6:
4672         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
4673         tests.
4675 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
4677         Adjust etags test results to changes in copyright years
4679         * test/etags/CTAGS.good:
4680         * test/etags/ETAGS.good_1:
4681         * test/etags/ETAGS.good_2:
4682         * test/etags/ETAGS.good_3:
4683         * test/etags/ETAGS.good_4:
4684         * test/etags/ETAGS.good_5:
4685         * test/etags/ETAGS.good_6: Adjust to shift in characters and
4686         in line numbers.
4688 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
4690         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
4692         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
4694 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
4696         Make it possible to run make change-history on emacs-25
4698         * Makefile.in: Check if the current branch is emacs-25 instead of
4699           master.
4701 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
4703         Don't fiddle with DEFAULT
4705         * lisp/progmodes/project.el (project--completing-read-strict):
4706         Don't change DEFAULT, whether is has any matches in
4707         COLLECTION, or not.
4709 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
4711         Document xwidget commands and functions
4713         * doc/lispref/display.texi (Xwidgets): New section, describes some
4714         of the xwidget primitives.
4715         * doc/lispref/display.texi (Display): Update the chapter menu.
4716         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
4717         * doc/emacs/emacs.texi (Top): Update the master menu to include
4718         the xwidget node.
4720 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
4722         Build fix for shr.el
4724         * shr.el (seq): Require.
4726 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
4728         Improve project-find-file yet again!
4730         * lisp/progmodes/project.el (project--completing-read-strict):
4731         New function.
4732         (project-find-file-in): Use it.
4733         (project-file-completion-table): Move the default
4734         implementation inside the cl-defgeneric form.
4735         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
4737 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
4739         Don't pass DIR to 'hg status'
4741         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
4742         Don't pass DIR to 'hg status' (bug#22481).
4744 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
4746         Fix typo in previous commits
4748         * lisp/progmodes/project.el (project-find-file-in):
4749         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
4750         commit.
4752 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
4754         Improve project-find-file
4756         * lisp/progmodes/project.el (project-file-completion-table): New.
4757         (project-find-file, project-or-external-find-file): Default to filename
4758         at point.
4759         (project-file-completion-table): New, split out from
4760         project--find-file-in.
4761         (project-find-file-in): Renamed from project--find-file-in, use
4762         project-file-completion-table.
4764         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
4765         (xref--find-ignores-arguments): Add doc string.
4767 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
4769         Implement vc-mtn-find-ignore-file, fix some doc strings
4771         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
4773         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
4775         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
4777         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
4779 2016-01-23  Michael Albinus  <michael.albinus@gmx.de>
4781         Improve user name completion in Tramp
4783         * lisp/net/tramp.el (tramp-parse-passwd, tramp-parse-etc-group):
4784         Call also "getent passwd" or "getent group", if possible.
4785         (tramp-parse-putty): Cache the result.
4787 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
4789         * etc/NEWS: Move kqueue entries to Emacs 25.1 sections.
4791 2016-01-20  Glenn Morris  <rgm@gnu.org>
4793         Remove handling of non-string time-stamp formats, obsolete for 20 years.
4795         * lisp/time-stamp.el (time-stamp-format): Doc fix.
4796         (time-stamp-old-format-warn, time-stamp-fconcat): Remove.
4797         (time-stamp-string): Ignore non-string formats.
4799 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
4801         Anoter fix for problematic merge from emacs-25
4803         * src/w32fns.c (globals_of_w32fns): Move initialization of
4804         resetstkoflw to a non-Cygwin part.
4806 2016-01-20  Michael Albinus  <michael.albinus@gmx.de>
4808         * test/Makefile.in (mostlyclean): Use ${LOGFILES}.
4810 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
4812         Fix MS-Windows build broken by a botched merge from emacs-25
4814         * src/w32.c (w32_crypto_hprov): New static variable.
4815         (globals_of_w32): Initialize w32_crypto_hprov.
4816         (w32_init_crypt_random, w32_init_random): New functions.
4817         Include wincrypt.h.
4818         * src/w32.h (w32_init_random): Add prototype.
4820 2016-01-20  Vincent Belaïche  <vincentb1@users.sourceforge.net>
4822         Correct a whole bunch of bugs coming with renamed cell relocation.
4824         * lisp/ses.el (ses-localvars): rename variable
4825         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
4826         and adjust the comment about it.
4827         (ses-plist-delq): new defun.
4828         (ses--ses-buffer-list): new defvar.
4829         (ses--unbind-cell-name): new defun.
4830         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
4831         (ses-relocate-formula): Undo change of
4832         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
4833         preventing relocation for named cell --- now doing this is delegated
4834         to function `ses-relocate-symbol'.
4835         (ses-relocate-range): In docstring, undo change of
4836         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
4837         lower case as it is not a variable.
4838         (ses-relocate-all): Cell name relocation : 1) check that cell is a
4839         renamed cell by testing `ses-cell' property to :ses-named, rather than
4840         comparing name to corresponding standard name. Set rowcol of renamed
4841         cell into the hashmap --- `ses-cell' property must not be used for
4842         that as the same name can be used for different locations in different
4843         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
4844         `local-variable-p' to check if cell name is already in use in this
4845         sheet or needs initialisation.
4846         (ses-relocate-all): Cell value relocation : 1) like for name
4847         relocation use the `ses-cell' property rather than comparing actual
4848         name to corresponding standard name. 2) Correct bug introduced in
4849         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
4850         made the other way round than the intention --- ie value relocation
4851         was disabled for standard cell, not for renamed cell as was the
4852         intention.
4853         (ses-relocate-all): Add loop for unbinding deleted renamed cells
4854         names.
4855         (ses-killbuffer-hook): new defun.
4856         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
4857         kill buffer hook, plus pushing current buffer if new in list.
4858         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
4859         into `ses--in-killing-named-cell-list'.
4860         (ses-rename-cell): Remove update of variable
4861         `ses--renamed-cell-symb-list', this variable is renamed to
4862         `ses--in-killing-named-cell-list', and its setting is done in
4863         functions `ses-delete-row' and , `ses-delete-column' now.
4864         (ses-rename-cell): Make cell new name a buffer local variable.
4865         (ses-rename-cell): Change correction of
4866         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
4867         computation of the range over which `cursor-intangible' property was
4868         to be updated. This correction was ok for non spilling cells, but not
4869         for cells spilling over following blank cells. Simply use
4870         `next-single-property-change' rather than computing the end column
4871         from column widths.
4873 2016-01-19  John Wiegley  <johnw@newartisans.com>
4875         Merge from origin/emacs-25
4877         3ae7934 ; * etc/NEWS: Mark entries that don't need further treatment.
4878         6165c36 * lisp/files.el (dir-locals--all-files): Respect absolute file-names
4879         2ffdf15 * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
4880         71ecd62 * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
4881         f0b82b3 * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
4882         86e4513 Fix incompatbilities with MS-Windows 2000 and older
4883         4e96521 Mention in PROBLEMS an issue with MS-Windows NT4
4884         15c23aa Ensure 8-byte aligned memory allocation on MS-Windows 9X
4885         39afa42 Fix tests for active region in hideif.el
4886         05df666 Fix interactive specs in some hideif.el commands
4888 2016-01-19  John Wiegley  <johnw@newartisans.com>
4890         -
4892 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
4894         Avoid stdio in SIGINT handler
4896         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
4897         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
4898         * lib/ignore-value.h: New file, from gnulib.
4899         * src/keyboard.c: Include it.
4900         (write_stdout, read_stdin): New functions.
4901         (handle_interrupt): Use them instead of printf and getchar,
4902         and avoid fflush when handling signals.
4904 2016-01-19  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
4906         Refactor mml-smime.el, mml1991.el, mml2015.el
4908         (Maybe this is the last merge from Gnus git to Emacs git)
4910         Cf. discussion on ding mailing list, messages in
4911         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
4912         Common code from the three files mml-smime.el, mml1991.el, and
4913         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
4914         to gnus-util.el.
4916         The code is supported by test cases with necessary test keys.
4918         Documentation in message.texi is updated.
4920         * doc/misc/message.texi (Security, Using S/MIME):
4921         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
4922         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
4923         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
4925         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
4926         New functions.
4928         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
4929         (epa--select-keys): Autoload.
4930         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
4931         (mml-secure-openpgp-signers): New user option;
4932         make mml1991-signers and mml2015-signers obsolete aliases to it.
4933         (mml-secure-smime-signers): New user option;
4934         make mml-smime-signers an obsolete alias to it.
4935         (mml-secure-openpgp-encrypt-to-self): New user option;
4936         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
4937         aliases to it.
4938         (mml-secure-smime-encrypt-to-self): New user option;
4939         make mml-smime-encrypt-to-self an obsolete alias to it.
4940         (mml-secure-openpgp-sign-with-sender): New user option;
4941         make mml2015-sign-with-sender an obsolete alias to it.
4942         (mml-secure-smime-sign-with-sender): New user option;
4943         make mml-smime-sign-with-sender an obsolete alias to it.
4944         (mml-secure-openpgp-always-trust): New user option;
4945         make mml2015-always-trust an obsolete alias to it.
4946         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
4947         New user options.
4948         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
4949         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
4950         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
4951         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
4952         (mml-secure-passphrase-callback, mml-secure-check-user-id)
4953         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
4954         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
4955         (mml-secure-fingerprint, mml-secure-filter-keys)
4956         (mml-secure-normalize-cust-name, mml-secure-select-keys)
4957         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
4958         (mml-secure-self-recipients, mml-secure-recipients)
4959         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
4961         * lisp/gnus/mml-smime.el: Require epg;
4962         refactor declaration and autoloading of epg functions.
4963         (mml-smime-use): Doc fix.
4964         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
4965         Obsolete.
4966         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
4967         Use format instead of gnus-format-message.
4968         (mml-smime-epg-secret-key-id-list): Remove variable.
4969         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
4970         (mml-smime-epg-find-usable-secret-key): Remove functions.
4971         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
4973         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
4974         (mml1991-passphrase-cache-expiry): Obsolete.
4975         (mml1991-epg-secret-key-id-list): Remove variable.
4976         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
4977         (mml1991-epg-find-usable-secret-key): Remove functions.
4978         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
4980         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
4981         (mml2015-passphrase-cache-expiry): Obsolete.
4982         (mml2015-epg-secret-key-id-list): Remove variable.
4983         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
4984         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
4985         (mml2015-epg-find-usable-secret-key): Remove functions.
4986         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
4987         (mml2015-epg-encrypt): Refactor.
4989 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
4991         Merge from gnulib
4993         This mostly just updates copyright dates of gnulib files.
4994         It also updates to the latest version of texinfo.tex.
4996 2016-01-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4998         Move variables to inner loop, preparing for Mac port merge
5000         * src/keyboard.c (command_loop_1): Move variables `cmd',
5001         `keybuf', and `i' to inner loop.
5003 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
5005         Minor improvements to (random t) documentation
5007         * doc/lispref/numbers.texi (Random Numbers):
5008         * src/fns.c (Frandom):
5009         Omit unnecessary details about randomness fallback.
5010         Say that it is a fallback.
5012 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
5014         Rename methods in Ruby etags example file
5016         * test/etags/ruby-src/test.rb: Rename the example methods to
5017         correspond to the common terminology used in Ruby.
5018         * test/etags/CTAGS.good:
5019         * test/etags/ETAGS.good_1:
5020         * test/etags/ETAGS.good_2:
5021         * test/etags/ETAGS.good_3:
5022         * test/etags/ETAGS.good_4:
5023         * test/etags/ETAGS.good_5:
5024         * test/etags/ETAGS.good_6: Adjust accordingly.
5026 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
5028         Propertize backtick in 'def `(abc)' as symbol constituent
5030         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
5031         Propertize backtick in 'def `(abc)' as symbol constituent.
5032         (ruby-syntax-propertize-function):
5033         Rename to ruby-syntax-propertize.
5035 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
5037         Fix scrolling under scroll-preserve-screen-position on TTY
5039         * src/window.c (window_scroll_line_based): When setting point to
5040         preserve screen coordinates, don't let cursor enter either of the
5041         two scroll margins.  (Bug#22395)
5043 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5045         Fix shr table rendering of nested tables
5047         * shr.el (shr-table-body): Don't include all tbodies in nested
5048         tables in the levels above.
5050 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
5052         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
5054 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
5056         Add xref-based replacements for Dired search commands
5058         * lisp/dired-aux.el (dired-do-find-regexp)
5059         (dired-do-find-regexp-and-replace): New commands.
5060         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
5062         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
5063         `Q' to the new commands.
5065         * lisp/progmodes/xref.el (xref-query-replace)
5066         (xref-collect-matches): Add progress reporters.
5067         (xref--find-ignores-arguments): Return nil for zero ignores.
5068         (xref--show-xrefs): Add an optional argument.
5069         (xref-collect-matches): Drop the assert.  'find' accepts a
5070         regular file in place of directory argument, too.
5072 2016-01-18  Alan Mackenzie  <acm@muc.de>
5074         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
5076 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
5078         Improve user documentation of Xref
5080         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
5081         (Looking Up Identifiers, Identifier Search, List Identifiers):
5082         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
5083         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
5084         for the details.
5086 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
5088         Fix scrolling under scroll-preserve-screen-position and margins
5090         * src/window.c (window_scroll_pixel_based): When setting point to
5091         preserve screen coordinates, don't let cursor enter either of the
5092         two scroll margins.  Fix incorrect usage of
5093         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
5094         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
5096 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
5098         Unbreak the MS-Windows build
5100         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
5101         WINDOWSNT, to avoid link failure.  (Bug#22202)
5103 2016-01-18  Alan Mackenzie  <acm@muc.de>
5105         Desktop: protect users against inadvertant upgrading of desktop file.
5107         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
5109         * etc/NEWS: Add an entry about upgrading a desktop file.
5111         * lisp/desktop.el (desktop-file-version): Amend doc string.
5112         (desktop-native-file-version, desktop-io-file-version): new variables.
5113         (desktop-clear): Set desktop-io-file-version to nil.
5114         (desktop-buffer-info): make the presence of the last item on the list
5115         conditional on (>= desktop-io-file-version 208).
5116         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
5117         Amend the doc string.  Add code to determine the output file version.
5118         (desktop-create-buffer): Set desktop-io-file-version to the input file's
5119         version.
5121 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
5123         Initialize GnuTLS before calling gnutls_rnd
5125         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
5126         Don’t set gnutls_global_initialized if gnutls_global_init fails.
5127         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
5128         if 2.12 or later, which has gnutls_rnd.
5129         (emacs_gnutls_global_init, gnutls_rnd): New fallback
5130         placeholder macros if before 2.12.
5131         (init_random): Initialize gnutls globals before trying to
5132         use gnutls_rnd.
5134 2016-01-17  Andreas Schwab  <schwab@linux-m68k.org>
5136         Don't use GnuTLS before it is initialized
5138                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
5140 2016-01-17  Bill Wohler  <wohler@newt.com>
5142         * mh-e.el (mh-version): Add +git to version.
5144 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
5146         Port cleanup attribute to OpenBSD
5148         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
5149         sprintf, and this messes up 'configure' when it tests for the cleanup
5150         attribute.  Work around the problem by using __has_attribute directly.
5151         Problem reported by Joakim Jalap (Bug#22385).
5152         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
5153         * m4/ax_gcc_var_attribute.m4: Remove.
5154         * src/conf_post.h (__has_attribute): Provide a substitute, for
5155         non-GCC or older GCC compilers.  All uses changed to assume
5156         the substitute.  Check for the cleanup attribute.
5157         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
5159 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
5161         Prefer GnuTLS when acquiring random seed
5163         This attempts to improve on the fix for Bug#22202.
5164         * configure.ac (HAVE_DEV_URANDOM): Remove.
5165         Check /dev/urandom existence at run time, not at build time,
5166         since the device could exist in the former but not the latter.
5167         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
5168         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
5169         (random_seed): New typedef.
5170         (set_random_seed): New static function.
5171         (seed_random): Use them.
5172         (init_random): Use random_seed instead of uintmax_t, so as to
5173         not consume more entropy than needed.  Prefer gnutls_rnd if it
5174         works; this avoids a redundant open of /dev/urandom on
5175         GNU/Linux with modern GnuTLS.
5177 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
5179         Improve documentation of dynamic modules
5181         * doc/lispref/loading.texi (How Programs Do Loading): Update the
5182         description of searching for files in 'load' when Emacs was built
5183         with support for dynamic modules.
5185 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
5187         * INSTALL: Document --with-modules.
5189 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
5191         Document 'function-put'
5193         * doc/lispref/symbols.texi (Symbol Plists): Document
5194         'function-put'.  Update documentation of 'function-get'.
5196 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
5198         Document 'funcall-interactively'
5200         * doc/lispref/commands.texi (Interactive Call): Document
5201         'funcall-interactively'.
5202         * doc/lispref/functions.texi (Calling Functions): Mention
5203         'funcall-interactively' and provide a cross-reference.
5205 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
5207         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
5209         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
5211 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
5213         Document renaming of selection-related functions
5215         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
5216         functions into the corresponding "gui-*" functions.  Make the
5217         description slightly less X-centric.
5219 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
5221         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
5223 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
5225         Document 'define-inline'
5227         * doc/lispref/functions.texi (Defining Functions): Document
5228         'define-inline' and related macros.
5230         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
5232 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
5234         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
5236         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
5238 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
5240         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
5242         instead of manually writing a dir-locals file.
5244 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
5246         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
5248         (dir-locals-file)
5249         * lisp/files-x.el (modify-dir-local-variable)
5250         * lisp/dos-fns.el (dosified-file-name)
5251         * lisp/help-fns.el (describe-variable): Change accordingly.
5253 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
5255         Fix incompatbilities with MS-Windows 2000 and older
5257         * src/w32.c <multiByteToWideCharFlags>: New global variable.
5258         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
5259         Use it instead of the literal MB_ERR_INVALID_CHARS.
5260         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
5261         appropriate for the underlying OS version.  For details, see
5262         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
5263         * src/w32.h: Declare multiByteToWideCharFlags.
5264         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
5265         (add_tray_notification): Use multiByteToWideCharFlags instead of
5266         the literal MB_ERR_INVALID_CHARS.
5267         (_resetstkoflw_proc): New typedef.
5268         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
5269         pointer, as this function is absent in msvcrt.dll shipped with W2K
5270         and older systems.
5272 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
5274         Mention in PROBLEMS an issue with MS-Windows NT4
5276         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
5277         on Windows NT4.  For the details, see
5278         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
5280 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
5282         Ensure 8-byte aligned memory allocation on MS-Windows 9X
5284         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
5285         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
5286         (malloc_after_dump_9x, realloc_after_dump_9x)
5287         (free_after_dump_9x): New functions.  (Bug#22379)  See also
5288         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
5289         for more details about the original problem.
5291         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
5292         (free_after_dump_9x): Add prototypes.
5294 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
5296         Fix tests for active region in hideif.el
5298         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
5299         'use-region-p' to test whether to operate on region, instead of
5300         testing 'mark-active'.
5302 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
5304         Fix interactive specs in some hideif.el commands
5306         * lisp/progmodes/hideif.el (hif-evaluate-macro)
5307         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
5308         in commands that should only act on the region if it's active.
5310 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
5312         Enable test selector from command line
5314         * test/automated/Makefile.in: Change variable manipulation to avoid
5315           over-writing selector.
5317 2016-01-15  Alan Mackenzie  <acm@muc.de>
5319         Don't confuse "::" with ":" when trying to parse member initializers.
5321         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
5322         more robustly for ":" token when searching backwards for it.
5324         * lisp/progmodes/cc-langs (c-:$-multichar-token-regexp): New language
5325         variable.
5327 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
5329         Ensure positive number of glyphs for margins of positive width
5331         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
5332         positive value when a non-zero width of the marginal area was
5333         requested.  (Bug#22356)
5335 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
5337         Fix crashes when mini-window has non-zero margins
5339         * src/window.c (resize_frame_windows): Use 'new_size' to set
5340         minibuffer window's 'total_cols' value, as 'size' might be in
5341         pixels.  (Bug#22356)
5343 2016-01-15  Alan Mackenzie  <acm@muc.de>
5345         In comment-dwim with style `extra-line', respect indent-tabs-mode.
5347         This fixes bug #22369.
5349         * lisp/newcomment.el (comment-make-bol-ws): New function.
5350         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
5352 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
5354         Make 'random' seeds cryptographically secure if possible
5356         * configure.ac: Check for "/dev/urandom".
5358         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
5359         for the seed from "/dev/urandom".
5360         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
5361         * src/fns.c (Frandom): Update the doc string to indicate that
5362         system entropy is used when available.
5363         * src/w32.c: Include wincrypt.h.
5364         (w32_init_crypt_random, w32_init_random): New functions, use the
5365         CryptGenRandom API.
5366         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
5367         * src/w32.h (w32_init_random): Add prototype.
5369         * doc/lispref/numbers.texi (Random Numbers): Document more details
5370         about 't' as the argument to 'random'.
5372         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
5373         strong seed if possible.
5375         (Bug#22202)
5377 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
5379         Unhide the --no-line-directive option to 'etags'
5381         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
5382         option.  (Bug#22306)
5384         * doc/man/etags.1: Document the --no-line-directive option.
5386 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
5388         Fix picture-mode wrt double-width characters
5390         * lisp/textmodes/picture.el (picture-insert): Check the width of
5391         the character being replaced, not just that of the replacement.
5392         (Bug#1808)
5394 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
5396         Honor docstring of gnus-group-get-new-news
5398         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
5399         but non-numeric, unconditionally consider all groups to need updating.
5401 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
5403         Disallow parenthesis in non-pseudo CSS selectors
5405         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
5406         parenthesis in selectors except for in the function notation that
5407         might appear right after a pseudo-class.
5408         * test/indent/scss-mode.scss: Add a test for it.
5410 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
5412         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
5414 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
5416         check-maybe shall run only default tests
5418         * test/automated/Makefile.in (check, check-expensive): Depend on
5419         mostlyclean.
5420         (check-maybe): Re-run only default tests.
5421         (check-doit): Use code of check-maybe.
5422         (mostlyclean): Move *.log files away.
5424 2016-01-13  Mark Oteiza  <mvoteiza@udel.edu>
5426         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
5428 2016-01-13  Dmitry Gutov  <dgutov@yandex.ru>
5430         Un-obsolete tags-loop-continue
5432         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
5433         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
5435 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
5437         Document obsoletion of 'intangible' and 'point-entered/left'
5439         * doc/lispref/text.texi (Special Properties): Document the new
5440         properties 'cursor-intangible' and 'cursor-sensor-functions'.
5441         Document the obsolete status of 'intangible', 'pointer-left',
5442         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
5443         * doc/lispref/display.texi (Overlay Properties): Document that
5444         'intangible' overlay property is obsolete.
5446         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
5448 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
5450         Updater documentation of 'looking-back'
5452         * doc/lispref/searching.texi (Regexp Search): Update documentation
5453         of 'looking-back'.  Fix markup.
5455 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
5457         Document 'pre-redisplay-functions'
5459         * doc/lispref/hooks.texi (Standard Hooks):
5460         * doc/lispref/display.texi (Forcing Redisplay): Document
5461         'pre-redisplay-functions'.
5463 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
5465         Document the new deafault value of 'load-read-function'
5467         * doc/lispref/loading.texi (How Programs Do Loading): Document the
5468         change in the default value of 'load-read-function'.
5470 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
5472         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
5474         * doc/lispref/nonascii.texi (Text Representations): Document
5475         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
5477 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
5479         Document the new prefix-command hooks
5481         * doc/lispref/hooks.texi (Standard Hooks): Document
5482         `prefix-command-echo-keystrokes-functions' and
5483         `prefix-command-preserve-state-hook'.
5485 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
5487         Fix one more misuse of time-stamp-time-zone
5489         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
5490         than the unportable "GMT" for time zone.
5492 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
5494         Fix NNTP NEWGROUPS off-by-a-few-hours bug
5496         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
5497         in Universal Time, since we’re telling the server “GMT”.
5499 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
5501         Update publicsuffix.txt from upstream
5503         * etc/publicsuffix.txt: Update from
5504         https://publicsuffix.org/list/effective_tld_names.dat
5505         dated 2016-01-12 11:52:01 UTC.
5507 2016-01-12  Glenn Morris  <rgm@gnu.org>
5509         Fix some declarations.
5511         * lisp/descr-text.el (internal-char-font):
5512         * lisp/cedet/mode-local.el (xref-item-location):
5513         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
5514         (epg-sub-key-capability, epg-sub-key-validity):
5515         * lisp/international/mule-util.el (internal-char-font):
5516         Fix declarations.
5518 2016-01-12  Glenn Morris  <rgm@gnu.org>
5520         Fix some custom types.
5522         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
5523         * lisp/gnus/gnus.el (gnus-valid-select-methods):
5524         * lisp/mail/rmail.el (rmail-get-coding-function):
5525         * lisp/net/newst-treeview.el (newsticker-groups-filename):
5526         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
5527         * lisp/textmodes/tildify.el (tildify-space-predicates):
5528         * lisp/url/url-tramp.el (url-tramp-protocols):
5529         Fix custom types.
5531 2016-01-12  Glenn Morris  <rgm@gnu.org>
5533         Add some missing version tags.
5535         * lisp/electric.el (electric-quote-comment)
5536         (electric-quote-string, electric-quote-paragraph):
5537         * lisp/epg-config.el (epg-gpgconf-program):
5538         * lisp/rect.el (rectangle-preview):
5539         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
5540         * lisp/emacs-lisp/package.el (package-selected-packages)
5541         (package-hidden-regexps):
5542         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
5543         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
5544         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
5545         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
5546         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
5547         (mml-smime-sign-with-sender, mml2015-always-trust)
5548         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
5549         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
5550         (browse-url-conkeror-arguments):
5551         * lisp/net/newst-reader.el (newsticker-download-logos):
5552         * lisp/progmodes/gud.el (gud-guiler-command-name):
5553         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
5554         * lisp/progmodes/project.el (project-vc):
5555         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
5556         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
5557         (python-shell-completion-native-disabled-interpreters)
5558         (python-shell-completion-native-enable)
5559         (python-shell-completion-native-output-timeout)
5560         (python-shell-completion-native-try-output-timeout):
5561         * lisp/progmodes/xref.el (xref):
5562         * lisp/term/screen.el (xterm-screen-extra-capabilities):
5563         * lisp/term/xterm.el (xterm-max-cut-length):
5564         Add missing version tags.
5566 2016-01-12  Glenn Morris  <rgm@gnu.org>
5568         * test/automated/core-elisp-tests.el
5569         (core-elisp-tests-1-defvar-in-let): Add a custom type.
5571 2016-01-12  Glenn Morris  <rgm@gnu.org>
5573         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
5575         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
5577 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
5579         Merge from gnulib
5581         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
5582         It also updates to the latest version of texinfo.tex.
5583         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
5584         * build-aux/update-copyright, doc/misc/texinfo.tex:
5585         Update from gnulib.
5587 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
5589         Update documentation of 'process-running-child-p'
5591         * doc/lispref/processes.texi (Input to Processes): Document the
5592         changes in return value of 'process-running-child-p'.
5594 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
5596         Update documentation of 'deactivate-mark'.
5598         * doc/lispref/markers.texi (The Mark): Document that
5599         'deactivate-mark' is now buffer-local when set.
5601 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
5603         Update documentation of 'completion-table-dynamic'
5605         * doc/lispref/minibuf.texi (Programmed Completion): Document the
5606         new optional argument to 'completion-table-dynamic'.
5608 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
5610         Document changes in 'read-buffer' and 'read-buffer-function'
5612         * doc/lispref/minibuf.texi (High-Level Completion): Document the
5613         4th argument to 'read-buffer' and 'read-buffer-function'.
5615 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
5617         Fix time-stamp-time-zone bugs introduced in July
5619         This fixes a bug introduced when the July changes to
5620         format-time-string installed, as the changes were not
5621         correctly handled in this module (Bug#22302).
5622         Also, document time stamp time zones.
5623         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
5624         (time-stamp--format): New private function.
5625         (time-stamp-string, time-stamp-string-preprocess)
5626         (time-stamp-do-number): Use it.
5627         * doc/emacs/files.texi (Time Stamps): Mention time zones.
5628         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
5630 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
5632         Make piping to subprocesses more robust on MS-Windows
5634         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
5635         buffer can hold.  Don't return -1 if something has been written to
5636         the pipe.  Zero out 'errno' before calling '_write', to avoid
5637         returning a stale value.  (Bug#22344)
5638         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
5639         * src/w32.c (pipe2): Use it to request a user-defined size for the
5640         pipe being created.
5642         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
5644         * doc/emacs/msdos.texi (Windows Processes): Document
5645         'w32-pipe-buffer-size'.
5647 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
5649         * lisp/emacs-lisp/syntax.el (syntax-ppss-table): New var
5651         (syntax-ppss):
5652         * lisp/font-lock.el (font-lock-fontify-syntactically-region): Use it.
5654 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
5656         lisp/nxml: Use syntax-tables for comments
5658         * lisp/nxml/nxml-mode.el (nxml-set-face): Prepend.
5659         (nxml-mode): Set syntax-ppss-table.
5660         Use sgml-syntax-propertize-function for syntax-propertize-function.
5661         Let font-lock highlight strings and comments.
5662         (nxml-degrade): Don't touch "nxml-inside" property any more.
5663         (nxml-after-change, nxml-after-change1): Remove functions.
5664         (comment): Don't set fontify rule any more.
5665         (nxml-fontify-attribute): Don't highlight the value any more.
5666         (nxml-namespace-attribute-value-delimiter, nxml-namespace-attribute-value)
5667         (nxml-comment-delimiter, nxml-comment-content): Remove faces.
5669         * lisp/nxml/nxml-rap.el (nxml-scan-end): Remove.
5670         (nxml-get-inside, nxml-inside-start, nxml-inside-end): Use syntax-ppss.
5671         (nxml-clear-inside, nxml-set-inside): Remove.
5672         (nxml-scan-after-change): Remove function.
5673         (nxml-scan-prolog, nxml-tokenize-forward): Simplify.
5674         (nxml-ensure-scan-up-to-date): Use syntax-propertize.
5675         (nxml-move-outside-backwards):
5676         * lisp/nxml/nxml-outln.el (nxml-section-tag-backward): Adjust to new
5677         nxml-inside-start behavior.
5679         * lisp/nxml/nxml-util.el (nxml-debug-set-inside)
5680         (nxml-debug-clear-inside): Remove macros.
5682         * lisp/nxml/xmltok.el (xmltok-forward-special): Remove function.
5683         (xmltok-scan-after-comment-open): Simplify.
5685 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
5687         * elisp-mode.el (elisp--font-lock-flush-elisp-buffers): Fix comment
5689 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
5691         * lisp/nxml: Use standard completion; it also works for company-mode
5693         * lisp/nxml/nxml-mode.el (nxml-complete): Obsolete.
5694         (nxml-completion-at-point-function): Remove.
5695         (nxml-mode): Don't set completion-at-point-functions.
5696         * lisp/nxml/rng-nxml.el (rng-nxml-mode-init): Set it here instead.
5697         (rng-completion-at-point): Rename from rng-complete and mark it
5698         non-interactive.  It is now to be used as completion-at-point-function.
5699         (rng-complete-tag, rng-complete-end-tag, rng-complete-attribute-name)
5700         (rng-complete-attribute-value): Don't perform completion, but return
5701         completion data instead.
5702         (rng-complete-qname-function, rng-generate-qname-list): Add a few
5703         arguments, previously passed via dynamic coping.
5704         (rng-strings-to-completion-table): Rename from
5705         rng-strings-to-completion-alist.  Don't return an alist.  Don't both
5706         sorting and uniquifying.
5708         * lisp/nxml/rng-util.el (rng-complete-before-point): Delete function.
5709         (rng-completion-exact-p, rng-quote-string): Delete functions.
5711         * lisp/nxml/rng-valid.el (rng-recover-start-tag-open)
5712         (rng-missing-attributes-message, rng-missing-element-message)
5713         (rng-mark-missing-end-tags): Use explicit ".." in formats rather than
5714         calling rng-quote-string everywhere.
5716 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
5718         Use sgml-electric-tag-pair-mode also in nxml-mode
5720         * lisp/nxml/rng-nxml.el: Require sgml-mode.
5721         (rng-nxml-easy-menu): Add entry for sgml-electric-tag-pair-mode.
5722         (rng-complete-qname-function): Use complete-with-action.
5724         * lisp/textmodes/sgml-mode.el (sgml-electric-tag-pair-before-change-function):
5725         Let-bind forward-sexp-function, since nxml-mode binds it to
5726         something incompatible.
5728         * lisp/nxml/nxml-mode.el: Use setq-local and defvar-local.
5730 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
5732         * xmltok.el: Mark the "sole --" rather than the comment opener
5734         * lisp/nxml/xmltok.el (xmltok-scan-after-comment-open): Put the error
5735         marker on the "sole --" rather than on the comment opener.
5737 2016-01-15  Sam Steingold  <sds@gnu.org>
5739         replace `tramp-compat-split-string' (removed) with `split-string'
5741         (python-shell-tramp-refresh-process-environment)
5742         (python-shell-calculate-pythonpath): use `split-string'
5743         instead of defunct `tramp-compat-split-string'
5745 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
5747         Update nXML to use Emacs's Unicode support, and lexical-binding
5749         * etc/nxml/*.el: Remove obsolete char-name files.
5750         * lisp/nxml/xsd-regexp.el (xsdre-range-list-difference): Remove unused
5751         var `next'.
5752         * lisp/nxml/rng-nxml.el (rng-set-state-after): Don't assume point-min==1.
5753         * lisp/nxml/rng-match.el (rng-update-match-state): Simplify.
5754         * lisp/nxml/nxml-outln.el (nxml-outline-state-transform-exceptions)
5755         (nxml-target-section-pos, nxml-depth-in-target-section)
5756         (nxml-outline-state-transform-alist)
5757         (nxml-outline-display-section-tag-function): Move decl before first use.
5758         * lisp/nxml/nxml-mode.el (nxml-char-name-ignore-case)
5759         (nxml-char-name-alist, nxml-char-name-table)
5760         (nxml-autoload-char-name-set-list, nxml-named-char-history): Remove vars.
5761         (nxml-enable-char-name-set, nxml-disable-char-name-set)
5762         (nxml-char-name-set-enabled-p, nxml-autoload-char-name-set)
5763         (nxml-define-char-name-set, nxml-get-char-name): Remove functions.
5764         (nxml-insert-named-char): Use read-char-by-name instead.
5765         (nxml-char-ref-display-extra): Use get-char-code-property.
5766         * lisp/nxml/nxml-maint.el (nxml-create-unicode-char-name-sets):
5767         Remove function.
5768         * lisp/nxml/nxml-glyph.el, lisp/nxml/nxml-uchnm.el: Remove files.
5770 2016-01-15  Michael Albinus  <michael.albinus@gmx.de>
5772         Add "sg" method to Tramp
5774         * doc/misc/tramp.texi (Inline methods): Add "sg" method.
5775         (Customizing Completion): Add function `tramp-parse-etc-group'.
5777         * lisp/net/tramp-sh.el (tramp-methods) <sg>: Add.  (Bug#22329)
5778         (tramp-completion-function-alist-sg): New defconst.
5779         (top): Completion function for "sg" is
5780         `tramp-completion-function-alist-sg'.
5782         * lisp/net/tramp.el (tramp-completion-function-alist): Adapt docstring.
5783         (tramp-parse-etc-group, tramp-parse-etc-group-group): New defuns.
5785 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
5787         Remove XEmacs compatibility in Tramp
5789         * doc/misc/tramp.texi: Replace flags by their hard coded name.
5790         Remove unused flags and the enclosed alternative text for XEmacs.
5792         * doc/misc/trampver.texi: Use "Tramp" CamelCase.  Rename "emacs"
5793         and "xemacs" flags to "unified" and "separate".  Remove flags
5794         "emacsgw", "emacsname", "emacsdir", "ftppackagename",
5795         "emacsothername", "emacsotherdir" and "emacsotherfilename".
5796         (trampver):
5797         * lisp/net/trampver.el (tramp-version): Set to "2.3.0-pre".
5799         * lisp/net/tramp.el (bkup-backup-directory-info)
5800         (directory-sep-char, ls-lisp-use-insert-directory-program)
5801         (outline-regexp, tramp-backup-directory-alist)
5802         (tramp-default-method, tramp-shell-prompt-pattern, tramp-syntax)
5803         (tramp-file-name-regexp-unified)
5804         (tramp-file-name-regexp-separate)
5805         (tramp-completion-file-name-regexp-unified)
5806         (tramp-completion-file-name-regexp-separate, tramp-chunksize)
5807         (tramp-get-method-parameter, tramp-find-method, tramp-find-user)
5808         (tramp-debug-message, tramp-progress-reporter-update)
5809         (with-tramp-progress-reporter)
5810         (tramp-rfn-eshadow-setup-minibuffer)
5811         (rfn-eshadow-setup-minibuffer-hook, tramp-unload-hook)
5812         (tramp-rfn-eshadow-update-overlay)
5813         (rfn-eshadow-update-overlay-hook, tramp-default-file-modes)
5814         (tramp-file-name-for-operation)
5815         (tramp-completion-file-name-handler)
5816         (tramp-autoload-file-name-handler, tramp-completion-mode-p)
5817         (tramp-handle-directory-files)
5818         (tramp-handle-directory-files-and-attributes)
5819         (tramp-handle-dired-uncache, tramp-handle-find-backup-file-name)
5820         (tramp-handle-insert-file-contents, tramp-handle-load)
5821         (tramp-handle-shell-command)
5822         (tramp-handle-verify-visited-file-modtime)
5823         (tramp-handle-file-notify-valid-p, tramp-accept-process-output)
5824         (tramp-check-for-regexp, tramp-wait-for-regexp)
5825         (tramp-send-string, tramp-mode-string-to-int)
5826         (tramp-get-local-gid, tramp-check-cached-permissions)
5827         (tramp-get-remote-tmpdir, tramp-make-tramp-temp-file)
5828         (auto-save-file-name-transforms)
5829         (tramp-handle-make-auto-save-file-name, tramp-read-passwd)
5830         (tramp-clear-passwd, tramp-time-diff):
5831         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp)
5832         (directory-sep-char, tramp-adb-file-name-handler-alist)
5833         (tramp-adb-parse-device-names)
5834         (tramp-adb-handle-expand-file-name)
5835         (tramp-adb-handle-file-truename, tramp-adb--gnu-switches-to-ash)
5836         (tramp-adb-handle-file-local-copy)
5837         (tramp-adb-handle-write-region, tramp-adb-handle-set-file-modes)
5838         (tramp-adb-handle-rename-file, tramp-adb-handle-process-file)
5839         (tramp-adb-handle-shell-command)
5840         (tramp-adb-handle-start-file-process, tramp-adb-get-device)
5841         (tramp-adb-maybe-open-connection):
5842         * lisp/net/tramp-cache.el (tramp-persistency-file-name)
5843         (tramp-cache-print):
5844         * lisp/net/tramp-cmds.el (tramp-cleanup-all-connections)
5845         (tramp-bug, tramp-reporter-dump-variable)
5846         (tramp-load-report-modules, tramp-append-tramp-buffers):
5847         * lisp/net/tramp-compat.el (tramp-compat-funcall)
5848         (tramp-advice-file-expand-wildcards)
5849         (tramp-compat-temporary-file-directory)
5850         (tramp-compat-make-temp-file, tramp-compat-copy-file)
5851         (tramp-compat-delete-directory, )
5852         (tramp-compat-process-running-p):
5853         * lisp/net/tramp-ftp.el (tramp-methods) <ftp>:
5854         (tramp-default-method-alist, tramp-foreign-file-name-handler-alist):
5855         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
5856         (tramp-gvfs-do-copy-or-rename-file, tramp-gvfs-handle-copy-file)
5857         (tramp-gvfs-handle-file-local-copy)
5858         (tramp-gvfs-handle-file-name-all-completions)
5859         (tramp-gvfs-handle-file-notify-add-watch)
5860         (tramp-gvfs-monitor-file-process-filter)
5861         (tramp-gvfs-handle-file-readable-p)
5862         (tramp-gvfs-handle-rename-file, tramp-gvfs-handle-write-region)
5863         (tramp-gvfs-file-name, tramp-gvfs-handler-askquestion)
5864         (tramp-gvfs-maybe-open-connection)
5865         (tramp-gvfs-parse-device-names):
5866         * lisp/net/tramp-gw.el (tramp-gw-aux-proc-sentinel)
5867         (tramp-gw-open-connection, tramp-gw-open-network-stream):
5868         * lisp/net/tramp-sh.el (directory-sep-char)
5869         (tramp-sh-file-name-handler-alist)
5870         (tramp-sh-handle-file-truename)
5871         (tramp-sh-handle-set-visited-file-modtime)
5872         (tramp-sh-handle-verify-visited-file-modtime)
5873         (tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
5874         (tramp-sh-handle-file-acl)
5875         (tramp-sh-handle-file-name-all-completions)
5876         (tramp-sh-handle-copy-file, tramp-sh-handle-rename-file)
5877         (tramp-do-copy-or-rename-file-directly)
5878         (tramp-do-copy-or-rename-file-out-of-band)
5879         (dired-compress-file-suffixes, dired-remove-file)
5880         (tramp-sh-handle-dired-compress-file)
5881         (tramp-sh-handle-insert-directory)
5882         (tramp-sh-handle-expand-file-name)
5883         (tramp-sh-handle-start-file-process)
5884         (tramp-sh-handle-process-file, tramp-sh-handle-file-local-copy)
5885         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
5886         (tramp-sh-handle-file-notify-add-watch)
5887         (tramp-sh-gvfs-monitor-dir-process-filter)
5888         (tramp-sh-inotifywait-process-filter, tramp-maybe-send-script)
5889         (tramp-find-executable)
5890         (tramp-open-connection-setup-interactive-shell)
5891         (tramp-find-inline-encoding, tramp-compute-multi-hops)
5892         (tramp-maybe-open-connection, tramp-convert-file-attributes)
5893         (tramp-get-remote-path, tramp-get-remote-touch):
5894         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
5895         (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
5896         (tramp-smb-handle-delete-directory)
5897         (tramp-smb-handle-directory-files, tramp-smb-handle-file-acl)
5898         (tramp-smb-handle-make-directory-internal)
5899         (tramp-smb-handle-process-file, tramp-smb-handle-rename-file)
5900         (tramp-smb-handle-set-file-acl, tramp-smb-handle-set-file-modes)
5901         (tramp-smb-handle-write-region, tramp-smb-get-file-entries)
5902         (tramp-smb-get-cifs-capabilities)
5903         (tramp-smb-maybe-open-connection):
5904         * lisp/net/trampver.el (tramp-repository-get-version):
5905         Remove XEmacs compat code.
5907         * lisp/net/tramp-cmds.el (mml-mode, mml-insert-empty-tag)
5908         (reporter-dump-variable): Declare functions.
5910         * lisp/net/tramp.el (tramp-bkup-backup-directory-info)
5911         (tramp-advice-minibuffer-electric-separator)
5912         (tramp-advice-minibuffer-electric-tilde)
5913         (tramp-handle-unhandled-file-name-directory):
5914         * lisp/net/tramp-compat.el (tramp-compat-with-temp-message)
5915         (tramp-compat-font-lock-add-keywords)
5916         (tramp-compat-load, tramp-compat-number-sequence)
5917         (tramp-compat-split-string, tramp-compat-delete-dups):
5918         * lisp/net/tramp-sh.el (tramp-sh-handle-insert-file-contents-literally):
5919         Remove.
5921         * lisp/net/tramp-sh.el (tramp-methods) <psftp>: This does not work
5922         recursively.
5924 2016-01-14  K. Handa  <handa@gnu.org>
5926         fix previous change of src/ftfont.c (ftfont_shape_by_flt)
5928         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
5929         second glyph only when there are enough glyphs.
5931 2016-01-13  Glenn Morris  <rgm@gnu.org>
5933         * src/buffer.c (Fset_buffer_major_mode): Allow default major-mode,
5935         or its hook, to move point.  (Bug#22348)
5937 2016-01-12  Michael Albinus  <michael.albinus@gmx.de>
5939         Merge missing commit from emacs-25 branch
5941         * test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE, SELECTOR):
5942         New variables.
5943         (check-expensive, check-doit): New targets.
5945         * Makefile.in (check-expensive): New target.
5947         * test/lisp/autorevert-tests.el
5948         (auto-revert-test01-auto-revert-several-files):
5949         * test/lisp/filenotify-tests.el (file-notify--deftest-remote)
5950         (file-notify-test06-many-events):
5951         * test/lisp/net/tramp-tests.el (tramp-test26-process-file)
5952         (tramp-test27-start-file-process, tramp-test28-shell-command)
5953         (tramp-test29-vc-registered)
5954         (tramp-test31-special-characters-with-stat)
5955         (tramp-test31-special-characters-with-perl)
5956         (tramp-test31-special-characters-with-ls)
5957         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
5958         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
5959         (tramp-test35-unload): Tag the tests as :expensive-test.
5961 2016-01-12  John Wiegley  <johnw@newartisans.com>
5963         Merge from origin/emacs-25
5965         1f6898d test/automated/vc-hg.el: Support out-of-tree build
5966         3adb56e Minor change in tramp-tests.el
5967         2b535ba ; * etc/NEWS: Update the js.el entry.
5968         76b518c * etc/HELLO: Add Armenian and Mongolian greetings.
5969         b51f1ef Java Mode: Fontify identifiers in the presence of annotations.
5970         36b9539 Avoid an infloop when we run out of memory
5971         2006752 Avoid unnecessary failures of auto-saving after fatal error
5972         eef6784 Simplify HAVE_MODULES use in mark_maybe_pointer
5973         552694a Revert attempt to use 'noexcept' in typedef
5974         6ad0d39 Update documentation of 'indirect-function'
5975         c6a5314 ; * etc/NEWS: Move entry of 'inhibit-point-motion-hooks'.
5976         303141a Update documentation for obsoleting 'syntax-begin-function'
5977         4e6f61c ; * etc/NEWS: Mark documented and not-to-be-documented entries.
5978         e667bbb Document new features if Eshell
5979         9c4e4e0 ; * etc/NEWS: Update EUDC entries.
5980         1089dc9 Handle too long commands in Tramp
5981         684eb58 * .gitattributes: *.cur and *.pif are binary files too.
5982         d2c7fda * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
5983         bd3f53d * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
5984         09b2b8a * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
5985         cca0f93 ; Account for spaces before the filename
5986         c71e1e8 Use short date for 'hg annotate', and output the author
5987         f50027b Spelling fix
5988         c7dff67 ; * etc/NEWS: Fix the Xref entries that got separated.
5989         cc140bc Document user-level functions in project.el
5990         f8208b6 Document the user-level features of the Xref package
5991         b131fb8 * loading.texi: Add `define-type' entry for load-history
5992         db3c2a8 Improve doc strings and prompts in xref.el
5993         f6117ef Allow the use of `font-lock-extend-region-multiline' in CC Mode.
5994         90fd798 Fix coding system for Tramp on OS X.
5995         e985a0e ; * etc/NEWS: Mark the 'check-expensive' entry not to be documented.
5996         9dfcbf0 Update 'load-history' docs
5997         207e191 Fix (error ...) error
5998         457738f Correctly analyze brace arguments in templated C++ function declarations.
5999         d57724a * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
6000         2a9532d * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
6001         1a6b084 * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
6002         8be046f Respect fontification region calculated by major mode.  Fixes bug #22316.
6003         4b37cba Improve documentation of Delete Selection mode
6004         a034dd3 Fix two project-find-file issues
6005         30abf29 Clarify doc string of 'dired-current-directory'
6006         e990bb2 Use the face of preceding text for displaying the ellipsis
6007         5810ac3 Suppress Chinese file name test for OSX in tramp-tests.el
6008         eeb710a ; * lisp/startup.el: Sentences end with two spaces.
6009         428b3de * admin/admin.el (set-version): Also handle the NEWS file.
6010         648de81 ; Add NEWS entry for project.el
6011         671862f apropos-library: Skip obvious duplicates; don't error on generics
6012         51668a5 ; Grammar fix
6013         ed41d11 Add project-find-file and project-or-external-find-file
6014         056da45 ; Improve commentary in 'setup_for_ellipsis'
6015         269d008 ; Improve docstring for `inhibit-startup-echo-area-message'
6017 2016-01-12  John Wiegley  <johnw@newartisans.com>
6019         Merge from origin/emacs-25
6021         ce4a052 Add defvar-local to lisp-imenu-generic-expression
6022         a0121bc Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
6023         76fe2d5 * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
6024         1ae088f * lisp/emacs-lisp/autoload.el (autoload-find-destination):
6025         b6b47af Properly encode/decode base64Binary data in SOAP
6026         c632466 Obey coding-system-for-write when writing stdout/stderr in batch
6027         2f32cb5 * doc/misc/efaq.texi (Packages that do not come with Emacs):
6028                 Update the URI of MELPA and marmalade-repo.
6029                 Reported by CHENG Goa <chenggao@royau.me> in
6030                 https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
6031         d2937aa * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
6032         5330c25 * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
6033         7380990 Remove function wrongly on AWK Mode value of context
6034         fontification hook.
6035         d400753 * src/buffer.c: Stick with ASCII in doc string.
6036         221240c Reword transient-mark-mode doc string
6037         977d3ea Update doc string of 'selective-display'
6038         229c3fa Make C++ buffers writeable when writing their initial text
6039                 properties.
6040         f5c762c Additional changes for "make check-expensive"
6041         1729cf3 ; * admin/MAINTAINERS: Remove myself.
6042         33219d3 Apply text properties for <, > in new after-change function
6043                 (C++ Java Modes).
6045 2016-01-12  John Wiegley  <johnw@newartisans.com>
6047         Merge from origin/emacs-25
6049         9fb185a shr-tag-video bug fix
6050         6300655 Minor fixes in tramp-tests.el
6051         50575b1 Ensure redisplay when 'truncate-lines' is set
6052         0d9e80d Fix a doc string of 'transient-mark-mode'
6053         0000ae5 MS-Windows followup to latest gnulib update
6054         4bc5e02 Spelling fix
6055         f1093f7 Do secure signed Bcc handling
6057 2016-01-12  John Wiegley  <johnw@newartisans.com>
6059         Merge from origin/emacs-25
6061         861022f * doc/misc/texinfo.tex: Revert unwanted copyright change.
6062         46e47a5 ; * etc/refcards/ru-refcard.tex (cyear): Update via M-x set-copyright.
6063         71ea138 * lisp/align.el (align): Simplify a lambda
6064         5618a50 * lisp/align.el (align): Fix arg order in call to `align-region'
6065         1f680db Fix compilation next-error in buffers with selective-display
6066         d20a948 * nsm.el (nsm-check-protocol): Fix typo in the message.
6067         1da116f Add SHA1 warnings for high network security settings
6068         e48bacd ; * etc/NEWS: Typo fix.
6070 2016-01-12  John Wiegley  <johnw@newartisans.com>
6072         Merge from origin/emacs-25
6074         43662a2 ; Clarify that xref is still experimental
6075         0a6e6ca ; * admin/release-process: Remove some obsolete records.
6076         c2e9e3d * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
6077         8637f3d (semantic-symref-derive-find-filepatterns): Return a list
6078         0a7ad07 ; Re-arrange xref-related entries in NEWS.
6079         fe903ef Fix xref-find-references on MS-Windows
6080         55a28d8 ; Fixed visual bell artifact problem on NextStep.
6081         d064034 Document new features of tildify-mode
6082         964bea7 Document new features of Whitespace mode
6083         cd68f47 Improve documentation of new Hide-IfDef features
6084         723b8bf Fix regression in font-locking cl-assert and cl-check-type
6086 2016-01-12  John Wiegley  <johnw@newartisans.com>
6088         Merge from origin/emacs-25
6090         ef33bc7 Spelling and grammar fixes
6091         9c3dbab Fix copyright years by hand
6092         0e96320 Update copyright year to 2016
6094 2016-01-12  John Wiegley  <johnw@newartisans.com>
6096         Merge from origin/emacs-25
6098         9ee6ecb lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
6099         526d80c Port chart.el methods to cl-generic.
6100         410bb69 Add nt/INSTALL.W64 build instructions
6101         8f5b524 Add new input method 'programmer-dvorak'
6102         6d11f6e Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
6103         bb83bb1 Fix EWW rendering of long RTL lines
6104         b1a8509 fix  bug#21054
6105         ce5ad12 Clean up cairo printing code
6107 2016-01-12  John Wiegley  <johnw@newartisans.com>
6109         Merge from origin/emacs-25
6111         6ee327d Add handle_user_signal_hook
6112         47580e0 Avoid writing to purespace
6113         0588be7 Remove unused variable
6114         89e7483 * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
6115         3b95e9c Use posix_openpt instead of openpty on Darwin
6116         86312ff Document support for ':documentation' in Lisp mode
6117         c930e75b Document new features of TeX mode
6118         7c83d84 Clarify docs of hscroll in RTL text
6119         4c8f8db Fix rendering of HTML pages that use character composition
6120         a8d37ca Avoid some compiler warnings in w32.c
6121         ce106f3de Undo ill-advised change
6122         be0bba4 Unbreak completion in python-mode buffers
6124 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
6126         test/automated/vc-hg.el: Support out-of-tree build
6128         * test/automated/vc-hg.el
6129         (vc-hg-annotate-extract-revision-at-line-with-filename)
6130         (vc-hg-annotate-extract-revision-at-line-with-both):
6131         Don't refer to source-directory.
6132         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
6134 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
6136         Minor change in tramp-tests.el
6138         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
6139         Use `dired-uncache' instead of a Tramp internal function.
6141 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
6143         * etc/HELLO: Add Armenian and Mongolian greetings.
6145         (Bug#22346)
6147 2016-01-11  Alan Mackenzie  <acm@muc.de>
6149         Java Mode: Fontify identifiers in the presence of annotations.
6151         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
6152         Don't move point when the defun fails.
6153         (c-forward-decl-or-cast-1): Correct a usage of match data.
6155         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
6156         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
6157         removed variable.
6159         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
6161 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
6163         Avoid an infloop when we run out of memory
6165         * src/alloc.c (garbage_collect_1): Don't bother saving and
6166         restoring the echo-area message if we are GC'ing after running out
6167         of memory.  This avoids an infloop due to repeated attempts to
6168         allocate memory for the cons cell needed to save the message,
6169         which signals the memory-full error, which attempts to save the
6170         echo-area message, which signals memory-full again, etc.
6172 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
6174         Avoid unnecessary failures of auto-saving after fatal error
6176         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
6177         the benefit of FAT volumes if we are called as part of shutting
6178         down due to a fatal error, which probably means we are trying to
6179         auto-save the session.
6180         * src/lread.c (check_obarray): Don't bother making the obarray
6181         valid if we are shutting down due to a fatal error.  This avoids
6182         interfering with auto-saving the crashed session.
6184 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
6186         Simplify HAVE_MODULES use in mark_maybe_pointer
6188         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
6189         so that later code can use 'if' rather than '#ifdef'.
6190         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
6191         always working.
6193 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
6195         Revert attempt to use 'noexcept' in typedef
6197         This use of 'noexcept' runs afoul of the C++11 standard.
6198         Problem reported by Philipp Stephani in:
6199         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
6200         * src/emacs-module.c (emacs_finalizer_function):
6201         Move this typedef here ...
6202         * src/emacs-module.h: ... from here, and use only the C
6203         version of the typedef.  The typedef is now private since it
6204         is never used in the .h file now and anyway it seemed to be
6205         causing more confusion than it cured.
6206         (make_user_ptr, get_user_finalizer, set_user_finalizer):
6207         Open-code the type instead.
6209 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
6211         Update documentation of 'indirect-function'
6213         * doc/lispref/eval.texi (Function Indirection): Update the
6214         documentation of 'indirect-function'.
6216 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
6218         Update documentation for obsoleting 'syntax-begin-function'
6220         * doc/lispref/syntax.texi (Position Parse): Undocument
6221         'syntax-begin-function' that is now obsolete.
6223 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
6225         Document new features if Eshell
6227         * doc/misc/eshell.texi (Input/Output): Document the new
6228         '#<bufname>' syntax.
6229         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
6230         Disable "Key Index" generation, as there are no @kindex entries in
6231         this manual.
6233 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
6235         Handle too long commands in Tramp
6237         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
6238         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
6239         order to not exceed shell command line limit.
6241         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
6242         (tramp--test-utf8): Include Arabic file name, again.
6244 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
6246         * .gitattributes: *.cur and *.pif are binary files too.
6248 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
6250         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
6252 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
6254         * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
6256         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
6257         within $(...).
6258         * test/indent/shell.sh: Add corresponding test.
6260 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
6262         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
6264         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
6265         cast to Lisp_Object.
6267 2016-01-09  Dmitry Gutov  <dgutov@yandex.ru>
6269         Use short date for 'hg annotate', and output the author
6271         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
6272         Change '-d' to '-dq'.  (Bug#21805)
6273         (vc-hg-annotate-switches): Default to "-u" "--follow".
6274         (vc-hg-annotate-re): Update to recognize the short date format
6275         and the optional username.
6276         (vc-hg-annotate-time)
6277         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
6279         * test/automated/vc-hg.el: New file.
6281 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
6283         Spelling fix
6285 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
6287         Document user-level functions in project.el
6289         * lisp/progmodes/project.el (project-find-file)
6290         (project-or-external-find-file): Add doc strings.
6292 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
6294         Document the user-level features of the Xref package
6296         * doc/emacs/maintaining.texi (Maintaining): Add a list of
6297         described features.
6298         (Xref): New section, made out of thoroughly rewritten "Tags"
6299         section.
6300         (Find Identifiers, Looking Up Identifiers, Xref Commands)
6301         (Identifier Search, List Identifiers): New subsections,
6302         incorporating the old tags commands and the new xref commands.
6303         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
6304         Section and subsections demoted to a lower level.
6305         * doc/emacs/search.texi (Search):
6306         * doc/emacs/windows.texi (Pop Up Window):
6307         * doc/emacs/frames.texi (Creating Frames):
6308         * doc/emacs/programs.texi (Imenu, Symbol Completion):
6309         * doc/emacs/building.texi (Grep Searching):
6310         * doc/emacs/dired.texi (Operating on Files):
6311         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
6313 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
6315         * loading.texi: Add `define-type' entry for load-history
6317         * doc/lispref/loading.texi (Where Defined): Remove incorrect
6318         cl-defmethod description, and add missing define-type entry.
6320 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
6322         Improve doc strings and prompts in xref.el
6324         * lisp/progmodes/xref.el (xref-backend-functions)
6325         (xref-find-definitions): Doc fixes.
6326         (xref-query-replace): Doc fix.  Improve prompts for arguments.
6328 2016-01-09  Alan Mackenzie  <acm@muc.de>
6330         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
6332         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
6333         `font-lock-extend-regions-wholelines' from
6334         `font-lock-extend-region-functions' rather than setting the latter to
6335         nil.
6337 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
6339         Fix coding system for Tramp on OS X.
6341         * lisp/net/tramp-compat.el: Require ucs-normalize.
6343         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
6344         Set coding system to `utf-8-hfs' for Mac OS X.
6346         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
6347         Flush directory properties when needed.
6348         (tramp--test-utf8): Include Chinese file name, again.
6350 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
6352         Update 'load-history' docs
6354         * doc/lispref/loading.texi (Where Defined): Update the list of
6355         forms in 'load-history' by adding the forms created for the
6356         'cl-generic' generics.  (Bug#21422)
6358 2016-01-08  Paul Eggert  <eggert@cs.ucla.edu>
6360         Fix (error ...) error
6362         Problem reported by Glenn Morris in:
6363         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
6364         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
6365         introduced in my Aug 28 change, where I got confused by the
6366         two meanings of (error ...).
6368 2016-01-08  Alan Mackenzie  <acm@muc.de>
6370         Correctly analyze brace arguments in templated C++ function declarations.
6372         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
6373         POS and LIMIT parameters, like the other c-go-list-* functions have.
6375         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
6376         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
6377         followed by template specifiers.
6379 2016-01-08  Glenn Morris  <rgm@gnu.org>
6381         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
6383         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
6385 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
6387         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
6389 2016-01-08  Alan Mackenzie  <acm@muc.de>
6391         Respect fontification region calculated by major mode.  Fixes bug #22316.
6393         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
6394         fontification region has been calculated by a function on
6395         font-lock-extend-after-change-region-function use this region rather than
6396         changing the end position to somewhere else.
6398 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
6400         Improve documentation of Delete Selection mode
6402         * lisp/delsel.el (delete-selection-mode)
6403         (delete-selection-helper): Update and expand the doc strings.
6404         (Bug#22296)
6406         * doc/emacs/mark.texi (Using Region): Document the behavior of
6407         delete commands in Delete Selection mode.  (Bug#22296)
6409         * doc/lispref/markers.texi (The Mark): Document how to add the
6410         support for Delete Selection mode to Lisp programs. (Bug#22296)
6412 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
6414         Fix two project-find-file issues
6416         * lisp/progmodes/project.el (project--value-in-dir):
6417         Temporarily set enable-local-variables to :all.
6418         (project-find-file, project-or-external-find-file):
6419         All autoloads.
6420         (project--find-file-in): Require xref.
6422 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
6424         Clarify doc string of 'dired-current-directory'
6426         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
6427         the return value might not end in a slash when called with the
6428         optional argument non-nil.  (Bug#6273)
6430 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
6432         Use the face of preceding text for displaying the ellipsis
6434         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
6435         text in it->saved_face_id for displaying the ellipsis, and ignore
6436         the face, if any, of the invisible text.  (Bug#22320)
6438 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
6440         Suppress Chinese file name test for OSX in tramp-tests.el
6442         * test/automated/tramp-tests.el (tramp--test-utf8):
6443         Remove instrumentation.  Suppress Chinese file name test for OSX.
6445 2016-01-07  Glenn Morris  <rgm@gnu.org>
6447         * admin/admin.el (set-version): Also handle the NEWS file.
6449 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
6451         apropos-library: Skip obvious duplicates; don't error on generics
6453         * lisp/apropos.el (apropos-library): Skip "was an autoload"
6454         entries, to avoid obvious duplicates.  For each cl-defmethod
6455         entry, take just its function symbol (bug#21422).
6457 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
6459         Add project-find-file and project-or-external-find-file
6461         * lisp/minibuffer.el (completion-category-defaults):
6462         Add `project-file' category.
6464         * lisp/progmodes/project.el (project-find-file)
6465         (project-or-external-find-file): New commands.
6466         (project--find-file-in): New private function.
6468         * lisp/progmodes/xref.el (xref-collect-matches): Use
6469         `expand-file-name' on DIR, to expand the tildes.
6470         (xref--find-ignores-arguments): Extract from
6471         `xref--rgrep-command'.
6473 2016-01-06  Leo Liu  <sdl.web@gmail.com>
6475         Add defvar-local to lisp-imenu-generic-expression
6477         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
6478           defvar-local.
6480 2016-01-06  Leo Liu  <sdl.web@gmail.com>
6482         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
6484         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
6485           Don't declare (indent 1).
6487 2016-01-06  Glenn Morris  <rgm@gnu.org>
6489         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
6491 2016-01-06  Glenn Morris  <rgm@gnu.org>
6493         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
6495         Avoid specifying the length of a time object (it has not been "2"
6496         for some time).
6498 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
6500         Properly encode/decode base64Binary data in SOAP
6502                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
6503                 base64Binary value as utf-8.
6504                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
6506 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
6508         Obey coding-system-for-write when writing stdout/stderr in batch
6510         * src/print.c (printchar_to_stream):
6511         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
6512         a non-nil value, use it to encode output in preference to
6513         locale-coding-system.  See the discussions in
6514         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
6515         for the details.
6517         * doc/lispref/os.texi (Terminal Output): Document how to send
6518         non-ASCII text via 'send-string-to-terminal'.
6519         (Batch Mode): Document how text written to standard streams is
6520         encoded.  Fix inaccuracy regarding which output streams are used
6521         by output functions in batch mode.
6523 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
6525         * doc/misc/efaq.texi (Packages that do not come with Emacs):
6526         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
6527         <chenggao@royau.me> in
6528         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
6530 2016-01-05  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
6532         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
6534         Fix backslash.  (Bug#22224)
6536 2016-01-05  Federico Beffa  <beffa@ieee.org>  (tiny change)
6538         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
6540         Make it actually work.  (Bug#22265)
6542 2016-01-05  Alan Mackenzie  <acm@muc.de>
6544         Remove function wrongly on AWK Mode value of context fontification hook.
6546         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
6547         swap order of entries so that awk's entry isn't superseded by the default.
6549         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
6550         to handle nil value of c-before-context-fontification-functions.
6552 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
6554         * src/buffer.c: Stick with ASCII in doc string.
6556 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
6558         Reword transient-mark-mode doc string
6560         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
6561         The value 'lambda (literally) can be interpreted as (quote lambda),
6562         which is not intended here; we want just the lambda symbol.
6564 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
6566         Update doc string of 'selective-display'
6568         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
6569         using it with the value of 't' is obsolete.  (Bug#1092)
6571 2016-01-05  Alan Mackenzie  <acm@muc.de>
6573         Make C++ buffers writeable when writing their initial text properties.
6575         This is a correction to yesterday's CC Mode patch.
6577         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
6578         c-save-buffer-state around the function rather than a mere `let'.
6580 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
6582         Additional changes for "make check-expensive"
6584         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
6585         Explain make target `check-expensive'.
6587         * etc/NEWS: Mention new make target `check-expensive'.
6589         * test/automated/Makefile.in (check-doit): New target.
6590         (check, check-expensive): Use it.
6592 2016-01-04  Alan Mackenzie  <acm@muc.de>
6594         Apply text properties for <, > in new after-change function (C++ Java Modes).
6596         These are category/syntax-table properties to give < and > paren syntax.
6597         Also apply certain `c-type' text properties to the insides of <..> constructs
6598         to ensure that identifiers contained by them get fontified.  This patch fixes
6599         bug #681.
6601         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
6602         after-change action.
6604         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
6605         change region to include <s and >s which might not be already marked as
6606         parens, rather than just when paren text properties are removed.
6607         (c-restore-<>-properties): New after-change function, which applies text
6608         properties marking < and > with paren syntax.
6610         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
6611         properties are applied to the interiors of <...> constructs, to ensure
6612         fontification of identifiers there.
6614         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
6615         c-restore-<>-properties to this list for C++ and Java.
6617         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
6618         c-before-font-lock-functions, exclude c-restore-<>-properties from the
6619         functions invoked.
6620         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
6621         to allow modification by before-change functions.
6622         (c-after-change): Amend c-new-END here, rather than initializing it and
6623         c-new-BEG.
6625 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
6627         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
6629 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
6631         Introduce check-expensive tests.
6633         * Makefile.in (check-expensive):
6634         * test/automated/Makefile.in (check-expensive): New target.
6636         * test/automated/auto-revert-tests.el
6637         (auto-revert-test01-auto-revert-several-files):
6638         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
6639         * test/automated/tramp-tests.el (tramp-test26-process-file)
6640         (tramp-test27-start-file-process, tramp-test28-shell-command)
6641         (tramp-test29-vc-registered)
6642         (tramp-test31-special-characters-with-stat)
6643         (tramp-test31-special-characters-with-perl)
6644         (tramp-test31-special-characters-with-ls)
6645         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
6646         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
6647         (tramp-test35-unload): Tag the tests as :expensive-test.
6649 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6651         shr-tag-video bug fix
6653         * shr.el (shr-tag-video): Protect against the `poster' being
6654         empty.
6656 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
6658         Minor fixes in tramp-tests.el
6660         * test/automated/tramp-tests.el (tramp-test26-process-file):
6661         Move point properly.
6662         (tramp-test29-vc-registered): Work with relative file names.
6664 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
6666         Ensure redisplay when 'truncate-lines' is set
6668         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
6669         (Bug#22303)
6671 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
6673         Fix a doc string of 'transient-mark-mode'
6675         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
6676         "lambda" in doc string from becoming a link to lambda expressions.
6678 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
6680         MS-Windows followup to latest gnulib update
6682         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
6684 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
6686         Spelling fix
6688 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
6690         Do secure signed Bcc handling
6692         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
6693         (bug#18718).
6695 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
6697         Avoid stdio in SIGINT handler
6699         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
6700         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
6701         * lib/ignore-value.h: New file, from gnulib.
6702         * src/keyboard.c: Include it.
6703         (write_stdout, read_stdin): New functions.
6704         (handle_interrupt): Use them instead of printf and getchar,
6705         and avoid fflush when handling signals.
6707 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
6709         * doc/misc/texinfo.tex: Revert unwanted copyright change.
6711 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
6713         * lisp/align.el (align): Simplify a lambda
6715         * lisp/align.el (align): Fix arg order in call to `align-region'
6717 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
6719         Fix compilation next-error in buffers with selective-display
6721         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
6722         function.
6723         (compilation-internal-error-properties)
6724         (compilation-next-error-function, compilation-set-window): Use
6725         it.  (Bug#1092)
6727 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6729         * nsm.el (nsm-check-protocol): Fix typo in the message.
6731 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
6733         Add SHA1 warnings for high network security settings
6735         * nsm.el (nsm-check-protocol): When using high security, warn
6736         about SHA1 certificates, which are now believed to be open to
6737         spoofing.
6739 2016-01-02  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
6741         Refactor mml-smime.el, mml1991.el, mml2015.el
6743         (Maybe this is the last merge from Gnus git to Emacs git)
6745         Cf. discussion on ding mailing list, messages in
6746         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
6747         Common code from the three files mml-smime.el, mml1991.el, and
6748         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
6749         to gnus-util.el.
6751         The code is supported by test cases with necessary test keys.
6753         Documentation in message.texi is updated.
6755         * doc/misc/message.texi (Security, Using S/MIME):
6756         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
6757         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
6758         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
6760         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
6761         New functions.
6763         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
6764         (epa--select-keys): Autoload.
6765         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
6766         (mml-secure-openpgp-signers): New user option;
6767         make mml1991-signers and mml2015-signers obsolete aliases to it.
6768         (mml-secure-smime-signers): New user option;
6769         make mml-smime-signers an obsolete alias to it.
6770         (mml-secure-openpgp-encrypt-to-self): New user option;
6771         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
6772         aliases to it.
6773         (mml-secure-smime-encrypt-to-self): New user option;
6774         make mml-smime-encrypt-to-self an obsolete alias to it.
6775         (mml-secure-openpgp-sign-with-sender): New user option;
6776         make mml2015-sign-with-sender an obsolete alias to it.
6777         (mml-secure-smime-sign-with-sender): New user option;
6778         make mml-smime-sign-with-sender an obsolete alias to it.
6779         (mml-secure-openpgp-always-trust): New user option;
6780         make mml2015-always-trust an obsolete alias to it.
6781         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
6782         New user options.
6783         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
6784         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
6785         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
6786         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
6787         (mml-secure-passphrase-callback, mml-secure-check-user-id)
6788         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
6789         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
6790         (mml-secure-fingerprint, mml-secure-filter-keys)
6791         (mml-secure-normalize-cust-name, mml-secure-select-keys)
6792         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
6793         (mml-secure-self-recipients, mml-secure-recipients)
6794         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
6796         * lisp/gnus/mml-smime.el: Require epg;
6797         refactor declaration and autoloading of epg functions.
6798         (mml-smime-use): Doc fix.
6799         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
6800         Obsolete.
6801         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
6802         Use format instead of gnus-format-message.
6803         (mml-smime-epg-secret-key-id-list): Remove variable.
6804         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
6805         (mml-smime-epg-find-usable-secret-key): Remove functions.
6806         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
6808         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
6809         (mml1991-passphrase-cache-expiry): Obsolete.
6810         (mml1991-epg-secret-key-id-list): Remove variable.
6811         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
6812         (mml1991-epg-find-usable-secret-key): Remove functions.
6813         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
6815         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
6816         (mml2015-passphrase-cache-expiry): Obsolete.
6817         (mml2015-epg-secret-key-id-list): Remove variable.
6818         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
6819         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
6820         (mml2015-epg-find-usable-secret-key): Remove functions.
6821         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
6822         (mml2015-epg-encrypt): Refactor.
6824 2016-01-02  Glenn Morris  <rgm@gnu.org>
6826         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
6828         Explicitly ignore case.  (Bug#22262)
6830 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
6832         (semantic-symref-derive-find-filepatterns): Return a list
6834         * lisp/cedet/semantic/symref/grep.el
6835         (semantic-symref-derive-find-filepatterns): Return a list.
6836         (semantic-symref-perform-search): Quote the result here once and for all.
6838 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
6840         Fix xref-find-references on MS-Windows
6842         * lisp/cedet/semantic/symref/grep.el
6843         (semantic-symref-derive-find-filepatterns): Use
6844         'shell-quote-argument' instead of manually quoting in a way that
6845         only works with Posix shells.  (Bug#22289)
6847 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
6849         Document new features of tildify-mode
6851         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
6852         (tildify-mode): Spelling fixes in doc strings.
6854         * etc/NEWS: Reformat the tildify-mode entry.
6856 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
6858         Document new features of Whitespace mode
6860         * doc/emacs/display.texi (Useless Whitespace): Document
6861         'whitespace-toggle-options' and the new 'big-indent' style.
6862         Document 'whitespace-big-indent-regexp'.  Document the Global
6863         Whitespace mode.
6865 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
6867         Improve documentation of new Hide-IfDef features
6869         * etc/NEWS: Expand and reword Hide-IfDef section.
6871 2016-01-02  Leo Liu  <sdl.web@gmail.com>
6873         Fix regression in font-locking cl-assert and cl-check-type
6875         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
6876           el-errs-re.
6878 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
6880         Spelling and grammar fixes
6882 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
6884         Fix copyright years by hand
6886         These are dates that admin/update-copyright did not update, or
6887         updated incorrectly.
6889 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
6891         Update copyright year to 2016
6893         Run admin/update-copyright.
6895 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
6897         Merge from gnulib
6899         This mostly just updates copyright dates of gnulib files.
6900         It also updates to the latest version of texinfo.tex.
6902 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
6904         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
6906 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
6908         Port chart.el methods to cl-generic.
6910         cl-call-next-method cannot be used inside EIEIO's defmethod.
6911         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
6912         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
6913         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
6914         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
6915         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
6916         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
6918 2015-12-31  Brian Burns  <bburns.km@gmail.com>
6920         Add nt/INSTALL.W64 build instructions
6922         * nt/INSTALL.W64: New file.
6923         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
6925 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
6927         Add new input method 'programmer-dvorak'
6929         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
6930         input method.
6932         * etc/NEWS: Mention it.
6934 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
6936         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
6938         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
6939         original M-TAB binding in a buffer-local variable.
6940         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
6941         if that is recorded, when point is in a place where flyspell
6942         should not be active (e.g., because the user turned on
6943         'flyspell-prog-mode').  (Bug#18533)
6945 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
6947         Fix EWW rendering of long RTL lines
6949         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
6950         of the selected window before filling its lines.  (Bug#22250)
6952 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
6954         fix  bug#21054
6956         * ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
6958 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6960         Clean up cairo printing code
6962         * src/gtkutil.c (xg_get_page_setup): Use listn.
6963         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
6964         decode_window_system_frame and FRAME_VISIBLE_P.
6965         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
6966         of Fdisplay.
6967         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
6968         instead of Fdisplay.  Temporarily unblock_input around QUIT.
6970 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6972         Add handle_user_signal_hook
6974         * src/keyboard.h (handle_user_signal_hook): New declaration.
6975         * src/keyboard.c (handle_user_signal_hook): New variable.
6976         (handle_user_signal): Call it.
6978 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6980         Avoid writing to purespace
6982         * src/alloc.c (Fmake_string): Don't write to empty string contents.
6983         (allocate_vector): Don't write to empty vector size.
6984         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
6985         Don't call unnecessary XSETCAR or XSETCDR.
6986         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
6987         write to empty string size_byte.
6989 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6991         Remove unused variable
6993         * lisp/international/mule-cmds.el: Remove unused variable
6994         `mac-system-coding-system'.
6996 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6998         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
7000 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7002         Use posix_openpt instead of openpty on Darwin
7004         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
7005         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
7006         Darwin-specific definitions.  Use posix_openpt instead.
7008 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
7010         Document support for ':documentation' in Lisp mode
7012         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
7013         (lisp-string-after-doc-keyword-p)
7014         (lisp-font-lock-syntactic-face-function): Add doc strings.
7016 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
7018         Document new features of TeX mode
7020         * doc/emacs/text.texi (TeX Print): Document
7021         'tex-print-file-extension'.
7022         * doc/emacs/programs.texi (Misc for Programs): Document support
7023         for Prettify Symbols mode in TeX mode.
7025 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
7027         Clarify docs of hscroll in RTL text
7029         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
7030         meaning of a window's horizontal scroll amount for RTL paragraphs.
7032 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
7034         Fix rendering of HTML pages that use character composition
7036         * src/indent.c (Fvertical_motion): Fix the case when point starts
7037         in the middle of a composition, as in shr-vertical-motion.
7038         (Bug#22250)
7040 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
7042         Avoid some compiler warnings in w32.c
7044         * src/w32.c (codepage_for_filenames, crlf_to_lf)
7045         (ansi_encode_filename, socket_to_fd, sys_write)
7046         (check_windows_init_file): Avoid compiler warnings about
7047         differences in pointer signedness.
7049 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
7051         Undo ill-advised change
7053         * lisp/progmodes/xref.el (xref-collect-matches): Undo
7054         ill-advised change.  The hits come in the order that `find'
7055         produces them in, which isn't alphabetical.
7057 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
7059         Unbreak completion in python-mode buffers
7061         * lisp/progmodes/python.el (python-shell-completion-at-point):
7062         Unbreak in python-mode buffers.
7064 2016-01-09  Andrew Hyatt  <ahyatt@gmail.com>
7066         Adding example replies to bug-triage.
7068         * admin/notes/bug-triage: Added example replies. Also, as requested,
7069           making the process notes into more of a checklist.
7071 2016-01-08  Andrew Hyatt  <ahyatt@gmail.com>
7073         Rename the notes/admin/triage file to bug-triage.
7075         * CONTRIBUTE: Change reference to the triage file name.
7076         * admin/notes/triage: Rename file to admin/notes/bug-triage.
7078 2016-01-07  Glenn Morris  <rgm@gnu.org>
7080         Allow creation of loaddefs files without timestamps.
7082         * lisp/emacs-lisp/autoload.el (autoload-timestamps): New variable.
7083         (autoload-generate-file-autoloads, update-directory-autoloads):
7084         If autoload-timestamps is nil, write "t" instead of file timestamp.
7085         (autoload-find-destination, update-directory-autoloads):
7086         If timestamp is "t", use the modtime of the output file instead.
7088 2016-01-06  Glenn Morris  <rgm@gnu.org>
7090         Doc tweaks.
7092         * lisp/calendar/cal-hebrew.el (diary-hebrew-list-entries):
7093         * lisp/calendar/cal-iso.el (calendar-iso-to-absolute)
7094         (calendar-iso-from-absolute):
7095         * lisp/calendar/cal-tex.el (cal-tex-comment):
7096         * lisp/calendar/solar.el (calendar-time-display-form): Doc tweaks.
7098 2016-01-06  Glenn Morris  <rgm@gnu.org>
7100         Build tweaks related to tags files.
7102         * lib-src/Makefile.in (tagsfiles): New variable.
7103         (TAGS): Also depend on the source files.  Use our own etags program.
7104         * lisp/Makefile.in (ETAGS): Add EXEEXT.
7105         (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
7106         Remove.
7107         (tagsfiles): New, replacing lisptagsfiles1 etc.
7108         Remove irrelevant source files here rather than in the TAGS rule.
7109         (${ETAGS}): New rule.
7110         (TAGS): Also depend on the etags executable.
7111         * lwlib/Makefile.in (EXEEXT): New, set by configure.
7112         (ETAGS): Add EXEEXT.
7113         (${ETAGS}): New rule.
7114         (ctagsfiles): Use "wildcard".
7115         (TAGS): Also depend on the etags executable.
7116         * nt/Makefile.in (ETAGS, tagsfiles): New variables.
7117         (${ETAGS}): New rule.
7118         (TAGS): Fix dependencies.
7119         * oldXMenu/Makefile.in (EXEEXT): New, set by configure.
7120         (ETAGS): New variable, replacing $TAGS.  Use our own etags program.
7121         Remove "-t" argument.
7122         (${ETAGS}): New rule.
7123         (tagsfiles): New variable.
7124         (TAGS): New rule, with proper dependencies.
7125         * src/Makefile.in (ETAGS): Add EXEEXT.  Add a build rule.
7126         (ctagsfiles1, ctagsfiles2): Use "wildcard".
7127         (ctagsfiles3): Remove.
7128         (TAGS): Depend on etags.
7129         (../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
7130         directories decide if updates are needed.
7132 2016-01-06  Glenn Morris  <rgm@gnu.org>
7134         * lisp/Makefile.in (CAL_SRC): Skip calendar.el.
7136 2016-01-06  Glenn Morris  <rgm@gnu.org>
7138         * test/lisp/emacs-lisp/package-tests.el
7140         (package-test-macro-compilation): Fixup branch merge.
7142 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
7144         Fix fallout from merging emacs-25 branch in test/
7146         * .gitignore: Update for the new place of biditest.txt.
7147         * test/automated/: Directory removed.  All files moved to their
7148         proper places.
7149         * test/etags/: Directory removed.  All files moved to their proper
7150         places.
7151         * test/automated/url-parse-tests.el: File removed; it was an exact
7152         copy of the same file in test/lisp/url/.
7153         * test/automated/url-expand-tests.el: Moved to test/lisp/url/.
7155 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
7157         Spelling fixes.
7159 2016-01-04  Daniel Colascione  <dancol@dancol.org>
7161         Let users disable unsafe signal handling code
7163         * src/keyboard.c (syms_of_keyboard): New user variables
7164         `attempt-stack-overflow-recovery' and
7165         `attempt-orderly-shutdown-on-fatal-signal'.
7166         * src/sysdep.c (stack_overflow): Check
7167         `attempt-stack-overflow-recovery'.
7168         * src/emacs.c (terminate_due_to_signal): Check
7169         `attempt-orderly-shutdown-on-fatal-signal'.
7171 2016-01-03  Michael Albinus  <michael.albinus@gmx.de>
7173         * configure.ac: Add error message for gfile on Nextstep.
7175 2016-01-03  John Wiegley  <johnw@newartisans.com>
7177         Merge branch 'emacs-25-merge'
7179 2016-01-02  Vincent Belaïche  <vincentb1@users.sourceforge.net>
7181         Align textually on fix done for emacs-25 branch for bug#21054
7183         * lisp/ses.el (ses-check-curcell): Suppress ``temporary fix'' comment,
7184         and useless `(if t ...)' in order to align textually on fix done for
7185         emacs-25 branch for bug#21054.
7187 2016-01-02  K. Handa  <handa@gnu.org>
7189         support rendering of wider range of combinging characters by ftfont backend
7191         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
7192         supports rendering of combining characters, call
7193         font-shape-gstring.
7195         * src/font.c (Ffont_get): Handle `combining-capability' property.
7196         (syms_of_font): New symbol ":combining-capability'.
7198         * src/font.h (struct font_driver): New member combining_capability.
7200         * src/ftfont.c: Include "category.h".
7201         (ftfont_driver): Initialize combining_capability to
7202         ftfont_combining_capability.
7203         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
7204         FLT in advance.
7205         (ftfont_combining_capability): New function.
7207 2016-01-01  Andrew Hyatt  <ahyatt@gmail.com>
7209         Add notes on bug triage procedure
7211         * CONTRIBUTE: In section on the issue tracker, point to new triage file.
7212         * admin/notes/triage: New file explaining triage procedure.
7214 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
7216         Correct ses-rename-cell cursor-intangible text prop updating.
7218         There were two problems:
7220         - First ses-rename-cell has to work when called non interactively
7221           (with non-nil CELL argument), so in this case the start pos of
7222           put-text-property cannot be plainly (point), you need a
7223           ses-goto-print call before
7225         - Second, the range itself was computed erronously, only the first
7226           char was affected instead of the full cell width. This was not
7227           noticeable prior to changes (Deprecate `intangible' and
7228           `point-entered' properties) made by Stefan on 2015-04-13T19:51:15Z
7230         * lisp/ses.el (ses-rename-cell): Correct computation of position range
7231         to which the 'cursor-intangible text property has to be set to cell
7232         new name.
7234 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
7236         Don't fake empty cells value by "" when printing with a lambda.
7238         When using a lambda expression printer function the user should be
7239         free to format differently a really empty cell, ie. containing nil,
7240         from a cell containing an empty string "".
7242         * ses.el (ses-call-printer): Replace `(or value "")' by just `value'
7243         in the case of a lambda expression printer function.
7245         * ses.texi (Printer functions): Add example and description about
7246         lambda expression printer function handling all the possible values,
7247         including unexpected ones.
7249 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
7251         Quick temporary hack to fix curcell refreshing.
7253         The problem was caused by change: 2015-04-13 Deprecate `intangible'
7254         and `point-entered' properties. The problem is that this change has
7255         removed the (setq ses--curcell t) setting in the ses-command-hook
7256         function.
7258         * ses.el (ses-check-curcell): replace `(eq ses--curcell t)' by just `t' as
7259         a condition to call function `ses-set-curcell'. Comment this as a quick
7260         temporary hack to make it work, as I don't know yet whether a definite
7261         correction would be to make the ses-set-curcell at every ses-check-curcell,
7262         or to revert to the previous approach, ie marking ses--curcell as out-of-date
7263         at every potentially cursor motion command.
7265 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
7267         Restrictive URL checking tweaks
7269         * lisp/net/eww.el (eww): Check whether the domain is
7270         restrictive instead of the string
7271         (http://македонија.icom.museum is restrictive even if each
7272         part is from a different script).
7274 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
7276         New function `puny-highly-restrictive-domain-p'
7278         * lisp/net/puny.el (puny-highly-restrictive-string-p): Rename.
7279         (puny-highly-restrictive-domain-p): New function.
7281 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
7283         eww build fix (require puny)
7285 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
7287         Transform non-restrictive domains to punycode for display
7289         * lisp/net/eww.el (eww): Check whether the domain is Highly
7290         Restrictive in the Unicode IDNA sense.
7292 2015-12-30  John Wiegley  <johnw@newartisans.com>
7294         Merge emacs-25 into master (using imerge)
7296 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
7298         Fix typos in CC Mode manual
7300         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
7301         typos.  (Bug#22267)
7303 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
7305         Avoid assertion violations in compact_font_cache_entry
7307         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
7308         avoid assertion violation in ASIZE.  (Bug#22263)
7310 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
7312         Fix filling text with bidirectional characters in shr.el
7314         * lisp/net/shr.el (shr-insert-document): Bind
7315         bidi-display-reordering to nil while filling lines.  This is
7316         required for when a line includes characters whose bidi
7317         directionality is opposite to the base paragraph direction,
7318         because columns are counted in the logical order.  (Bug#22250)
7320 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
7322         Further Unicode restrictive fixups
7324         * puny.el (puny-highly-restrictive-p): Include the extra
7325         identifier characters from table 3.
7327 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
7329         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
7331 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
7333         Sync with Tramp 2.2.13
7335         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
7337         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
7338         Use `tramp-compat-funcall'.
7340         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
7341         Make `split-string' call compatible with older Emacsen.
7343         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
7345 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
7347         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
7349 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
7351         Mention that tls.el is secure by default, and will fail
7353 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
7355         Make tls.el use trustfiles by default
7357         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
7358         (open-tls-stream): Insert the trustfile by looking at
7359         `gnutls-trustfiles'.
7361 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
7363         Refactor out gnutls-trustfiles
7365         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
7367 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
7369         Remove --insecure from gnutls-cli invocation
7371         * tls.el (tls-program): Default to using secure TLS
7372         connections (bug#19284).
7374 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
7376         Add a new function to say whether a string is restrictive
7378         * puny.el (puny-highly-restrictive-p): New function.
7380 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
7382         Spelling fix
7384 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
7386         Port report-emacs-bug to deterministic builds
7388         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
7389         recent "built on" change to deterministic builds where
7390         emacs-build-system will be nil.  See:
7391         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
7393 2015-12-28  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
7395         Fix URL auth error message
7397         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
7398         message more correct (bug#20069).
7400 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
7402         Mention the new puny.el library
7404 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
7406         IDNA-related fixes for the URL library
7408         * lisp/url/url-http.el (url-http-create-request): IDNA-encode
7409         the Host: header.
7411         * lisp/url/url-util.el (url-encode-url): Don't hex-encode
7412         domain names, but leave them as UTF-8, so that they can be
7413         IDNA-encoded later when contacting the host.
7415 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
7417         IDNA-encode all domain names in `open-network-stream'
7419         * network-stream.el (open-network-stream)
7420         (network-stream-open-plain, network-stream-open-starttls):
7421         IDNA-encode all domain names, if needed.
7423 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
7425         Fix puny-encoding all-non-ASCII domains
7427         * puny.el (puny-encode-string): Fix the all-non-ASCII encoding case.
7429 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
7431         * lisp/net/shr.el (shr-next-link): Don't bug out on adjacent links.
7433 2015-12-28  Tom Tromey  <tom@tromey.com>
7435         set :safe on css-indent-offset
7437         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
7439 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
7441         * eww.el (eww-mode): Remove superfluous bidi reset.
7443 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
7445         Make chunked encoding trailer detection more compliant
7447         * lisp/url/url-http.el
7448         (url-http-chunked-encoding-after-change-function): Make
7449         trailer detection more compliant (bug#16345).
7451 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
7453         Reconnect erc even on server errors
7455         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Try to
7456         reconnect even if a server error has occurred (bug#18527).
7458 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
7460         Fix punycode short circuit logic
7462         * puny.el (puny-encode-domain): Fix short-circuit logic.
7464 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
7466         Fix Bug#10873 in `report-emacs-bug'
7468         * lisp/mail/emacsbug.el (report-emacs-bug): If
7469         `report-emacs-bug-no-explanations' is nil, make sure we can show
7470         mail and warnings buffer on this frame (Bug#10873).
7472 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
7474         IDNA speed up
7476         * puny.el (puny-encode-domain): Make the common non-IDNA case faster
7478 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
7480         Add IDNA domain encode/decode functions
7482         * puny.el (puny-decode-domain): New function.
7483         (puny-encode-domain): Ditto.
7484         (puny-decode-digit): Fix digit decoding error.
7486 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
7488         Rename idna.el to puny.el
7490         * puny.el: Renamed from idna.el to avoid name collisions with
7491         the external idna.el library.
7493 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
7495         Always reset the bidi direction
7497         * eww.el (eww-display-html): Always reset the bidi direction
7498         to `left-to-right' (bug#22257).
7500 2015-12-28  Alan Mackenzie  <acm@muc.de>
7502         Allow line comments ending with escaped NL to be continued to the next line.
7504         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
7506         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
7507         (forw-comment, back-comment): On encountering an end of comment character,
7508         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
7510         * doc/lispref/syntax.texi (Control Parsing): Describe
7511         `comment-end-can-be-escaped'.
7513         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
7515         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
7517 2015-12-28  Katsumi Yamaoka  <yamaoka@jpl.org>
7519         lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Keep old Emacsen compatibility
7521         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe):
7522         Don't use split-string with 4th arg for old Emacsen compatibility.
7524 2015-12-27  Dmitry Gutov  <dgutov@yandex.ru>
7526         Rename project-library-roots to project-external-roots
7528         * lisp/progmodes/project.el (project-library-roots): Rename to
7529         project-external-roots.
7530         (project-library-roots-function): Rename to
7531         project-vc-external-roots-function.  Only use it in the VC
7532         backend, for now.  Update project-external-roots accordingly.
7533         (project-vc-library-roots): Remove.
7534         (project-or-libraries-find-regexp):
7535         Rename to project-or-external-find-regexp.
7537         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
7538         Rename to elisp-load-path-roots.
7540         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
7541         an anonymous function for the default value of
7542         project-vc-external-roots-function.
7544 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
7546         * idna.el (idna-decode-string-internal): Implement decoding.
7548 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
7550         Further IDNA tweaks
7552         (idna-encode-string): Make idna-encode-string safe for
7553         non-ASCII use.
7555 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
7557         Clean up the code slightly
7559 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
7561         Added basic idna encoding support
7563         * lisp/net/idna.el: New file.
7565 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
7567         Disconnection fixes for erc
7569         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Don't
7570         reconnect if the user has disconnected explicitly (bug#4589).
7572 2015-12-27  Thomas Riccardi  <riccardi.thomas@gmail.com>  (tiny change)
7574         Further erc asynch fixes
7576         * lisp/erc/erc-backend.el (erc-process-sentinel-2): Make
7577         erc-server-connect to return even if the connection is not
7578         ready.  Then erc-open and erc-server-reconnect do the
7579         same. (bug#5650).
7581 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
7583         Make erc connect asynchronously
7585         * lisp/erc/erc-backend.el (erc-server-reconnect): Use it to
7586         reconnect asynchronously.
7588         * lisp/erc/erc-backend.el (erc-open-network-stream): New function (bug#5650).
7590 2015-12-27  Deniz Dogan  <deniz@dogan.se>
7592         Clear erc user list upon disconnection
7594         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
7595         lists upon disconnection.  This prevents invalid channel
7596         user lists when reconnecting (bug#10947).
7598 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
7600         Don't bug out in erc after waking from sleep
7602         * erc-backend.el (erc-server-send-ping): If the server has
7603         closed connection, this may already have been detected and
7604         `erc-server-last-received-time' has been set to nil (bug#13608).
7606 2015-12-27  David Edmondson  <dme@dme.org>
7608         Proxy error in erc with multiple clients
7610         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
7611         generated when multiple IRC clients talk to a single IRC proxy
7612         (bug#19034).
7614 2015-12-27  Dima Kogan  <dima@secretsauce.net>
7616         Ensure that we don't have several timers in erc
7618         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
7619         for existing timers in the alist before adding new ones.  If a
7620         timer already exists, it is cancelled and
7621         overwritten. (bug#19292).
7623 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
7625         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
7626         (bug#18718).
7628 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
7630         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
7631         at the start of the buffer, not at the end (bug#20496).
7633 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
7635         * lisp/net/eww.el (eww-setup-buffer): Restore left-to-right defaults.
7637 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
7639         Don't join erc channels doubly
7641         * erc-join.el (erc-autojoin-channels): Don't join channels
7642         more than once (if you have several nicks) (bug#20695).
7644 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
7646         Avoid leaving "ghost" of mouse pointer on MS-Windows
7648         * src/w32term.c (frame_set_mouse_pixel_position):
7649         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
7650         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
7651         * src/w32term.c (frame_set_mouse_pixel_position): Include
7652         w32common.h.
7654 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
7656         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Fix typo in last check-in.
7658 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
7660         Identify unsafe combinations of Bcc and encryption
7662         * lisp/gnus/gnus-util.el (gnus-subsetp): New function
7663         * lisp/gnus/mml-sec.el (mml-secure-safe-bcc-list): New variable
7664         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): New function
7666 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
7668         Fix auth source lookups from erc with port numbers
7670         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
7671         numbers (bug#20541).
7673 2015-12-27  Fran Litterio  <flitterio@gmail.com>
7675         Run erc-kill-channel-hook always on exit
7677         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
7678         when erc-kill-queries-on-quit is set (bug#21187).
7680 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
7682         Spelling fix
7684         * test/automated/url-parse-tests.el:
7685         (url-generic-parse-url/same-document-reference):
7686         Rename from url-generic-parse-url/same-decument-reference.
7688 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
7690         Reword initial *scratch* for brevity, appearance
7692         * lisp/startup.el (initial-scratch-message):
7693         Reword to avoid apostrophes, and to make it shorter.
7694         See the thread starting in:
7695         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
7697 2015-12-26  Leo Liu  <sdl.web@gmail.com>
7699         Add ert-deftest to lisp-mode.el
7701         * lisp-mode.el (lisp-imenu-generic-expression,
7702           lisp-el-font-lock-keywords-1): Add ert-deftest.
7704 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
7706         Mark imap changes as not needing doc changes
7708         * imap.el (imap-ssl-open): Remove
7710 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
7712         Use built-in encryption in imap.el
7714         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
7715         (imap-starttls-open): Use open-network-stream instead of starttls.el.
7716         (imap-tls-open): Use open-network-stream instead of tls.el.
7718 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
7720         Don't try using /bin/sh in artist.el on MS-Windows
7722         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
7723         New function.
7724         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
7725         (Bug#20167)
7727 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
7729         Always define gmalloc etc. in src/gmalloc.c
7731         This is a work-around to prevent the compiler from using semantic
7732         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
7733         with -O2 replaces most of calloc's definition by a call to calloc;
7734         see Bug#22085.
7735         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
7736         (aligned_alloc, free): Do not undef.  Instead, define these as
7737         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
7739 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
7741         Fix documentation of browse-url browser-related functions
7743         * lisp/net/browse-url.el (browse-url)
7744         (browse-url-default-browser, browse-url-default-windows-browser)
7745         (browse-url-default-macosx-browser, browse-url-chromium)
7746         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
7747         and NEW-WINDOW arguments in these functions.  (Bug#19421)
7749 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
7751         Propagate Bug#14412 fix to backtrace_eval_unrewind
7753         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
7754         becomes accurate again. This shouldn’t affect behavior.
7755         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
7757 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
7759         Don't produce non-ASCII characters in *scratch*
7761         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
7762         avoid producing non-ASCII characters in the *scratch* buffer's
7763         commentary.
7765 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
7767         Document changes in 'compare-windows'
7769         * lisp/vc/compare-w.el (compare-windows-removed)
7770         (compare-windows-added): Doc fix.
7772         * doc/emacs/files.texi (Comparing Files): Document the changes in
7773         window selection by 'compare-windows'.
7775 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
7777         Document 'vc-annotate-background-mode'
7779         * doc/emacs/maintaining.texi (Old Revisions): Document
7780         'vc-annotate-background-mode'.
7782 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
7784         Document 'vc-region-history'
7786         * doc/emacs/maintaining.texi (VC Change Log): Document
7787         'vc-region-history'.
7789 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
7791         Improve documentation of 'vc-push'
7793         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
7794         improve the documentation of 'vc-push'.
7796         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
7798 2015-12-26  Alain Schneble  <a.s@realize.ch>
7800         Include the tests for the URL parsing fixes
7802 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
7804         Document 'url-user-agent'.
7806         * lisp/url/url-http.el (url-user-agent): Move from here...
7807         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
7808         keep all the URL defcustoms in one place, and also have it defined
7809         whenever the URL library is loaded.
7811         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
7813 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
7815         Document protocols supported by URL library via Tramp
7817         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
7818         supported via Tramp.
7819         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
7820         Tramp.
7822 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
7824         Document changes in Shell-script mode
7826         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
7827         the 'sh-shell' file-local variable.
7828         (top level): Add an auto-load form to avoid byte-compiler warning
7829         about 'comint-send-string'.
7831 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
7833         Fix documentation of 'ses-define-local-printer'
7835         * doc/misc/ses.texi (Printer functions): Fix whitespace between
7836         sentences and punctuation.  Add an index entry for
7837         'ses-define-local-printer'.
7839 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
7841         Document 'ert-summarize-tests-batch-and-exit'
7843         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
7844         'ert-summarize-tests-batch-and-exit'.
7846 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
7848         Avoid assertion violation in unbind_to
7850         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
7851         if we get here with an object that is not a symbol.  (Bug#14412)
7853 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
7855         Don't treat /foo/bar:mumble as ange-ftp address
7856         * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
7857         only in the first component.  (bug#5362)
7859 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
7861         Make sure *scratch* etc. use forward slashes in its default-directory
7863         * lisp/startup.el (normal-top-level): On MS-Windows, convert
7864         backslashes to forward slashes while decoding default-directory
7865         of the initially-created buffers.
7867 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
7869         Restore info about the build host in bug reports
7871         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
7872         which Emacs was built.  This is important information for
7873         investigating bug reports reported by users who don't build their
7874         Emacs.
7876 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
7878         Fix bootstrap broken by changes related to OS X file-name encoding
7880         * lisp/international/ucs-normalize.el (eval-when-compile): Make
7881         sure char-code-property-alist includes elements that allow access
7882         to 'decomposition' and 'canonical-combining-class' Unicode
7883         properties, as compiling ucs-normalize.el requires that.
7884         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
7885         only of charprop.el was already loaded.
7887         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
7888         New order-only dependency.
7890 2015-12-25  Leo Liu  <sdl.web@gmail.com>
7892         * lisp/ido.el (ido-add-virtual-buffers-to-list):
7893         Use bookmark-get-filename.
7895 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
7897         Make tramp-test29-vc-registered more robust
7899         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
7900         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
7901         Remove instrumentation.
7903 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7905         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
7907 2015-12-23  Katsumi Yamaoka  <yamaoka@jpl.org>
7909         Fix `gnus-union' so as to behave like `cl-union'
7911         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
7912         Make gnus-union use `equal' to compare items in lists.
7914         * lisp/gnus/gnus-util.el (gnus-union):
7915         Make it behave like cl-union partially.
7917 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
7919         Fix dired.c typo with ptrdiff_t vs Lisp_Object
7921         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
7922         an integer type, fixing a problem introduced in the recent fix for
7923         Bug#22169.
7925 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
7927         Document default process sentinel more prominently
7929         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
7930         defaults for process filter and sentinel.  Provide cross-references.
7931         (Process Information): Provide cross-references to where filters
7932         and sentinels are described.
7933         (Filter Functions): Add an index entry for "default filter".
7934         (Sentinels): Add a few status messages not documented previously.
7935         Resolve the "killed" confusion.  Document and describe the default
7936         sentinel.  (Bug#22220)
7938 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
7940         Fix file-name completion on OS X
7942         * src/dired.c (file_name_completion): Reject false matches due to
7943         file-name-coding-systems that decompose characters when encoding
7944         file names, by comparing decoded file names as well.  (Bug#22169)
7945         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
7947         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
7948         non-nil 'decomposed-characters' property.
7950 2015-12-23  Anders Lindgren  <andlind@gmail.com>
7952         File-name completion of non-ASCII characters on OS X (bug#22169)
7954         The coding system `utf-8-nfd', locally defined in ns-win.el,
7955         didn't provide a :pre-write-conversion method, causing file name
7956         completion of non-ASCII characters to fail.  Solved by using the
7957         `utf-8-hfs' coding system provided by `ucs-normalize'.
7959         * lisp/loadup.el: Load international/ucs-normalize (when building
7960         for ns).
7962         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
7963         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
7964         as the file name coding system.
7966         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
7968 2015-12-22  Tom Tromey  <tom@tromey.com>
7970         Fix bug #18588 by making bug-reference-bug-regexp more lenient
7972         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
7973         "bug NNNN".  (Bug #18588)
7975 2015-12-22  Tom Tromey  <tom@tromey.com>
7977         add some cl-* aliases to lisp-mode imenu
7979         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
7980         cl-defgeneric, and cl-defmethod.
7982 2015-12-22  Tom Tromey  <tom@tromey.com>
7984         Make a variable buffer-local
7986         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
7987         font-lock-syntax-table buffer-local.  (Bug #21627)
7989 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
7991         Fix decoding of text in URLs retrieved by EWW
7993         * lisp/net/eww.el (eww-render): Pass 'charset' to
7994         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
7995         non-nil, to set 'buffer-file-coding-system' of the buffer where we
7996         show the URL.
7997         (eww-display-html, eww-display-raw): Decode the text correctly,
7998         using the charset found in the headers, and defaulting to UTF-8.
7999         If the user told us to use a specific encoding, override the
8000         charset from the headers.  (Bug#22222)
8002 2015-12-22  Alan Mackenzie  <acm@muc.de>
8004         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
8006         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
8007         variable `tmp'.
8008         After a failed search for a matching ">", restore point before continuing.
8010 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
8012         Instrument Tramp tests
8014         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
8015         (tramp--test-utf8): Instrument tests.
8017 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
8019         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
8021         * lisp/simple.el (display-message-or-buffer): Call
8022         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
8023         (Bug#22221).
8025 2015-12-21  Juri Linkov  <juri@linkov.net>
8027         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
8029         (save-places-to-alist, save-place-dired-hook):
8030         Check for dired-subdir-alist.  (Bug#19851)
8032 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
8034         Add FIXME comment re stack overflow and modules
8036 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
8038         Revert some recent emacs-module commentary
8040         Most of the recently-added commentary was incorrect, due to the
8041         possibility of stack overflow.
8043 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
8045         Spelling fix: prefer "cooperate" to "co-operate"
8047 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
8049         Port undo fixes to -fno-common
8051         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
8052         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
8053         (buffer_before_last_command_or_undo):
8054         Declare in keyboard.h, and define in keyboard.c,
8055         instead of assuming the traditional Unix relaxed ref-def linkage.
8057 2015-12-20  Philipp Stephani  <phst@google.com>
8059         Improve commentary for emacs-module.c
8061         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
8062         * src/emacs-module.c (module_non_local_exit_get): Document that we
8063         cannot use the current implementation.
8064         (module_is_not_nil, module_eq): Document assumptions about EQ and
8065         NILP.
8067 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
8069         Suppress test on Mac OS X
8071         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
8072         (tramp--test-utf8): Use it.
8074 2015-12-20  Alan Mackenzie  <acm@muc.de>
8076         Merge branch 'scratch/follow' into emacs-25
8078         This allows Isearch, etc., to work well when Follow Mode is active.
8080 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
8082         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option):
8083         Improve check.
8085 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
8087         Fix last commit
8089         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
8090         with numeric argument.
8092 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
8094         Document new features of Rmail
8096         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
8097         Document new behavior of 'd' and 'C-d' with numeric argument.
8098         (Rmail Display): Document the rendering of HTML MIME parts.
8100 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
8102         Improve documentation of new cl-lib functions
8104         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
8105         Fix wording.
8107 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
8109         Document the new feature of 'minibuffer-with-setup-hook'
8111         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
8112         added to `minibuffer-setup-hook'.
8114 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
8116         Document new features of Font Lock
8118         * doc/lispref/modes.texi (Other Font Lock Variables): Document
8119         'font-lock-flush-function' and 'font-lock-ensure-function'.
8120         (Font Lock Basics): Document the basic fontification functions
8121         referenced in "Other Font Lock Variables".
8123         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
8125 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
8127         Document new features of Rectangle mode
8129         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
8130         rectangle-mark-mode.
8132 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
8134         Manual followup to last change
8136         * doc/lispref/display.texi (Displaying Messages): Sync with the
8137         doc string.  (Bug#22210)
8139 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
8141         Clarify doc string of 'display-message-or-buffer'
8143         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
8144         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
8146 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
8148         * doc/emacs/emacs.texi (Top): Update top-level menus.
8150         * doc/lispref/elisp.texi (Top): Update top-level menus.
8152 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
8154         Document how to avoid file-local variables that aren't
8156         * doc/emacs/custom.texi (Specifying File Variables): Describe how
8157         to prevent Emacs from interpreting unrelated text as file-local
8158         variables.  (Bug#22166)
8160 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
8162         Fix a typo in eterm-color's termcap entry
8164         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
8165         entry.  (Bug#22184)
8167 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
8169         Allow 'browse-url-emacs' visit non-existent URLs
8171         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
8172         signal an error if VISIT is non-nil, to more faithfully emulate
8173         the behavior of 'insert-file-contents'.  (Bug#22160)
8175 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
8177         Remove SunOS 4.x cruft
8179         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
8180         * lib-src/pop.c [sun]: Remove no-longer-needed include.
8181         * lwlib/xlwmenu.c (SUNSO41): Remove.
8183 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
8185         Merge from gnulib
8187         This mostly commentary fixes.
8188         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
8189         * lib/gnulib.mk: Regenerate with new gnulib-tool.
8191 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
8193         Minor fixes in Tramp
8195         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
8196         Reorder ls arguments.
8198         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
8200 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
8202         Make tramp a built-in package
8204         * lisp/finder.el (finder-compile-keywords): Update
8205         `package--builtins' also when Version: keyword is available.
8207         * lisp/net/trampver.el: Add Version: keyword.
8208         (tramp-version): Change it to "2.2.13.25.1", in order to be
8209         compatible with `version-to-list'.
8211 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
8213         * etc/tutorials/TUTORIAL.it: Update and fix typos.  (Bug#22187)
8215 2015-12-18  Alan Mackenzie  <acm@muc.de>
8217         Rename `recenter-group' to `recenter-window-group'
8219         * doc/lispref/windows.texi (Textual Scrolling)
8220         * lisp/window.el (top level, recenter-group)
8221         * lisp/follow.el (follow-mode)
8222         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
8223         `recenter-window-group' and `recenter-group-function' to
8224         `recenter-window-group-function'.
8226 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
8228         Fix vertical-motion in tabulated-list mode
8230         * src/indent.c (Fvertical_motion): When moving from line beginning
8231         to point under line truncation, assume overshoot by one line only
8232         if point actually lies beyond the window's right margin.
8233         (Bug#22194)
8235 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
8237         Don't have help functions call x-display-pixel-width/-height on ttys
8239         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
8240         Don't call x-display-pixel-width/-height on ttys.
8242 2015-12-17  Dmitry Gutov  <dgutov@yandex.ru>
8244         Use 'hg id' in vc-hg-previous-revision
8246         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
8247         Use 'hg id' to retrieve it (bug#22032).
8249 2015-12-17  Alan Mackenzie  <acm@muc.de>
8251         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
8253 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
8255         Fix a typo in the Emacs manual
8257         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
8258         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
8260 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
8262         Fix parsing netrc entries with ports
8264         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
8265         make a list out of 't'.  (Bug#22188)
8267         * test/automated/auth-source-tests.el
8268         (auth-source-test-netrc-parse-entry): New test.
8270 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
8272         Fix typo in Doug Lea malloc configure log
8274         * configure.ac (emacs_cv_var_doug_lea_malloc):
8275         Fix typo that confused the log output of 'configure'.
8277 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
8279         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
8281 2015-12-16  Alan Mackenzie  <acm@muc.de>
8283         * etc/NEWS: Move entry on pcase to correct section
8285         (Accidentally omitted from previous commit)
8287 2015-12-16  Alan Mackenzie  <acm@muc.de>
8289         Add documentation for changes to Show Paren mode.
8291         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
8293         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
8294         options, including the new show-paren-when-point-inside-paren and
8295         show-paren-when-point-in-periphery.
8297         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
8298         Move an entry on pcase to the Lisp Changes section.
8300 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
8302         Document Eldoc changes
8304         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
8306 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
8308         Fix invocation of Python and Guile interpreters from gdb-mi
8310         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
8311         commands for interactive Python and Guile interpreters.
8312         (gdb-send): Recognize various ways of exiting from Python and
8313         Guile interpreters and returning to GDB.  For details, see
8314         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
8315         and http://stackoverflow.com/questions/31514741.
8317 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
8319         Remove attempt to use C11 threads
8321         C11 threads are not needed for Emacs now, and their use is causing
8322         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
8323         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
8324         * configure.ac: Do not check for C11 threads. Remove unnecessary
8325         fiddling with CPPFLAGS when configuring pthreads.
8326         * src/emacs-module.c (main_thread, check_main_thread)
8327         (module_init): Do not worry about C11 threads.
8329 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
8331         Set utf8 encoding with stty in Tramp
8333         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
8334         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
8335         encoding with stty.
8337 2015-12-15  Alan Mackenzie  <acm@muc.de>
8339         Tidy up documentation associated with window groups.
8341         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
8342         Groups".  Correct example function to `window-group-start'.
8343         (Window Start and End, Textual scrolling): Point to the new anchor.  State
8344         that (most of) the args in window group functions have the same meaning as for
8345         the corresponding window primitives.
8347         * doc/lispref/positions.texi (Screen Lines).  Same as above.
8349 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
8351         Complete last commit
8353         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
8354         Move uname check up.  Handle Mac OS X eol encoding.
8356 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
8358         Handle Mac OS X eol encoding in Tramp
8360         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
8361         Handle Mac OS X eol encoding.
8363 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8365         Fix variable name typo in compute_tip_xy
8367         * src/w32fns.c (compute_tip_xy):
8368         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
8369         when `right' is integer.
8371 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>  (tiny change)
8373         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
8375 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
8377         Revert "Fix rx matcher overflow without limiting"
8379         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
8381 2015-12-14  Alan Mackenzie  <acm@muc.de>
8383         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
8385         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
8386         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
8388 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
8390         Fix rx matcher overflow without limiting
8392         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
8393         change to the regexp without imposing a limit on the length of the
8394         options.
8396 2015-12-14  Alan Mackenzie  <acm@muc.de>
8398         Enhance ispell-skip-region-alist by generating part of it at runtime.
8400         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
8401         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
8402         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
8403         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
8404         Include the result of ispell--make-filename-or-URL-re in regexps.
8406 2015-12-14  Glenn Morris  <rgm@gnu.org>
8408         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
8410 2015-12-14  Alan Mackenzie  <acm@muc.de>
8412         Replace GROUP argument in six window primitives by new functions.
8414         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
8415         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
8416         from description of six window functions.  Add in description of new functions
8417         window-group-start, window-group-end, set-window-group-start,
8418         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
8419         together with the six variables indirecting to the pertinent group
8420         functions.
8422         * src/window.c
8423         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
8424         applies to these two files, which added the GROUP argument to six window
8425         primitives.
8427         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
8428         functions.
8430         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
8431         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
8432         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
8433         to window primitives (e.g. window-start) with a GROUP argument by calls to
8434         new functions (e.g. window-group-start).
8436         * lisp/ispell.el (ispell-command-loop): Replace call to
8437         pos-visible-in-window-p with pos-visible-in-window-group-p.
8439         * lisp/window.el (window-group-start, window-group-end)
8440         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
8441         (selected-window-group, move-to-window-group-line): New functions.
8442         (window-group-start-function, window-group-end-function)
8443         (set-window-group-start-function, recenter-group-function)
8444         (pos-visible-in-window-group-p-function, selected-window-group-function)
8445         (move-to-window-group-line-function): New variables.
8447 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
8449         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
8451 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
8453         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
8455 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
8457         Improve regex to not trigger stack overflow
8459         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
8460         order not to trigger a stack overflow in regex matcher with unbalanced
8461         brackets (bug#22146).
8463 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
8465         Fix visiting files with raw-text
8467         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
8468         when some stuff was actually read.  (Bug#22162)
8470 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
8472         Fix regex matching keyval labels
8474         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
8475         matching keyval labels.
8477 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
8479         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
8481         ... in case of Tramp.  (Bug#20821)
8483 2015-12-12  Paul Eggert  <eggert@cs.ucla.edu>
8485         Fix performance regression with gcc -O0
8487         This fixes the smaller performance hit that I noted in:
8488         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
8489         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
8490         * src/puresize.h (puresize_h_PURE_P)
8491         (puresize_h_CHECK_IMPURE):
8492         New macros, with the old contents of the functions.
8493         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
8494         * src/puresize.h (PURE_P, CHECK_IMPURE):
8495         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
8496         * src/conf_post.h (ATTRIBUTE_UNUSED):
8497         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
8499 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
8501         * lisp/emacs-lisp/package.el (package-unpack): Security check
8503         Check that we received the package we were offered.
8505 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
8507         * lisp/emacs-lisp/package.el (package--compile): Don't activate
8509         `package-unpack' takes care of all activations now (other than
8510         `package-initialize).  `package--compile' now only compiles.
8512 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
8514         Document the new bindings of <UP> and <DOWN> in the minibuffer
8516         * doc/emacs/mini.texi (Minibuffer History): Describe the new
8517         bindings of <UP> and <DOWN> in the minibuffer.
8519 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
8521         Document new features of Ido
8523         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
8525 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
8527         Fix frame height calculations with added menu bar on Windows (Bug#22105)
8529         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
8530         when simultaneously specifying multiple parameters for
8531         `modify-frame-parameters' that all may change the frame's size.
8532         * src/w32fns.c (x_set_menu_bar_lines): Don't set
8533         windows_or_buffers_changed here.
8534         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
8535         with third argument false.
8536         * src/w32menu.c (set_frame_menubar): Set
8537         windows_or_buffers_changed here.
8538         * src/w32term.c (x_set_window_size): Determine third argument of
8539         AdjustWindowRect from whether the frame has a menu bar and not
8540         from whether it wants one.
8542 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
8544         Document the change in interactive shell mode
8546         * doc/emacs/misc.texi (Interactive Shell): Document that the
8547         '*shell*' buffer by default displays in a new window.
8549 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
8551         Document new features of package.el
8553         * doc/emacs/package.texi (Package Menu): Document the 'external'
8554         status and the new menu commands.
8555         (Package Installation): Document archive priorities.
8557         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
8558         (package-menu-hide-low-priority): Doc fix.
8560 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
8562         Update and document new features of xterm support
8564         * doc/emacs/frames.texi (Text-Only Mouse): Document that
8565         track-mouse is supported by newer xterm versions.
8567 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
8569         Document new features of Prettify Mode
8571         * doc/emacs/programs.texi (Misc for Programs): Document
8572         'prettify-symbols-compose-predicate' and
8573         'prettify-symbols-unprettify-at-point'.
8575         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
8576         (prettify-symbols-default-compose-p)
8577         (prettify-symbols-compose-predicate)
8578         (prettify-symbols--compose-symbol): Doc fixes.
8580 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
8582         Document multi-mode indentation facilities
8584         * doc/lispref/text.texi (Mode-Specific Indent): Document
8585         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
8587         * lisp/progmodes/prog-mode.el (prog-indentation-context)
8588         (prog-widen): Doc fixes.
8590 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
8592         Document 'vc-refresh-state'
8594         * doc/emacs/maintaining.texi (Version Control): Document
8595         'vc-refresh-state'.
8597         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
8599 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
8601         Fix echo for "C-u"
8603         * src/keyboard.c (command_loop_1): Undo last change.  It caused
8604         duplicate echo of C-u.  (Bug#22107)
8606 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
8608         Avoid errors when creating files under SVN in new directory
8610         * lisp/vc/vc-svn.el (vc-svn-registered): Use
8611         file-accessible-directory-p, to avoid cd'ing to a non-existing
8612         directory, which signals an error on some systems.  (Bug#21984)
8613         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
8614         Use declare-function to avoid byte-compiler warnings.
8616 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
8618         Improve Lua support in etags
8620         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
8621         "function".
8623         * etc/NEWS: Mention improved Lua support by 'etags'.
8625         * test/etags/lua-src/test.lua (test): Add tests for indented
8626         function definitions.
8627         * test/etags/ETAGS.good_1:
8628         * test/etags/ETAGS.good_2:
8629         * test/etags/ETAGS.good_3:
8630         * test/etags/ETAGS.good_4:
8631         * test/etags/ETAGS.good_5:
8632         * test/etags/ETAGS.good_6:
8633         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
8635 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
8637         Fix 'this-command-keys' wrt prefix argument
8639         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
8640         was part of this-command-keys, but not of this-single-command-keys.
8641         (Bug#22107)
8643         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
8644         commentary about the function's return value.
8646 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
8648         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
8650 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
8652         Improve and document Ruby support in 'etags'
8654         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
8655         (Ruby_functions): Support "module" and overloaded operators.
8656         (Ruby_help): Mention "module".
8658         * test/etags/ruby-src/test.rb:
8659         * test/etags/ruby-src/test1.ruby: New files.
8660         * test/etags/Makefile (RBSRC): New tests.
8661         (SRCS): Add ${RBSRC}.
8662         * test/etags/ETAGS.good_1:
8663         * test/etags/ETAGS.good_2:
8664         * test/etags/ETAGS.good_3:
8665         * test/etags/ETAGS.good_4:
8666         * test/etags/ETAGS.good_5:
8667         * test/etags/ETAGS.good_6:
8668         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
8670         * doc/man/etags.1: Mention Ruby support.
8671         * etc/NEWS: Mention Ruby support.
8673 2015-12-11  Xi Lu  <lx@shellcodes.org>
8675         Initial support for Ruby in 'etags'
8677         * lib-src/etags.c <Ruby_suffixes>: New variable.
8678         (lang_names): Add an entry for Ruby.
8679         (Ruby_functions): New function.  (Bug#22116)
8681 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
8683         Clarify documentation of 'modify-frame-parameters'
8685         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
8686         PARMs" mean for 'modify-frame-parameters'.
8688         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
8689         PARMs" mean for this function.  (Bug#22104)
8691 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
8693         Fix setting buffer unibyte when reading from a device
8695         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
8696         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
8698 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
8700         Clarify documentation of 'values'
8702         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
8703         updated by any evaluation commands in 'lisp-interaction-mode'.
8704         (Bug#22056)
8706 2015-12-11  Anders Lindgren  <andlind@gmail.com>
8708         Fixed subversion vc error when opening file in new directory (bug#21984).
8710         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
8712 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
8714         Yet another fix for when point ends up in invisible text
8716         * src/xdisp.c (redisplay_window): When someone forced
8717         window-start, and honoring that failed to show the cursor, try
8718         moving out of invisible text, before falling back to the middle of
8719         the window.  (Bug#22098)
8721 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
8723         Fix error in Tramp perl script for cygwin
8725         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
8726         error if file doesn't exist.
8728 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8730         Remove font workaround for limited outdated versions
8732         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
8733         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
8735 2015-12-09  Anders Lindgren  <andlind@gmail.com>
8737         Don't add "." to load path (bug#21104)
8739         When configured with --enable-locallisppath=no, which is the
8740         default for OS X, the load-path incorrectly was populated with ".".
8742         * src/lread.c (init_lread): Don't call `decode_env_path' when
8743         PATH_SITELOADSEARCH is empty.
8745 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
8747         * lisp/emacs-lisp/package.el (package--with-response-buffer):
8749         Search for the blank-line in the right buffer.
8751 2015-12-08  Glenn Morris  <rgm@gnu.org>
8753         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
8754         for recent change.
8756 2015-12-08  Glenn Morris  <rgm@gnu.org>
8758         Fix some display-warning usage.
8760         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
8761         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
8762         * lisp/calendar/holidays.el (calendar-holiday-list):
8763         * lisp/mail/rmailout.el (rmail-output-read-file-name):
8764         Fix display-warning usage.
8766 2015-12-07  Glenn Morris  <rgm@gnu.org>
8768         * lisp/calendar/cal-html.el: Require diary-lib.
8770         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
8772 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
8774         Add Obsolete-since header to eudcb-ph.el
8776         * eudcb-ph.el: Add Obsolete-since header.
8778 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
8780         Spelling fixes
8782         * doc/misc/calc.texi (Predefined Units): Use the bland modern
8783         scientific style for spelling the units “ampere” and
8784         “angstrom” rather than the older style “Ampere” and
8785         “Ångstrom”.  The latter spelling was wrong anyway (it should
8786         have been “Ångström”).
8787         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
8788         Fix misspelling of ‘atom’ in code.
8790 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
8792         Improve documentation of kill commands
8794         * lisp/simple.el (region-extract-function, delete-backward-char)
8795         (delete-forward-char, kill-region, copy-region-as-kill)
8796         (kill-ring-save): Better document the optional argument REGION in
8797         the doc strings.  Mention in the doc strings that text put in the
8798         kill-ring can be filtered by 'filter-buffer-substring'.
8800         * doc/lispref/text.texi (Kill Functions): Mention that functions
8801         described in this subsection can filter text they put in the
8802         kill-ring.  Add a cross-reference to "Buffer Contents" and an
8803         index entry.  Document the optional argument 'region' and its
8804         effect.
8805         (Bug#21315)
8807 2015-12-07  Alan Mackenzie  <acm@muc.de>
8809         Further progress making Isearch, Ispell, Replace work with Follow Mode.
8811         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
8812         no longer exists.  Add follow-post-command-hook to  three special purpose
8813         hooks at setup, and remove them at tear down.
8815         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
8816         isearch-lazy-highlight-new-loop.
8817         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
8818         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
8819         it.
8820         (isearch-lazy-highlight-maybe-new-loop): function removed.
8822         * lisp/replace.el: (replace-update-post-hook): New hook variable.
8823         (perform-replace): Add second (nil) argument to looking-back.  Invoke
8824         replace-update-post-hook before calling replace-highlight.
8826         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
8827         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
8828         call of pos-visible-in-window-p.
8829         (ispell-display-buffer): Place *Choices* window at the top of the last window
8830         in a window group.
8832 2015-12-07  Alan Mackenzie  <acm@muc.de>
8834         Amend doc of `mapconcat': it can take sequences, not merely strings.
8836         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
8837         to say that SEPARATOR and the results from FUNCTION may be any character
8838         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
8840 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
8842         Fix an utf8 problem for Tramp on BSD
8844         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
8845         Make lax check for utf8.
8846         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
8848 2015-12-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
8850         Make eudcb-ph.el obsolete
8852         * doc/misc/eudc.texi: Bump version to 1.40.0.
8853         Remove PH/QI sections and mentions.
8854         * lisp/obsolete/eudcb-ph.el: Make obsolete.
8855         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
8856         (eudc-ph-bbdb-conversion-alist): Make obsolete.
8857         * etc/NEWS: Mention this.  (Bug#21191)
8859 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
8861         Remove overenthusiastic eassert
8863         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
8864         previous change.  It breaks on MS-Windows --with-wide-int.
8865         Problem reported by Eli Zaretskii in:
8866         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
8868 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
8870         Pacify gcc -Wparentheses
8872         * src/xdisp.c (row_containing_pos): Reparenthesize.
8874 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
8876         Port mod-test to 32-bit Emacs --without-wide-int
8878         * modules/mod-test/test.el (mod-test-sum-test):
8879         Bring back the 2**29 tests, but port them to 32-bit Emacs
8880         --without-wide-int.
8882 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
8884         Fix minor Tramp problems found on BSD
8886         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
8887         trailing slash.  Quote apostrophes.
8888         (tramp-sh-handle-file-truename): Do not append trailing slash in
8889         the "ls" case.
8890         (tramp-get-ls-command-with-w-option): New defun.
8891         (tramp-do-file-attributes-with-ls)
8892         (tramp-do-directory-files-and-attributes-with-stat): Use it.
8894         * test/automated/tramp-tests.el
8895         (tramp-test31-special-characters-with-perl)
8896         (tramp-test31-special-characters-with-ls)
8897         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
8898         Suppress also readlink.
8900 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
8902         Fix cursor display when invisible text is at line beginning
8904         * src/xdisp.c (redisplay_window): When scrolling fails to show
8905         point, prefer using the desired matrix if possible for finding the
8906         fallback glyph row for displaying the cursor.  (Bug#22098)
8907         (row_containing_pos): Exit the loop as soon as we hit the first
8908         disabled glyph row.  Otherwise we risk accessing garbled data and
8909         departing to the no-no land.
8911 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
8913         Improve module interface when WIDE_EMACS_INT
8915         * src/emacs-module.c (plain_values): New constant.
8916         (module_nil): Now a constant.
8917         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
8918         (syms_of_module): Use if, not #ifdef, so that both sides are
8919         checked at compile-time, and so that GCC doesn’t complain
8920         about an unused var in the typical case.  Also, depend on
8921         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
8922         that WIDE_EMACS_INT implies !USE_LSB_TAG.
8923         (value_to_lisp_bits, lisp_to_value_bits): New functions.
8924         Sign-extend integers rather than zero-extending them, as small
8925         negative integers are more likely.
8926         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
8927         functions.
8928         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
8929         (mark_modules): Remove.  All uses removed.
8930         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
8931         to GCALIGNMENT.
8932         (syms_of_module): Check that module_nil converts to Qnil.
8933         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
8934         we prefer signed to unsigned when either will do.
8935         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
8936         a bit better for emacs-module.c.
8938 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
8940         Port mod-test to x86-64 GNU/Linux running 32-bit
8942         * modules/mod-test/test.el (mod-test-sum-test):
8943         Don’t attempt to match descriptions to operating systems.
8944         It didn’t work on Fedora x86-64 running a 32-bit executable,
8945         and it’s not worth the trouble anyway.
8946         Port to 32-bit platforms by removing an assumption about
8947         fixnum widths.
8949 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
8951         Fix auto-revert-tests.el when filenotify isn't used
8953         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
8954         Make it working also when filenotify isn't used.
8956 2015-12-05  Juri Linkov  <juri@linkov.net>
8958         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
8960         Let-bind isearch-regexp-function to nil.  (Bug#22097)
8962 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
8964         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
8966         (package--with-response-buffer): NOERROR and ERROR-FORM only
8967         handle connection errors.
8968         (bad-signature): New error type.
8969         (package--check-signature-content): Use it.
8970         (package--check-signature): Properly distinguish connection errors
8971         from bad-signature errors.  Do the check for
8972         `package-check-signature' `allow-unsigned' here instead of forcing
8973         the callbacks to do it.  Add a new argument, UNWIND.
8974         (package--download-one-archive, package-install-from-archive):
8975         Update usage of `package--check-signature'.
8977 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
8979         Fix Bug#22092.
8981         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
8982           Clean up inconsistent line endings. (Bug#22092)
8983           (icalendar--clean-up-line-endings): New.
8984         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
8985           for Bug#22092.
8987 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
8989         Document 'bookmark-set-no-overwrite'
8991         * doc/emacs/regs.texi (Bookmarks): Document the new command
8992         'bookmark-set-no-overwrite' and its keybinding.
8994 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
8996         Document new binding of 'mouse-buffer-menu'
8998         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
8999         now also on C-F10.
9001 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
9003         Initial documentation of dynamic modules
9005         * doc/lispref/loading.texi (Dynamic Modules): New section with
9006         initial documentation for dynamic modules.
9007         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
9008         detailed menu
9010         * etc/NEWS: Fix typos in dynamic modules' entry.
9012 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
9014         Remove copyright statements from trivial test files
9016 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
9018         Add "Preliminaries" section to etc/DEBUG
9020         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
9021         Most of the content was suggested by Phillip Lord
9022         <phillip.lord@russet.org.uk>.  Remove the section about debugging
9023         with the Visual Studio, as building Emacs with the Microsoft
9024         compilers is no longer supported.  Minor fixes in some other
9025         sections.
9027 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
9029         Improve parsing of version strings
9031         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
9032         (version-to-list): More helpful error messages.
9033         (version-to-list): ".5" is valid (update docstring).  Make
9034         "22.8X3" invalid, as the doc string says.
9036         * test/automated/subr-tests.el (ert-test-version-parsing): New
9037         tests for version string processing.
9039 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
9041         Fix documentation of 'undo' changes
9043         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
9044         English conventions for spelling and whitespace between sentences.
9046         * etc/NEWS: Fix wording and spelling of undo-related entries.
9047         Mark them as documented.
9049 2015-12-04  Glenn Morris  <rgm@gnu.org>
9051         * lisp/net/net-utils.el: Small improvements.
9053         (net-utils--executable-find-sbin): New function.
9054         (ifconfig-program): Check sbin directories.
9055         Fallback to "ip".  (Bug#22091)
9056         (ifconfig-program-options): Check the actual program in use.
9057         (arp-program): Check sbin directories.
9059 2015-12-04  Arash Esbati  <esbati@gmx.de>  (tiny change)
9061         Fix wrong-type-argument integer-or-marker-p nil error
9063         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
9064         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
9066 2015-12-04  Alan Mackenzie  <acm@muc.de>
9068         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
9070         Merge necessitated by a rebase operation.
9072 2015-12-04  Alan Mackenzie  <acm@muc.de>
9074         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
9076 2015-12-04  Alan Mackenzie  <acm@muc.de>
9078         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
9080         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
9081         Windows" and new @defun selected-window-group.
9082         (Window Start and End): Describe new &optional parameter GROUP and
9083         ...-group-function for window-start, window-end, set-window-start, and
9084         pos-visible-in-window-p.
9085         (Textual Scrolling) Describe the same for recenter.
9086         doc/lispref/positions.texi (Screen Lines): Describe the same for
9087         move-to-window-line.
9089         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
9090         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
9091         new optional parameter "group".  At the beginning of each, check whether the
9092         corresponding ...-group-function is set to a function, and if so execute this
9093         function in place of the normal processing.
9094         (syms_of_window): Define symbols for the six new variables below.
9095         (window-start-group-function, window-end-group-function)
9096         (set-window-start-group-function, recenter-group-function)
9097         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
9098         New permanent local buffer local variables.
9099         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
9100         Fpos_visible_in_window_p.
9102         lisp/window.el (selected-window-group-function): New permanent local buffer
9103         local variable.
9104         (selected-window-group): New function.
9106         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
9107         enable, kill them at mode disable.  Add/remove follow-after-change to/from
9108         after-change-functions.
9109         (follow-start-end-invalid): New variable.
9110         (follow-redisplay): Manipulate follow-start-end-invalid.
9111         (follow-after-change, follow-window-start, follow-window-end)
9112         (follow-set-window-start, follow-pos-visible-in-window-p)
9113         (follow-move-to-window-line, follow-sit-for): New functions.
9115         lisp/isearch.el (isearch-call-message): New macro.
9116         (isearch-update, with-isearch-suspended, isearch-del-char)
9117         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
9118         (with-isearch-suspended): Rearrange code such that isearch-call-message is
9119         invoked before point is moved.
9120         (isearch-message): Add comment about where point must be at function call.
9121         (isearch-search): Remove call to isearch-message.
9122         (isearch-lazy-highlight-window-group): New variable.
9123         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
9124         the battery of tests to ...
9125         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
9126         Note: (sit-for 0) is still called.
9127         (isearch-lazy-highlight-update): Check membership of
9128         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
9129         property.
9130         (isearch-update, isearch-done, isearch-string-out-of-window)
9131         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
9132         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
9133         (isearch-lazy-highlight-update): Call the six amended primitives (see
9134         src/window.c above) with the new `group' argument set to t, to cooperate
9135         with Follow Mode.
9137 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
9139         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
9141         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
9142         (ert--explain-format-atom, ert--explain-equal-rec)
9143         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
9144         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
9146 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
9148         * lisp/character-fold.el: Remove special case-folding support
9150         (character-fold-to-regexp): Remove special code for
9151         case-folding.  Char-fold search still respects the
9152         `case-fold-search' variable (i.e., f matches F).  This only
9153         removes the code that was added to ensure that f also matched
9154         all chars that F matched.  For instance, after this commit, f
9155         no longer matches 𝔽.
9157         This was necessary because the logic created a regexp with
9158         2^(length of the string) redundant paths.  So, when a very
9159         long string "almost" matched, Emacs took a very long time to
9160         figure out that it didn't.  This became particularly relevant
9161         because isearch's lazy-highlight does a search bounded by (1-
9162         match-end) (which, in most circumstances, is a search that
9163         almost matches).  A recipe for this can be found in bug#22090.
9165 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
9167         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
9168         Fixes (bug#21701)
9170 2015-12-04  Daiki Ueno  <ueno@gnu.org>
9172         lisp/gnus/qp.el: Don't replace "from " at bol
9174         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
9175         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
9177 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
9179         Externalize some symbols in undo-auto
9181          * doc/lispref/text.texi: Update symbols.
9182          * lisp/simple.el (undo-auto--amalgamate,
9183            undo-auto--current-boundary-timer): Make symbols public.
9184          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
9185            updated symbol.
9187 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
9189         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
9191 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
9193         Some error message improvements in tramp-sh.el
9195         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
9196         Suppress error messages for "mesg" and "biff" calls.
9197         (tramp-get-remote-path): Ignore errors when expanding
9198         `tramp-own-remote-path'.  Raise a warning instead.
9200 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
9202         Document 'nacl' value for 'system-type'
9204         * doc/lispref/os.texi (System Environment): Document the 'nacl'
9205         value of 'system-type'.
9207 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
9209         Document 'window-max-chars-per-line'
9211         * doc/lispref/windows.texi (Window Sizes): Document
9212         'window-max-chars-per-line'.
9214 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
9216         Fix some file headers for the purpose of `package--builtins'
9218         * lisp/emacs-lisp/cl-preloaded.el
9219         * lisp/emacs-lisp/eieio-compat.el
9220         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
9222         * lisp/ielm.el: Fix summary line.
9224 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
9226         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
9228         Reload any previously loaded package files before compiling
9229         the package (also reload the same files after compiling).
9230         This ensures that we have the most recent definitions during
9231         compilation, and avoids generating bad elc files when a macro
9232         changes and it is used in a different file from the one it's
9233         defined in.
9235 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
9237         * lisp/emacs-lisp/package.el: Refactor package activation code
9239         (package-activate): Move code that activates dependencies into
9240         package-activate-1.
9241         (package--load-files-for-activation): New function.
9242         (package-activate-1): Add code for (optionally) activating
9243         dependencies, and move file-loading code into
9244         `package--load-files-for-activation'.
9246 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
9248         Document new font-related functionality
9250         * doc/lispref/display.texi (Low-Level Font): Document
9251         'default-font-width', 'default-font-height', 'window-font-width',
9252         and 'window-font-height'.
9254         * etc/NEWS: Move entries for 'default-font-width',
9255         'default-font-height', 'window-font-width', and 'window-font-height'
9256         to their place and mark them documented.
9258 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
9260         Fix documentation and implementation of 'directory-name-p'
9262         * lisp/files.el (directory-name-p): Modify to recognize
9263         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
9264         accordingly.  Use '=', not char-equal, for comparison, as
9265         letter-case cannot possibly be an issue here.
9267         * doc/lispref/files.texi (Directory Names): Move the documentation
9268         of directory-name-p here from "Relative File Names".  Update the
9269         description per the changes in implementation.
9271         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
9272         place and mark it documented.
9274 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
9276         Minor copyedit in Emacs manual
9278         * doc/emacs/search.texi (Lax Search): Make wording about character
9279         folding by default less definitive.  (Bug#22043)
9281 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
9283         More emacs-module.c fixes for wide ints
9285         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
9286         unsigned data types to manipulate pointers, to avoid sign
9287         extension coming after us with a vengeance.
9289         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
9290         Emacs with wide ints that verify integer values near the critical
9291         value that requires us to switch to a cons cell.
9293 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
9295         Fix bug#22069 in cl-generic.el
9297         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
9298         not run thru `format'.
9300 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
9302         APPEND etags--xref-backend to xref-backend-functions
9304         * lisp/progmodes/xref.el (xref-backend-functions):
9305         Use APPEND when adding the default element
9306         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
9308 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
9310         More accurate documentation of lax whitespace matching
9312         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
9313         (word-search-backward, word-search-forward)
9314         (word-search-backward-lax, word-search-forward-lax): Mention in
9315         doc strings that toggling lax whitespace matching has no effect on
9316         these commands.
9318         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
9319         lax whitespace matching has no effect on these commands.
9321 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
9323         Fix emacs-module.c for wide ints
9325         * src/emacs-module.c (lisp_to_value): Compare the produced value
9326         with the original Lisp object, not with the one potentially
9327         converted into a Lisp_Cons.  Fixes assertion violations when
9328         working with integers larger than fit into a 32-bit value.
9330         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
9331         large integers, to test --with-wide-int.
9333 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
9335         Document 'directory-files-recursively'
9337         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
9338         the argument MATCH to REGEXP, to be more explicit about its form.
9340         * doc/lispref/files.texi (Contents of Directories): Improve the
9341         documentation of 'directory-files-recursively'.  Add
9342         cross-references.
9344         * etc/NEWS: Move the entry for 'directory-files-recursively' to
9345         its place and mark it documented.
9347 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
9349         Document 'inhibit-read-only' property
9351         * doc/lispref/text.texi (Special Properties): Describe the new
9352         'inhibit-read-only' text property.  Add cross-reference to where
9353         read-only buffers are described.
9354         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
9355         'inhibit-read-only' property exempts text from being read-only.
9356         Add cross-reference to "Special Properties".
9358         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
9359         its place and mark it documented.
9361 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
9363         * lisp/emacs-lisp/package.el: Update header comments
9365 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
9367         * lisp/character-fold.el: Add back multi-char matching
9369         (character-fold-to-regexp): Uncomment recently commented code
9370         and make the algorithm "dummer" by not checking every possible
9371         combination.  This will miss some possible matches, but it
9372         greatly reduces regexp size.
9374         * test/automated/character-fold-tests.el
9375         (character-fold--test-fold-to-regexp): Comment out test of
9376         functionality no longer supported.
9378 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
9380         * doc/emacs/ack.texi (Acknowledgments): Update.
9382 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
9384         Check `file-remote-p' over absolute files names in files.el
9386         * lisp/files.el (directory-files-recursively)
9387         (get-free-disk-space): Check `file-remote-p' over absolute files names.
9389 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
9391                 * src/lread.c (syms_of_lread): Doc fix.
9393 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
9395         Don't mistake certain JS method calls for keywords
9397         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
9398         Braceless keyword can't come after a period (bug#22063).
9400 2015-11-30  David Reitter  <david.reitter@gmail.com>
9402         Read frame_title_format from buffer-local variable for NS port
9404         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
9405         icon-title-format variables from buffer in appropriate window.
9406         (Bug#22048)
9408 2015-11-30  Juri Linkov  <juri@linkov.net>
9410         * lisp/replace.el (occur-engine): Count matches in empty lines.
9412         (Bug#22062)
9414 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
9416         * src/emacs-module.h: Fix finalizer typedef for C++11
9418         C++11 standard doesn't allow exception-specification in typedef.
9419         The workaround is to declare a dummy function prototype and use
9420         decltype on it.
9422 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
9424         Fix last change
9426         * src/emacs-module.c (lisp_to_value, value_to_lisp)
9427         [WIDE_EMACS_INT]: Avoid compiler warnings.
9429 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
9431         Rely on conservative stack scanning to find "emacs_value"s
9433         * src/emacs-module.c (struct emacs_value_tag)
9434         (struct emacs_value_frame, struct emacs_value_storage): Remove.
9435         (value_frame_size): Remove constant.
9436         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
9437         (lisp_to_value): Remove first arg.
9438         (module_nil): New constant.
9439         Use it instead of NULL when returning an emacs_value.
9440         (module_make_function): Adjust to new calling convention of
9441         Qinternal_module_call.
9442         (DEFUN): Receive args in an array rather than a list.
9443         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
9444         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
9445         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
9446         Adjust to new type of non_local_exit info.
9447         (ltv_mark) [WIDE_EMACS_INT]: New constant.
9448         (value_to_lisp, lisp_to_value): Rewrite.
9449         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
9450         (allocate_emacs_value): Remove function.
9451         (mark_modules): Gut it.
9452         (initialize_environment): Don't initialize storage any more.
9453         Keep the actual env object on Vmodule_environments.
9454         (finalize_environment): Don't finalize storage any more.
9455         (syms_of_module): Initialize ltv_mark and module_nil.
9457         * src/emacs-module.h (emacs_value): Make it more clear that this type
9458         is really opaque, including the fact that NULL may not be valid.
9460         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
9461         Don't assume that NULL is a valid emacs_value.
9463 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
9465         Yet another doc improvement for search commands
9467         * doc/emacs/search.texi (Word Search, Symbol Search)
9468         (Regexp Search): Document commands that don't support lax
9469         whitespace matching or character folding.
9470         (Nonincremental Search): Mention the search commands that can be
9471         invoked from the menu bar.
9473         * lisp/isearch.el (isearch-define-mode-toggle-word)
9474         (isearch-define-mode-toggle-symbol)
9475         (isearch-define-mode-toggle-character-fold): Note in the doc
9476         string that turning these on exits the regexp mode.
9477         (isearch-forward-regexp, isearch-forward-word)
9478         (isearch-forward-symbol, isearch-backward-regexp)
9479         (word-search-backward, word-search-forward)
9480         (word-search-backward-lax, word-search-forward-lax): State in the
9481         doc string which commands don't support character folding and/or
9482         lax-whitespace matching.
9484 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
9486         Run `window-size-change-functions' also when reading from minibuffer
9488         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
9489         also when reading from minibuffer.
9491 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
9493         Fix scrambling of html-rendered item buffers
9495         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
9496           scrambling of contents by wrapping call to html-renderer in
9497           save-selected-window.
9499 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
9501         Fix font typo in previous doc fix.
9503 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
9505         A bit more security doc, esp. file local vars
9507         * doc/emacs/emacs.texi (Top):
9508         * doc/emacs/misc.texi (Miscellaneous Commands):
9509         Refer to new Host Security section.
9510         (Host Security): New section.
9511         * doc/lispref/os.texi (Security Considerations):
9512         Mention file local variables.
9514 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
9516         * lisp/character-fold.el: Comment out branching code
9518         (character-fold-to-regexp): Comment out code that uses multi-char
9519         table.  The branching caused by this induces absurdly long regexps,
9520         up to 10k chars for as little as 25 input characters.
9522 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
9524         Spelling and grammar fixes
9526 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
9528         Make lisp-completion-at-point a wrapper instead of an alias
9530         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
9531         Turn into an obsolete wrapper around elisp-completion-at-point
9532         (bug#20455).
9534 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
9536         * lisp/isearch.el (isearch-search-fun-default): Nicer error
9538         message when the search fails.
9540 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
9542         Update menu-bar-goto-uses-etags-p for the current xref API
9544         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
9545         xref-backend-functions, instead of now-nonexistent
9546         xref-find-function.
9548 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
9550         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
9552 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
9554         * lisp/menu-bar.el: Use folding in searches
9556         (nonincremental-search-forward): Use `isearch-search-fun-default'
9557         to determine the search function.
9558         (nonincremental-search-backward)
9559         (nonincremental-repeat-search-forward)
9560         (nonincremental-repeat-search-backward): Use it.
9562 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
9564         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
9566 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
9568         * lisp/character-fold.el (character-fold-to-regexp): Be careful
9570         not to return huge regexps.
9572 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
9574         Improve documentation of string-collate-* functions
9576         * doc/lispref/strings.texi (Text Comparison): Improve wording and
9577         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
9579         * etc/NEWS: Move the entry of 'string-collate-equalp' and
9580         'string-collate-lessp' to "Lisp Changes" section and mark it as
9581         documented.
9583 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
9585         Document truncate-string-ellipsis
9587         * doc/lispref/display.texi (Size of Displayed Text): Document
9588         'truncate-string-ellipsis'.
9590         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
9591         (truncate-string-to-width): Mention in the doc string that the
9592         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
9594         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
9595         Changes" section.
9597 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
9599         Fix confusion wrt character folding in the Emacs manual
9601         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
9602         Document that invoking search-forward/backward and
9603         re-search-forward/backward supports only case folding, but not the
9604         rest of the lax-search features.  Reported by Mike Kupfer
9605         <m.kupfer@acm.org>.
9607 2015-11-29  Ken Brown  <kbrown@cornell.edu>
9609         Update mod-test-sum-test
9611         * modules/mod-test/test.el (mod-test-sum-test): Update to
9612         accommodate the lack of dladdr on Cygwin.
9614 2015-11-29  Alan Mackenzie  <acm@muc.de>
9616         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
9618         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
9619         to `funcall', (i) Output an error message; (ii) Generate code to signal a
9620         `wrong-number-of-arguments' error.
9622 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
9624         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
9626 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
9628         * lisp/character-fold.el (character-fold-to-regexp)
9630         Warn about using long strings.
9632         * test/automated/character-fold-tests.el
9633         (character-fold--test-lax-whitespace)
9634         (character-fold--test-consistency): Reduce string size for tests.
9636 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
9638         Document renaming of x-select-enable-* variables
9640         * doc/emacs/killing.texi (Clipboard): Rename
9641         x-select-enable-clipboard to select-enable-clipboard and
9642         x-select-enable-primary to select-enable-primary.  Update index
9643         entries.
9645         * etc/NEWS: Mark entry as documented.
9647 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
9649         Document the shorthand hints displayed by M-x
9651         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
9652         suggest-key-bindings.  Document the shorthand hints for commands
9653         that have no key bindings.  Document that M-x completion ignores
9654         obsolete commands.
9656         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
9657         documented.
9659 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
9661         Update docs of character folding
9663         * doc/emacs/search.texi (Lax Search): Update the description of
9664         character folding for the latest changes.
9666 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
9668         * lisp/character-fold.el: Also play nice with case-folding
9670         (character-fold-to-regexp): Take `case-fold-search' into account.
9672 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
9674         * lisp/character-fold.el: Add support for multi-char matches
9676         (character-fold-table): Now has an extra-slot. This is a second
9677         char-table that holds multi-character matches.  See docstring for
9678         details.
9679         (character-fold-to-regexp): Can build branching regexps when a
9680         character's entry the extra slot of `character-fold-table' matches the
9681         characters that succeed it.
9683 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
9685         * lisp/character-fold.el: Code simplifications
9687         (character-fold-table): Reduce the scope of a variable.
9688         (character-fold-to-regexp): Change logic to work directly on the
9689         input string.  It's a little easier to understand, probably
9690         faster, and sets us up for implementing multi-char matches.
9692         * test/automated/character-fold-tests.el
9693         (character-fold--test-fold-to-regexp): New test.
9695 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
9697         Document changes in "C-h l"
9699         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
9701         * etc/NEWS: mark "C-h l" changes as documented.
9703 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
9705         Finalize documentation of 'custom-prompt-customize-unsaved-options'
9707         * doc/emacs/custom.texi (Saving Customizations): Index the new
9708         function 'custom-prompt-customize-unsaved-options'.
9710         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
9711         is useful.
9713 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
9715         Document 'comment-line'
9717         * doc/emacs/programs.texi (Comment Commands): Document
9718         'comment-line'.
9720         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
9722 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
9724         Document new checkdoc features
9726         * doc/lispref/tips.texi (Tips, Library Headers): Document the
9727         keyword-checking features of checkdoc and the commands
9728         'checkdoc-file' and 'checkdoc-current-buffer'.
9730         * etc/NEWS: Move the checkdoc-related entries to their own
9731         section.
9733 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
9735         Simplify the prologue of emacs-module.c functions
9737         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
9738         (module_make_global_ref)
9739         (module_free_global_ref, module_make_function, module_funcall)
9740         (module_intern, module_type_of, module_extract_integer)
9741         (module_make_integer, module_extract_float, module_make_float)
9742         (module_copy_string_contents, module_make_string)
9743         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
9744         (module_get_user_finalizer, module_set_user_finalizer)
9745         (module_vec_set, module_vec_get, module_vec_size): Use new helper
9746         macro MODULE_FUNCTION_BEGIN.
9748 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
9750         Don't reject module calls with no arguments
9752         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
9754 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
9756         Make module-call be visible from Lisp
9758         * src/emacs-module.c (module_make_function): Use internal--module-call.
9759         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
9760         checks.
9761         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
9762         defsubr internal--module-call.
9764 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
9766         Add etags tests for the recent Lua-related bugfix
9768         * test/etags/lua-src/test.lua: New file, tests the issues raised
9769         by bug#21934.
9770         * test/etags/Makefile (LUASRC): Add test.lua.
9771         * test/etags/ETAGS.good_1:
9772         * test/etags/ETAGS.good_2:
9773         * test/etags/ETAGS.good_3:
9774         * test/etags/ETAGS.good_4:
9775         * test/etags/ETAGS.good_5:
9776         * test/etags/ETAGS.good_6:
9777         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
9778         regression fix, resolved around 25 May 2015, required changes to
9779         the "good" ETAGS files.
9781 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
9783         Fix Lua tags when a function name includes '.' or ':'
9785         * lib-src/etags.c (Lua_functions): Add a tag for the last element
9786         of a function name after a dot or a colon.  (Bug#21934)
9788 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
9790         Improve documentation of search and replace commands
9792         * doc/emacs/search.texi (Replacement and Lax Matches): Document
9793         which commands are affected by 'replace-character-fold'.
9794         (Lax Search): Add a cross reference to "Replacement and Lax
9795         Matches".  Improve wording.  Fix lost extra whitespace.
9796         (Search Customizations): Improve wording.  (Bug#22036)
9797         See also comments in
9798         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
9800         * lisp/replace.el (query-replace, query-replace-regexp)
9801         (query-replace-regexp-eval, replace-string, replace-regexp):
9802         Mention 'replace-character-fold' in the doc strings.
9804 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
9806         Fix minor problems found by static checking
9808         * src/undo.c (prepare_record): Add proper prototype for C.
9810 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
9812         * src/emacs-module.c (struct env_storage): Delete
9814         (struct emacs_runtime_private): Keep an emacs_env instead.
9815         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
9816         (initialize_environment): Split the arg in two.  Adjust all callers.
9817         Only store the private part in Vmodule_environments.
9818         (finalize_environment): Change the arg to only be the private env.
9819         Adjust all callers.
9821 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
9823         Improve documentation of 'replace-character-fold'
9825         * lisp/replace.el (replace-character-fold): Clarify which commands
9826         are affected by this variable.
9828 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
9830         Autoload etags when using its xref backend
9832         * lisp/progmodes/xref.el (xref--etags-backend):
9833         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
9834         (Bug#22026)
9836 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
9838         * lisp/character-fold.el: Allow complex chars to match their decomposition
9840         (character-fold-table): When a character's decomposition does not
9841         involve a formatting tag (i.e., if it has an "exact" description via
9842         other characters), then this character is allowed to match the
9843         decomposition.
9845 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
9847         * lisp/character-fold.el: More descriptive variable names
9849         (character-fold-table): Rename a lot of the lexical variables to
9850         make the code easier to read.
9852 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
9854         * lisp/isearch.el: Ensure we still support `isearch-new-word'
9856         (isearch-new-regexp-function): Define variable.
9857         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
9859 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
9861         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
9863 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
9865         * test/lisp/abbrev-tests.el: Define more tests
9867         (abbrev-table-name-test, kill-all-abbrevs-test)
9868         (clear-abbrev-table-test): New tests.
9870 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
9872         Add module tests for wrong-type-argument
9874         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
9875         wrong-type-argument.
9877 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
9879         Improve handling of signals and 'throw' in modules
9881         * src/emacs-module.c: Add commentary explaining how to write
9882         functions in this file.
9883         (module_make_global_ref, module_free_global_ref)
9884         (module_non_local_exit_signal, module_non_local_exit_throw)
9885         (module_make_function, module_funcall, module_intern)
9886         (module_type_of, module_is_not_nil, module_eq)
9887         (module_extract_integer, module_make_integer)
9888         (module_extract_float, module_make_float)
9889         (module_copy_string_contents, module_make_string)
9890         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
9891         (module_get_user_finalizer, module_set_user_finalizer)
9892         (module_vec_set, module_vec_get, module_vec_size)
9893         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
9894         Do nothing and return with failure indication immediately, if some
9895         previous module call signaled an error or wants to throw.  See
9896         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
9897         for the relevant discussions.
9899 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
9901         Add ':version' tag to 'checkdoc-package-keywords-flag'
9903         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
9904         Add a ':version' tag.
9906 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
9908         Improve documentation of 'eval-buffer' and 'eval-region'
9910         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
9912         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
9913         "accessible portion of buffer".
9915 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
9917         Unbreak the Cygwin w32 build
9919         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
9920         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
9922 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
9924         Improve commentary in character-fold.el
9926         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
9927         description from commit log message to comments.  (Bug#22019)
9929 2015-11-26  Alan Mackenzie  <acm@muc.de>
9931         Byte Compiler: generate code to adjust stack count after call to `signal'.
9933         Corrects change from earlier today.
9935         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
9936         `byte-compile--for-effect' as argument to `byte-compile-form'.
9938 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
9940         Improve commentary of prepare_to_modify_buffer_1
9942         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
9943         that this function runs Lisp.  Suggested by Richard Stallman
9944         <rms@gnu.org>.
9946 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
9948         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
9950 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
9952         Fix regression after merge.
9954          * src/undo.c (prepare_record): Remove call to run_undoable_change.
9956 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
9958         After delete, record point location in undo.
9960         Addresses Bug #21968.
9962                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
9963                 better support intercalating calls.
9964                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
9965                 point and current buffer before each command.
9966                 * src/undo.c (record_point): Now only record the point.
9967                 * src/undo.c (prepare_record): Functionality removed form
9968                 record_point.
9969                 * src/undo.c (record_delete): Check if point needs recording.
9970                 * src/undo.c (undo-boundary): Record value of point before each
9971                 boundary.
9972                 * test/automated/simple-test.el: New tests.
9974         Conflicts:
9975                 src/undo.c
9977 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
9979         Fix compiler warnings in w32.c
9981         * src/w32.c (sys_socket): In case of error, use -1 as return
9982         value, not INVALID_SOCKET, which causes compiler warnings.
9983         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
9984         to the appropriate function signature, to avoid compiler errors.
9985         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
9987 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
9989         Check if the file exists on disk before producing the revert diff
9991         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
9992         exists on disk (bug#20558).
9994 2015-11-26  Alan Mackenzie  <acm@muc.de>
9996         Byte compiler: on setq with an odd number of arguments, generate a `signal'
9998         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
9999         it has an odd number of arguments, to allow bytecomp to handle the error.
10001         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
10002         odd number of arguments, generate a `signal' instead of the normal code.
10004 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
10006         Use find-tag-default for xref-backend-identifier-at-point
10008         * lisp/progmodes/etags.el (find-tag-tag)
10009         (tags-completion-at-point-function): Extract common code as
10010         find-tag--default.
10011         (xref-backend-identifier-at-point): Define in terms of the new
10012         function.
10014 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
10016         * src/undo.c (record_property_change): Remove now-unused local.
10018 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
10020         run_undoable_changes now called from insdel.
10022         The original calls from inside undo.c are not always at a safe position
10023         to call lisp, as they originate in varied positions within insdel.c.
10024         Calling them directly from prepare_to_modify_buffer_1 ensures that they
10025         are always run at the same point.
10027          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
10028          and symbol used.
10029          * src/insdel.c (run_undoable_changes): Add function and symbol.
10031 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
10033         Improve and update documentation of search commands
10035         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
10036         all references changed.  Move the description of lax-whitespace
10037         here.  Add description of the new character folding features and
10038         additional customizable options.
10039         (Isearch Yank): Move before "Error in Search".
10040         (Basic Isearch): Improve wording.  Add index entries.  Add short
10041         description of how to abandon search, making this subsection a
10042         complete introduction to search basics.
10043         (Repeat Isearch): Add index entries.  Describe additional
10044         customizable options.  Describe mouse clicks.
10045         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
10046         area.  Describe more customizable options.
10047         (Error in Isearch): Add index entries.
10048         (Special Isearch): Move actual description of some isearch
10049         commands to other sections, leaving here just the summary of the
10050         commands.  Add command that toggles character folding.  Describe
10051         commands, like "C-h C-h", that were previously omitted for some
10052         reason.
10053         (Not Exiting Isearch): Describe search-exit-option.  Add index
10054         entries.
10055         (Word Search): Describe eww-search-word and eww-search-prefix.
10056         (Symbol Search): Add index entries.
10057         (Regexp Search): Describe regexp-search-ring-max.
10058         (Replacement and Lax Matches): Renamed from "Replacement and
10059         Case"; all references changed.  Describe lax-whitespace matching
10060         in replace commands and related options.  Describe character
10061         folding in replace commands and related options.
10062         (Query Replace): Describe query-replace-from-to-separator and the
10063         new history features.  Add index entries for highlighted text.
10064         Describe query-replace-skip-read-only.  Describe more keys
10065         accepted by query-replace.
10066         (Other Repeating Search): More index entries for Occur.  Describe
10067         list-matching-lines-default-context-lines.
10068         (Search Customizations): New section, documents customizable
10069         options that were not documented until now.
10070         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
10071         "Character Folding".
10073         * etc/NEWS: Move search- and replace-related entries to a single
10074         parent section.
10076         * lisp/replace.el (query-replace-show-replacement): Doc fix.
10077         * lisp/isearch.el (search-nonincremental-instead)
10078         (isearch-hide-immediately): Doc fixes.
10080 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
10082         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
10084         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
10085         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
10086         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
10088 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
10090         Fix module_format_fun_env when dynlib_addr fails
10092         * src/emacs-module.c (module_format_fun_env):
10093         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
10094         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
10096 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
10098         Disambiguate variable help a bit better
10100         * lisp/help-fns.el (describe-variable): Quote the
10101         variable’s value if it is a symbol other than t or nil.
10102         See: T.V Raman in:
10103         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
10105 2015-11-24  Dmitry Gutov  <dgutov@yandex.ru>
10107         Pass SVN commit message through log-edit-extract-headers
10109         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
10110         log-edit-extract-headers (bug#18954).
10112 2015-11-24  Alan Mackenzie  <acm@muc.de>
10114         CC Mode: Eliminate compiler warning messages.
10116         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
10117         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
10118         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
10119         (c-awk-set-syntax-table-properties): Clarify comments about
10120         `font-lock-syntactic-keywords'.
10122         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
10123         of this before the real (interpreted) one, to satisfy the byte compiler.
10125 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
10127         Extend the test suite for json.el
10129         * lisp/json.el (json-plist-p): Clarify docstring.
10131         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
10132         macro.
10133         (test-json-join, test-json-alist-p)
10134         (test-json-plist-p, test-json-advance, test-json-peek)
10135         (test-json-pop, test-json-skip-whitespace)
10136         (test-json-read-keyword, test-json-encode-keyword)
10137         (test-json-read-number, test-json-encode-number)
10138         (test-json-read-escaped-char, test-json-read-string)
10139         (test-json-encode-string, test-json-encode-key)
10140         (test-json-new-object, test-json-add-to-object)
10141         (test-json-read-object, test-json-encode-list)
10142         (test-json-read-array, test-json-encode-array)
10143         (test-json-read, test-json-read-from-string)
10144         (test-json-encode): New tests.
10145         (json-read-simple-alist): Merged into `test-json-read-object'.
10146         (json-encode-string-with-special-chars): Merged into
10147         `test-json-encode-string'.
10148         (json-read-string-with-special-chars): Split into
10149         `test-json-encode-string' and `test-json-read-from-string'.
10151 2015-11-24  Anders Lindgren  <andlind@gmail.com>
10153         Fixed bug#18283: Enable applescript in NextStep.
10155         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
10157 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
10159         Allow completion on dynamic module files in load-library
10161         * lisp/files.el (load-library): Bind completion-ignored-extensions
10162         to nil, to allow completion on dynamic modules typed as file
10163         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
10165 2015-11-24  Alan Mackenzie  <acm@muc.de>
10167         CC Mode: eliminate almost all byte compilation warnings
10169         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
10170         (cc-require): Remove the crude hack that saved and restored
10171         byte-compile-noruntime-functions.
10172         (cc-conditional-require, cc-conditional-require-after-load): New macros.
10174         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
10175         cc-fix.el using the new macros in cc-bytecomp.el.
10177         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
10178         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
10179         forms to remove the superflous quotes.
10181 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
10183         Add one more mod-test test
10185         * modules/mod-test/test.el (mod-test-sum-test): Test the error
10186         signaled when the function is invoked with a wrong number of
10187         arguments.
10189 2015-11-24  Philipp Stephani  <phst@google.com>
10191         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
10193 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
10195         Implement dynlib_addr for MS-Windows
10197         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
10198         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
10199         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
10200         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
10201         if undefined.
10202         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
10203         zero.
10204         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
10205         the full file name of the module for a given address.
10207 2015-11-24  Alan Mackenzie  <acm@muc.de>
10209         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
10211 2015-11-24  Alan Mackenzie  <acm@muc.de>
10213         Squashed commit of the following:
10215         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
10216         Author: Alan Mackenzie <acm@muc.de>
10217         Date:   Tue Nov 24 16:50:09 2015 +0000
10219             Byte compile: minor amendments.
10221             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
10222             add a comment to explain the binding of variables around a subsidiary
10223             compilation.
10224             (byte-compile-new-defuns): Amend the doc string.
10226         commit c537bfed1dda1593d218956ff00c6105a3ff0316
10227         Author: Alan Mackenzie <acm@muc.de>
10228         Date:   Sat Nov 21 18:43:57 2015 +0000
10230             Byte compiler: fix spurious warnings "might not be defined at runtime".
10232             Also initialize byte-compile-noruntime-functions between runs.
10234             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
10235             (byte-compile-initial-macro-environment): For eval-when-compile: bind
10236             byte-compile-unresolved-functions and byte-compile-new-defuns around
10237             byte-compile-top-level, to prevent spurious entries being made.
10238             (byte-compile-warn-about-unresolved-functions): Check whether function is
10239             in byte-compile-new-defuns before emitting a warning about it.
10240             (byte-compile-from-buffer): Initialize new variable and
10241             byte-compile-noruntime-functions to nil.
10242             (byte-compile-file-form-require): record all new functions defined by a
10243             `require' in byte-compile-new-defuns.
10244             (byte-compile-file-form-defmumble): record the new alias in
10245             byte-compile-new-defuns.
10247 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
10249         Fix crash at startup related to GC of font entities
10251         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
10252         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
10253         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
10254         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
10255         Don't ifdef away font cache compaction on NT_GUI, as the problems
10256         which led to that seem to have been solved.
10257         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
10258         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
10259         cousins.  (Bug#21999)
10261 2015-11-24  Alan Mackenzie  <acm@muc.de>
10263         Byte compile: Output an error, not a warning, for odd number of args to setq
10265         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
10267 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
10269         Fix kbd_buffer iteration loop in readable_events
10271         * src/keyboard.c (readable_events): Wrap the event pointer back to the
10272         start of the kbd_buffer array inside the top of the loop instead of
10273         right before checking the loop condition, since kbd_fetch_ptr and
10274         kbd_store_ptr point past the end of the array to mean that element 0
10275         is next. (bug#21935)
10277 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
10279         Improve text-quoting-style doc again
10281         * doc/lispref/help.texi (Keys in Documentation):
10282         Omit overkill discussion of ‘setq’.  Mention Emacs versions
10283         where ‘grave’ style was standard.
10285 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
10287         Improve text-quoting-style doc
10289 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
10291         Simplify module_make_function
10293         * src/emacs-module.c (module_make_function):
10294         Simplify by calling build_unibyte_string.
10296 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
10298         Port better to FreeBSD’s dlfunc vs dlsym
10300         This avoids warnings when converting between void * and
10301         function pointers, which strict C11 does not allow.
10302         * configure.ac (dlfunc): Check for existence.
10303         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
10304         (dynlib_func): New function.
10305         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
10306         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
10307         dynlib_sym, for function pointers.
10309 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
10311         Simplify use of emacs_finalizer_function type
10313         * src/emacs-module.h (emacs_finalizer_function):
10314         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
10315         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
10317 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
10319         module_format_fun_env fixes
10321         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
10322         * src/emacs-module.c (module_format_fun_env):
10323         Convert path and sym to UTF-8.
10324         Don’t use VLAs, as the C11 standard says they’re optional,
10325         and anyway they can cause core dumps with large allocations.
10326         Use exprintf rather than snprintf, as exprintf handles arbitrarily
10327         long strings.  Simplify the code a bit.
10329 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
10331         Don't use package-user-dir in elisp-library-roots if it's not bound
10333         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
10334         use package-user-dir if it's not bound (bug#19759).
10336 2015-11-23  Anders Lindgren  <andlind@gmail.com>
10338         New visible-bell for NextStep (OS X El Capitan compatible).
10340         Instead of inverting a rectangle in the middle of the frame, use
10341         the standard NextStep image "caution", represented using an
10342         warning sign with an exclamation mark.  (Bug#21662)
10344         Implemented based on a suggestion drafted by Mustafa Kocaturk.
10346         * src/nsterm.m (EmacsBell): New class for managing the caution
10347         image.  Support multiple active bells, the image is removed once
10348         all bells have timed out.
10349         (ns_timeout): Removed, no longer used.
10350         (ns_ring_bell): Reimplemented to use EmacsBell.
10352 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
10354         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
10356         (remove-function): Ditto. (Bug#20376)
10358 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
10360         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
10362 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
10364         Improve how non-ASCII strings are accepted from modules
10366         * src/emacs-module.c (module_make_function, module_make_string):
10367         Build a unibyte Lisp string and then decode it by UTF-8, instead
10368         of building a multibyte string without decoding.  This is more
10369         tolerant to deviations from UTF-8.
10371 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
10373         Port recent module changes to pickier compilers
10375         * src/emacs-module.c (module_make_function)
10376         (module_make_string): Add casts to fix pointer signedness issues.
10378 2015-11-23  Philipp Stephani  <phst@google.com>
10380         Fix how strings are accepted from modules
10382         * emacs-module.c (module_make_function, module_make_string): Use
10383         make_multibyte_string.
10384         (module_copy_string_contents): Encode before reading the byte
10385         size.  Return false if and only if an error occurred.
10387 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
10389         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
10391 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
10393         Add the tamil-dvorak input method
10395         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
10397         * etc/NEWS: Mention the new input method.
10399 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
10401         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
10403         * src/frame.c (adjust_frame_size): Don't set
10404         FRAME_WINDOW_SIZES_CHANGED here ...
10405         * src/window.c (resize_frame_windows): ... but here, as suggested
10406         by Stefan Monnier.  Also remove some dead code along the way.
10408 2015-11-23  Alan Mackenzie  <acm@muc.de>
10410         * /etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
10412 2015-11-23  Alan Mackenzie  <acm@muc.de>
10414         Signal an error when `setf' gets an odd number of arguments.
10416         * lisp/emacs-lisp/gv.el (setf): Amend.
10418 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
10420         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
10422 2015-11-23  Alan Mackenzie  <acm@muc.de>
10424         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
10426 2015-11-23  Alan Mackenzie  <acm@muc.de>
10428         Expunge occurrences of `setq' with an odd number of arguments.
10430         * lisp/apropos.el (apropos-documentation):
10431         * lisp/obsolete/complete.el (PC-include-file-all-completions):
10432         * lisp/progmodes/compile.el (compilation-goto-locus):
10433         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
10434         Insert missing nil at end of `setq' forms.
10436         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
10437         erroneous trailing variable name from a setq, thus allowing a compilation
10438         properly to track functions not defined at runtime.
10440 2015-11-23  John Wiegley  <johnw@newartisans.com>
10442         Add a note about a questionable use of bool in xdisp.c
10444 2015-11-23  Alan Mackenzie  <acm@muc.de>
10446         Issue a warning from the byte compiler on a malformed `setq' form.
10448         Partly fixes bug#20241.
10449         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
10450         `setq' form with an odd number of arguments is compiled.
10452 2015-11-23  Alan Mackenzie  <acm@muc.de>
10454         Don't let cconv_convert insert a nil argument into a `setq' form.
10456         Fixes bug#21983.
10457         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
10458         argument into a `setq' when there're an odd number of args.  This enables the
10459         byte compiler to issue a message in this case.
10461 2015-11-23  Alan Mackenzie  <acm@muc.de>
10463         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
10465         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
10466         (syms_of_eval): Add a DEFSYM for Qsetq.
10468 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
10470         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
10472         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
10474 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
10476         Add EUDC BBDB 3 entry in NEWS
10478         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
10480 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
10482         Improve EUDC to BBDB 3 export
10484         * eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
10485         entry to single item.  Add company conversion.
10486         * eudc-export.el (eudc-bbdbify-company): New function.
10487         (bbdb-parse-phone): Declare function.
10488         (eudc-bbdbify-phone): Add BBDB 3 support.
10489         (Bug#21971)
10491 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
10493         Add BBDB 3 support for EUDC export
10495         * eudc.el: Add bbdb-version defvar.
10496         (eudc--using-bbdb-3-or-newer-p): New function.
10497         * eudc-export.el (eudc-create-bbdb-record): Add support for
10498         bbdb-create-internal argument list changes introduced in BBDB 3.
10499         * eudcb-bbdb.el: Remove bbdb-version defvar.
10500         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
10501         (Bug#21971)
10503 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
10505         Allow loading modules by 'load-file'
10507         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
10508         2nd arg, to avoid the "binding stack not balanced" error.
10509         (syms_of_lread) <module-file-suffix>: New Lisp variable.
10511         * lisp/files.el (module-file-suffix): Declare.
10512         (load-file): Remove 'module-file-suffix' from
10513         'completion-ignored-extensions', to allow completion on modules.
10515         * etc/NEWS: Mention 'module-file-suffix'.
10517 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
10519         Fix unoptimized builds
10521         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
10522         builds.
10524 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
10526         Work around the asynchronous-empty-diff problem
10528         * lisp/vc/vc-rcs.el (vc-rcs-diff):
10529         * lisp/vc/vc-mtn.el (vc-mtn-diff):
10530         * lisp/vc/vc-hg.el (vc-hg-diff):
10531         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
10532         do a synchronous process call (bug#21969).
10534 2015-11-21  Karl Fogel  <kfogel@red-bean.com>
10536         Finish excising electric indent from `open-line'
10538         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
10540         * test/automated/simple-test.el (open-line-indent, open-line-hook):
10541           Adjust accordingly.
10543         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
10544         (git commit c59353896) started.  It turns out that having INTERACTIVE
10545         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
10546         still had the electric indent behavior, as `post-self-insert-hook'
10547         normally contains `electric-indent-post-self-insert-function' ever
10548         since `electric-indent-mode' has been on by default.  Tracing the code
10549         change in `open-line' is mildly twisty, because Artur Malabarba's
10550         earliest two commits of 24 Oct 2015 first removed the `interactive'
10551         form entirely (git commit 6939896e2) and then restored it with the new
10552         extra "p" already added (git commit bd4f04f86), such that there is no
10553         single-commit diff in which one sees the second "p" appear.  Thus this
10554         change is effectively a reversion of parts of each of those commits.
10556         This could close bug#21884, at least until further discussion.
10558 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
10560         Adhere closer to the "implicit tag name" definition
10562         * lisp/progmodes/etags.el (etags-tags-completion-table):
10563         Adhere closer to the "implicit tag name" definition.  Simplify
10564         the regexp.  Search for the explicit tag name first, and when
10565         not found, search locally for the implicit one.  (Bug#21934)
10567 2015-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
10569         Unrevert most of regexp reentrancy abort patch
10571         The problem was in:
10572           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
10573         which is hence not unreverted.
10574         The rest is:
10575         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
10576         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
10577         All callers in regex.c changed back to the _FAST versions.
10579         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
10580         propertization in backward-sexp.
10582 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
10584         Revert regexp reentrancy abort patch
10586         Although the patch does fix Bug#21688 and prevents a core dump,
10587         it also makes the message-mode-propertize test fail; see:
10588         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
10589         Perhaps someone else can come up with a better fix some day.
10590         * src/syntax.c (update_syntax_table_forward):
10591         Propertize even when truncated.
10592         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
10593         (UPDATE_SYNTAX_TABLE_FAST): Remove.
10594         All callers changed back to the non-_FAST versions.
10596 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
10598         Add a few safety checks when ENABLE_CHECKING
10600         This was motivated by the recent addition of module code,
10601         which added some ENABLE_CHECKING-enabled checks that are
10602         useful elsewhere too.
10603         * src/alloc.c (compact_font_cache_entry):
10604         * src/fns.c (sweep_weak_table):
10605         * src/lread.c (oblookup):
10606         Use gc_asize rather than doing it by hand.
10607         * src/emacs-module.c (module_make_global_ref)
10608         (module_free_global_ref, module_vec_size):
10609         Omit assertions that lisp.h now checks.
10610         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
10611         check that the result is nonnegative.  Use eassume, as this
10612         info can help a bit when optimizing production code.
10613         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
10614         to be consistent with the USE_LSB_TAG case.
10615         (gc_asize): New function, when ASIZE is needed in the gc.
10616         (gc_aset): Use it.
10617         (HASH_TABLE_P): Move definition up, so that it can be used ...
10618         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
10620 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
10622         Simplify recording of main thread's ID on MS-Windows
10624         * src/w32term.c (w32_initialize):
10625         * src/w32console.c (initialize_w32_display):
10626         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
10627         ID independently for each type of session (GUI, TTY, batch).
10628         * src/w32term.c (w32_init_main_thread): New function, records the
10629         main thread's thread ID.
10630         * src/w32term.h: Add prototype for w32_init_main_thread.
10631         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
10633         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
10634         main_thread, for consistency with other threading libraries.  All
10635         users changed.  Include w32term.h.
10636         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
10637         make sure the main thread is alive, as we hold a handle on it
10638         opened by w32_init_main_thread.
10639         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
10640         w32_init_main_thread, instead of calling the requisite APIs once
10641         more.
10643 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
10645         Call 'window-size-change-functions' for mini-windows
10647         * src/window.c (grow_mini_window, shrink_mini_window): Set the
10648         frame's 'window_sizes_changed' flag.
10649         * src/xdisp.c (redisplay_internal): Call the hooks on
10650         'window-size-change-functions' if the call to 'echo_area_display'
10651         sets the frame's 'window_sizes_changed' flag.
10652         (syms_of_xdisp) <window-size-change-functions>:
10653         Update doc string to indicate the mini-window resizes trigger a
10654         call to the hooks, and don't promise that will happen "before
10655         redisplay".  (Bug#19576, Bug#21333)
10657         * doc/lispref/windows.texi (Window Hooks): Update the description
10658         of 'window-size-change-functions'.
10660 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
10662         Improve documentation of dynamic modules
10664         * src/fns.c (Frequire): Doc fix to include the dynamic module
10665         support.
10666         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
10667         dynamic module support.
10668         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
10669         wrt the MUST-SUFFIX argument.
10671         * etc/NEWS: Expand documentation of dynamically loaded modules.
10673 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
10675         Initial documentation for dynamic modules
10677         * etc/NEWS: Mention the new support for dynamically loaded modules.
10679 2015-11-20  Dmitry Gutov  <dgutov@yandex.ru>
10681         Add xref--etags-backend to xref-backing-functions using add-hook
10683         * lisp/progmodes/xref.el (xref-backend-functions): Move the
10684         default value into a separate `add-hook' call (bug#21964).
10686         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
10687         Don't declare the xref-backend-functions variable.
10688         It doesn't make any difference.
10690 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
10692         Fix double-decrement bug when freeing global refs
10694         * src/emacs-module.c (module_free_global_ref): Add a FIXME
10695         comment about error reporting.  Fix a recently-introduced typo
10696         that double-decremented the refcount.
10698 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
10700         Declare emacs_module_init in the module API
10702         * src/emacs-module.h (emacs_module_init): New decl.
10703         Without it, GCC might complain about a module that defines
10704         emacs_module_init without using it.  This also checks the
10705         API better.
10707 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
10709         Fix module test to use ptrdiff_t nargs too
10711         * modules/mod-test/mod-test.c (Fmod_test_return_t)
10712         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
10713         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
10714         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
10715         (Fmod_test_userptr_get, Fmod_test_vector_fill)
10716         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
10717         (finalizer): Remove; no longer used.
10719 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
10721         Fix reindent-introduced typo in module code
10723         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
10724         introduced while reindenting the code earlier, and add a
10725         comment explaining the unusual use of do-while here.
10727 2015-11-20  Anders Lindgren  <andlind@gmail.com>
10729         Fixed bug#19576: `write-file' saves wrong buffer.
10731         If a function on the hook `window-size-change-functions' doesn't
10732         restore the current buffer, functions that save and restore the
10733         current window configuration (like `y-or-no-p') could silently
10734         change the current buffer.  When `write-file' asked the user
10735         confirmation to overwrite a file, `y-or-no-p' changed the current
10736         buffer, and the wrong buffer was saved to the file.
10738         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
10739         using the `norecord' parameter.
10740         (follow-window-size-change): Restore current buffer. Call
10741         `select-frame' using the `norecord' parameter. Cleanup.
10743 2015-11-20  John Wiegley  <johnw@newartisans.com>
10745         Correct a documentation error in frames.texi
10747 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
10749         * lisp/cedet/mode-local.el: Delete obsolete comment
10751 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
10753         Module function arg counts are ptrdiff_t, not int
10755         * src/emacs-module.c (struct module_fun_env)
10756         (module_make_function, module_funcall, Fmodule_call):
10757         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
10758         Use ptrdiff_t, not int, for arg counts.
10759         * src/emacs-module.c (module_make_function): Don’t bother
10760         checking arity against MOST_POSITIVE_FIXNUM, as that’s
10761         unnecessary here.  Make the checking clearer by negating it.
10762         (module_make_function, Fmodule_call): No need to use xzalloc
10763         since the storage doesn’t need to be cleared.
10764         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
10765         for it, and many implementations are buggy with large VLAs anyway.
10766         Use SAFE_ALLOCA_LISP instead.
10767         (module_vec_set): Don’t crash if i < 0.
10768         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
10769         (module_vec_set, module_vec_get): Do fixnum checks only when
10770         i is out of array bounds, for efficiency in the usual case.
10771         (Fmodule_load): Simplify fixnum range check.
10772         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
10773         integer overflow in array allocation size.
10775 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
10777         Minor improvements in module test
10779         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
10780         about missing prototype of malloc.
10781         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
10782         compiler warnings.
10784 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
10786         Improve MS-Windows implementation in dynlib.c
10788         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
10789         No need to include windows.h, as w32.h already does that.
10790         <dynlib_last_err>: New static variable.
10791         (dynlib_reset_last_error): New function.
10792         (dynlib_open): Convert forward slashes to backslashes.  Convert
10793         file names from UTF-8 to either UTF-16 or the current ANSI
10794         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
10795         argument is NULL, return a handle to the main module, like
10796         'dlopen' does.  Record the error, if any, for use by dynlib_error.
10797         (dynlib_sym): Check the handle for validity. Record the error, if
10798         any, for use by dynlib_error.
10799         (dynlib_error): Call w32_strerror to produce the error string, and
10800         zero out the last error code, like dlerror does.
10801         (dynlib_close): Check the handle for validity.  Record the error,
10802         if any, for use by dynlib_error.  Don't call FreeLibrary with a
10803         handle for the main module.
10804         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
10806 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
10808         Include-file tweaks for modules
10810         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
10811         * src/dynlib.h: Do not include config.h.
10812         It’s every .c file’s responsibility to include config.h first.
10813         * src/emacs-module.c: Include emacs-module.h immediately after
10814         config.h, to test that emacs-module.h doesn’t depend on
10815         include files other than config.h.
10817 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
10819         Simplify push_handler and profile its malloc
10821         * src/lisp.h (PUSH_HANDLER): Remove.
10822         All callers changed to use push_handler directly.
10823         * src/eval.c (internal_condition_case)
10824         (internal_condition_case_1, internal_condition_case_2)
10825         (internal_condition_case_n):
10826         Use same pattern as for other invokers of push_handler.
10827         (push_handler, push_handler_nosignal): Use call-by-value
10828         instead of call-by-reference.  All uses changed.
10829         (push_handler): Simplify by rewriting in terms of
10830         push_handler_nosignal.
10831         (push_handler_nosignal): Profile any newly allocated memory.
10833 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
10835         * src/emacs-module.h: Include stddef.h, not stdlib.h.
10837 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
10839         Discover repository version in linked worktrees (bug#21930)
10841         * lisp/version.el (emacs-repository--version-git-1): Do not assume
10842         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
10843         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
10844         is nil too.
10846 2015-11-19  Juri Linkov  <juri@linkov.net>
10848         * lisp/replace.el (occur-regexp-descr): New function.
10849         (occur-1, occur-engine): Use it.
10851         * lisp/isearch.el (isearch-occur): Propertize regexp with
10852         isearch-string and isearch-regexp-function-descr for
10853         occur-regexp-descr to display the correct description
10854         message in the header (bug#21176, bug#21180).
10856 2015-11-19  Karl Fogel  <kfogel@red-bean.com>
10858         Revert `open-line' electric-indent sensitivity
10860         * lisp/simple.el (open-line): Remove electric indent code.
10861           (electric-indent-just-newline): Don't declare.
10863         * test/automated/simple-test.el (open-line-indent): Adjust test.
10865         This partly reverts Artur Malabarba's change that added electric
10866         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
10867         commit bd4f04f86), and adjusts a new test he added right afterwards
10868         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
10869         However, the new INTERACTIVE argument to `open-line', which he also
10870         added in the first commit, is not reverted here.
10872         See the thread "Questioning the new behavior of `open-line'." on the
10873         Emacs Devel mailing list, and in particular this message:
10875           From: Artur Malabarba
10876           Subject: Re: Questioning the new behavior of `open-line'.
10877           To: Karl Fogel
10878           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
10879           Date: Wed, 18 Nov 2015 21:03:58 +0000
10880           Message-ID: \
10881             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
10883           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
10885 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
10887         Omit unnecessary clear in Fmodule_load
10889         * src/emacs-module.c (Fmodule_load):
10890         Simplify and avoid unnecessary initialization of priv member to 0.
10892         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
10894 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
10896         Prefer signed integer types in module code
10898         Generally speaking, at the C level the Emacs source code prefers
10899         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
10900         partly to avoid the usual signedness confusion when comparing values.
10901         Change the module API to follow this convention.
10902         Use ‘int’ for small values that can’t exceed INT_MAX.
10903         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
10904         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
10905         (Fmod_test_vector_eq):
10906         * src/emacs-module.c (struct emacs_value_frame)
10907         (module_make_global_ref, module_free_global_ref)
10908         (module_copy_string_contents, module_make_string)
10909         (module_vec_set, module_vec_get, module_vec_size):
10910         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
10911         * src/lread.c (suffix_p):
10912         Prefer signed to unsigned integer types.
10914 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
10916         Omit ‘const’ on locals
10918         Remove ‘const’ qualifier from locals that were newly added.
10919         We don’t normally bother declaring locals with ‘const’ even
10920         though they are not modified, for the same reason we don’t
10921         bother declaring them with ‘register’ even though their
10922         addresses are not taken; the advantage in compile-time
10923         checking isn’t worth the loss of readability.
10924         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
10925         (Fmod_test_vector_fill, Fmod_test_vector_eq):
10926         * src/emacs-module.c (MODULE_SETJMP_1)
10927         (module_make_global_ref, module_free_global_ref)
10928         (module_non_local_exit_get, module_make_function)
10929         (module_extract_integer, module_extract_float)
10930         (module_get_user_ptr, module_set_user_ptr)
10931         (module_get_user_finalizer, module_set_user_finalizer)
10932         (module_vec_get, Fmodule_call)
10933         (module_non_local_exit_signal_1)
10934         (module_non_local_exit_throw_1, lisp_to_value)
10935         (finalize_storage, allocate_emacs_value, mark_modules)
10936         (module_handle_signal, module_handle_throw)
10937         (module_format_fun_env):
10938         * src/eval.c (push_handler, push_handler_nosignal)
10939         (init_handler):
10940         * src/lread.c (suffix_p):
10941         Omit unnecessary ‘const’.
10943 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
10945         Prefer intmax_t to int64_t in module code
10947         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
10948         * src/emacs-module.c (module_extract_integer)
10949         (module_make_integer):
10950         * src/emacs-module.h (struct emacs_env_25):
10951         Prefer intmax_t to int64_t.  This doesn’t change the generated
10952         code on any of the machines Emacs currently ports to, but it’s
10953         at least in theory more future-proof as C99 doesn’t guarantee
10954         that int64_t exists.
10956 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
10958         Rename module.c to emacs-module.c, etc.
10960         * src/emacs-module.c: Rename from src/module.c.
10961         * src/emacs-module.h: Rename from src/module.h.
10962         All uses changed.
10964 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
10966         Fix minor module problems found by static checking
10968         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
10969         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
10970         * src/module.c (Fmodule_load): Fix pointer signedness bug.
10971         (Fmodule_call): Tell GCC that the default case is unreachable.
10973 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
10975         Style fixes for indenting etc. in module code
10977         This is mostly indenting and spacing changes.  Also, remove
10978         some unnecessary static decls instead of bothering to reindent them.
10979         * src/module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
10980         as most other Emacs files do for this sort of thing.
10982 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
10984         Minor improvements in modules testing Makefile
10986         * modules/mod-test/Makefile (EMACS, SO): New variables.
10987         (CFLAGS): When SO = dll, don't use -fPIC.
10988         (check): New target, runs the test.
10990 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
10992         * .gitignore: Add "*.dll".
10994 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
10996         Migrate modules/.gitignore into .gitignore
10998         * .gitignore: Add former contents of modules/.gitignore.
10999         * modules/.gitignore: Remove.
11001 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
11003         Add copyright notices to module code
11005         Put them in the usual format for GNU Emacs copyright notices.
11007 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
11009         Rename emacs_module.h to module.h
11011         * src/module.h: Rename from src/emacs_module.h.
11012         All uses changed.
11014 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
11016         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
11018         * src/lread.c (Fload): Remove unused variable `size'
11020 2015-11-19  Alan Mackenzie  <acm@muc.de>
11022         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
11024 2015-11-18  Dmitry Gutov  <dgutov@yandex.ru>
11026         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
11028         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
11029         vc-parent-buffer over log-view-mode fallback (bug#21955).
11031 2015-11-18  Alan Mackenzie  <acm@muc.de>
11033         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
11035 2015-11-18  Ken Brown  <kbrown@cornell.edu>
11037         * configure.ac (LIBMODULES): Don’t define on Cygwin
11039 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
11041         Fix MS-Windows build --with-modules
11043         * src/module.c: Reformat copyright commentary.
11044         (module_vec_get): Use explicit cast to size_t to avoid compiler
11045         warning in 32-bit builds.
11046         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
11047         Compare thread IDs directly, as GetThreadId is not available
11048         before Windows Vista.
11049         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
11050         without using APIs and constants not available on XP and older
11051         systems.  Obtain and store the thread ID as well.
11053 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
11054             Philipp Stephani  <phst@google.com>
11056         Add dynamic module test and helper script
11058         Add 'modhelp.py' script (python2) to automate module testing and
11059         module generation.
11061         To build and test all modules in the modules/ dir
11062           $ ./modhelp.py test
11064         To generate a module from template code (good starting point)
11065           $ ./modhelp init mynewtestmodule
11067         See the script -h option for more documentation.
11069         * modules/modhelp.py: New module helper script.
11070         * modules/mod-test/Makefile: New file. Makefile for the test module.
11071         * modules/mod-test/mod-test.c: New file. Test module source file.
11072         * modules/mod-test/test.el: New file. ert test suite for the test module.
11073         * modules/.gitignore: New file. Local .gitignore file.
11075 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
11077         Make 'Fload' look for modules
11079         'Fload' can now load dynamic modules. This also makes 'require' work.
11081         * src/lread.c:
11082           (suffix_p): New function.
11083           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
11084           with a module suffix.
11085           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
11087 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
11088             Philipp Stephani  <phst@google.com>
11090         Add dynamic module module support
11092         * configure.ac: Add '--with-modules' option.  Conditionally add
11093           dynlib.o and module.o to the list of objects.  Add any system
11094           specific flags to the linker flags to support dynamic libraries.
11095         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
11096           attributes.
11097         * src/Makefile.in: Conditionally add module objects and linker flags.
11098         * src/alloc.c (garbage_collect_1): protect module local values from
11099           GC.
11100         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
11101         * src/emacs_module.h: New header file included by modules.  Public
11102           module API.
11103         * src/module.c: New module implementation file.
11105 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
11107         Add new User Pointer (User_Ptr) type
11109         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
11110         (XUSER_PTR): New User_Ptr accessor.
11111         * src/alloc.c (make_user_ptr): New function.
11112         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
11113         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
11114         (Fuser-ptrp): New user pointer type predicate function.
11115         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
11116         subr.
11117         * src/print.c (print_object): Add printer for User_Ptr type.
11119 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
11120             Philipp Stephani  <phst@google.com>
11122         Add portable layer for dynamic loading
11124         * src/dynlib.h: New file.
11125         * src/dynlib.c: New file.
11127 2015-11-18  Philipp Stephani  <phst@google.com>
11129         Add catch-all & no-signal version of PUSH_HANDLER
11131         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
11132         a new "catch-all" handler type.
11134         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
11135           functions.
11136         * src/fns.c (hash_remove_from_table): Expose function public.
11137         * src/lisp.h: New handler type, define macro to push_handler call.
11139 2015-11-18  Ken Brown  <kbrown@cornell.edu>
11141         Silence byte-compiler warning
11143         * lisp/server.el (server-process-filter): Silence byte-compiler
11144         warning.
11146 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
11148         Quote symbols in docstrings using `'
11150         Be more systematic about quoting symbols `like-this' rather than
11151         `like-this or 'like-this' in docstrings.  This follows up Artur
11152         Malabarba's email in:
11153         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
11155 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
11157         Fix savegames in dunnet
11159         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
11160           of separate implementation.
11162 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
11164         * lisp/emacs-lisp/package.el (package--with-response-buffer):
11166         Ensure we're at the start of the buffer before searching for
11167         the end of headers.
11169 2015-11-17  Xue Fuqiao  <xfq.free@gmail.com>
11171         * admin/release-process: Improve wording.
11173 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
11175         Fix docstring quoting problems with ‘ '’
11177         Problem reported by Artur Malabarba in:
11178         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
11179         Most of these fixes are to documentation; many involve fixing
11180         longstanding quoting glitches that are independent of the
11181         recent substitute-command-keys changes.  The changes to code are:
11182         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
11183         (describe-mode-local-overload):
11184         Substitute docstrings before displaying them.
11185         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
11186         Quote the generated docstring for later substitution.
11188 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
11190         Improve configure --help text for wide ints
11192         * configure.ac (wide-int): Clarify user-level advantages and
11193         disadvantages.
11195 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
11197         Improve doc string
11199         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
11201 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
11203         eval_sub followed dangling pointer when debugging
11205         Problem reported by Pip Cet (Bug#21245).
11206         This bug could occur in eval_sub if the C compiler reused
11207         storage associated with the ‘argvals’ local after ‘argvals’
11208         went out of scope, and if the Elisp debugger stopped on Elisp
11209         function exit and accessed ‘argvals’.  It could also occur if
11210         a variadic function was called with so many arguments (over
11211         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
11212         SAFE_FREE freed the arguments, then the memory manager used
11213         the storage for other purposes, then the debugger accessed the
11214         arguments.
11215         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
11216         function body.  Simplify local decls.
11217         When allocating args via SAFE_ALLOCA, call
11218         debugger before invoking SAFE_FREE, as the debugger needs
11219         access to the args.
11220         (eval_sub, apply_lambda): Rework to avoid need for
11221         set_backtrace_debug_on_exit hack.  This is cleaner,
11222         and should work better with buggy custom debuggers.
11224 2015-11-16  Daiki Ueno  <ueno@gnu.org>
11226         * lisp/image-mode.el: Support encrypted file
11228         (image-toggle-display-image): Read content from the buffer instead
11229         of the file, if the buffer holds a decrypted data.  (Bug#21870)
11231 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
11233         ELF unexec: align section header
11235         This ports the recent unexelf.c changes to Fedora x86-64
11236         when configured with GCC’s -fsanitize=undefined option.
11237         * src/unexelf.c (unexec): Align new_data2_size to a multiple
11238         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
11239         pointer aligned appropriately for its type.
11241 2015-11-16  Andreas Schwab  <schwab@linux-m68k.org>
11243         Do more checks on bytecode objects (Bug#21929)
11245         * src/eval.c (funcall_lambda): Check size of compiled function
11246         object.
11247         (Ffetch_bytecode): Likewise.
11249 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
11251         pcase.el: Fix edebugging of backquoted cons patterns
11253         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
11254         cons patterns. (Bug#21920)
11256 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
11258         Improve fix for regex reentrancy abort
11260         Suggested by Stefan Monnier (Bug#21688).
11261         * src/syntax.c (update_syntax_table_forward):
11262         Remove recently-added PROPERTIZE arg, and assume it is true.
11263         All callers changed.
11264         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
11265         Invoke update_syntax_table directly.
11267 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
11269         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
11271         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
11273         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
11275 2015-11-15  Vasily Korytov  <vasily.korytov@yahoo.com>
11277         Recognize .rbw and .pyw files (bug#18753)
11279         * lisp/progmodes/python.el (auto-mode-alist):
11280         Recognize .pyw files.
11282         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
11283         Recognize .rbw files.
11285 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
11287         Fix ruby-mode auto-mode-alist entry
11289         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
11290         around the extensions (bug#21257).
11292 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
11294         Fix etags completion near eob
11296         * lisp/progmodes/etags.el (tags-completion-at-point-function):
11297         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
11299 2015-11-15  Alan Mackenzie  <acm@muc.de>
11301         De-pessimize detection of C++ member initialization lists.
11303         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
11304         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
11305         is only called when a construct "looks right" rather than continually.
11306         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
11308 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
11310         Improve a few doc strings, comments
11312         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
11313         * lisp/cedet/ede/locate.el (ede-locate-base):
11314         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
11315         * src/fns.c (Fdelq): Improve doc string.
11317         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
11319 2015-11-15  Anders Lindgren  <andlind@gmail.com>
11321         Enhance NSTRACE (trace output for NextStep).
11323         Trace can be disabled for groups of functions. By default, event
11324         functions and functions that generate lots of output are disabled.
11326         Trace output of Objective-C functions now use the "[ClassName
11327         parameter:]" form.
11329         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
11330         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
11331         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
11332         controlling in which function groups trace should be active.
11333         (NSTRACE_WHEN): Support for silencing a function, this also
11334         silencing all called functions.
11335         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
11336         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
11337         print the full screen state in NSTRACE functions.
11339         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
11340         can be accessed from multiple threads.
11341         (nstrace_enabled_global): New variable, when FALSE, trace is
11342         silenced.
11343         (nstrace_restore_global_trace_state): New function, used to
11344         restore `nstrace_enabled_global' at end of block.
11345         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
11346         ([EmacsWindow setFrame:display:animation:])
11347         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
11348         and call corresponding super function.
11349         (Many functions): Add or enhance trace output.
11351         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
11353         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
11355         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
11356         and call corresponding super function.
11358 2015-11-15  Anders Lindgren  <andlind@gmail.com>
11360         Fixed a toolbar related issue on OS X.
11362         Earlier, when toggling the tool-bar in a maximized frame, the
11363         frame size didn't match the number of text lines, leaving an
11364         unused area at the bottom of the frame.
11366         * nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
11367         fullscreen modes when tool bar is disabled.
11369 2015-11-15  Anders Lindgren  <andlind@gmail.com>
11371         Fixed OS X 10.6.8 build issue (bug#21862).
11373         * src/nsterm.h (EmacsView): Add missing declarations.
11374         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
11375         the standard method but without the notification parameter.
11376         Intended to be used for direct calls.
11377         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
11378         version of `windowDidBecomeKey'. Made the notification method call
11379         the non-notification method instead of the vice versa.
11380         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
11381         needed.
11383 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
11385         * lisp/faces.el (faces--attribute-at-point): Fix an issue
11387         Previous code would signal an error when the face at point was
11388         a manually built list of attributes such as '(:foregroud "white").
11390         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
11392 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
11394         Fix regex abort when it tries to reenter itself
11396         Problem reported by Ken Raeburn.
11397         Solution suggested by Stefan Monnier (Bug#21688).
11398         * src/regex.c (re_match_2_internal):
11399         Use new _FAST functions to avoid regex code reentering itself.
11400         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
11401         All callers changed.
11402         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
11403         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
11405 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
11407         Improve Ruby 1.9-style keyword keys highlighting
11409         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
11410         Handle required keyword arguments (bug#21367).
11411         And highlight the colon together with the name.
11413 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
11415         Unify the absolutely equal xref-backend-references implementations
11417         * lisp/progmodes/elisp-mode.el (xref-backend-references):
11418         Remove.
11420         * lisp/progmodes/etags.el (xref-backend-references):
11421         Remove.
11423         * lisp/progmodes/xref.el (xref-backend-references):
11424         Define the default implementation.
11426 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
11428         Update project-find-regexp for the new xref API
11430         * lisp/progmodes/project.el (project--read-regexp):
11431         Update to use the new xref API methods.
11433         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
11435 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
11437         Fix replacing a match with a shorter string
11439         In effect, partially reverting fe973fc.
11441         * lisp/progmodes/xref.el (xref-query-replace): Store the end
11442         of each match as a marker again, instead of length.
11443         (xref--query-replace-1): Update accordingly.
11445 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
11447         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
11449         Signal user-errors instead.
11451 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
11453         Document 'describe-symbol'
11455         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
11456         (Name Help): Document "C-h o" and describe-symbol.
11458         * lisp/help-fns.el (describe-symbol): Doc fix.
11460 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
11462         Change test name to avoid spellcheck issue.
11464 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
11466         Avoid signaling an error in 'describe-symbol'
11468         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
11469         exists as a function/variable/face/etc., but is undocumented.
11471         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
11472         test.
11474 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
11476         * INSTALL (--with-cairo): Document this new configure option.
11478 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
11480         Document that GNU Make >= 3.81 is required to build Emacs
11482         * doc/lispref/internals.texi (Building Emacs): Document that GNU
11483         Make 3.81 or later is now required.
11485 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
11487         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
11489 2015-11-13  l3thal  <kwhite@gnu.org>
11491         Merge branch 'erc-async-reconnect' into emacs-25
11493         Reconnect asynchronously.
11495 2015-11-11  Alan Mackenzie  <acm@muc.de>
11497         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
11499         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
11500         Windows" and new @defun selected-window-group.
11501         (Window Start and End): Describe new &optional parameter GROUP and
11502         ...-group-function for window-start, window-end, set-window-start, and
11503         pos-visible-in-window-p.
11504         (Textual Scrolling) Describe the same for recenter.
11505         doc/lispref/positions.texi (Screen Lines): Describe the same for
11506         move-to-window-line.
11508         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
11509         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
11510         new optional parameter "group".  At the beginning of each, check whether the
11511         corresponding ...-group-function is set to a function, and if so execute this
11512         function in place of the normal processing.
11513         (syms_of_window): Define symbols for the six new variables below.
11514         (window-start-group-function, window-end-group-function)
11515         (set-window-start-group-function, recenter-group-function)
11516         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
11517         New permanent local buffer local variables.
11518         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
11519         Fpos_visible_in_window_p.
11521         lisp/window.el (selected-window-group-function): New permanent local buffer
11522         local variable.
11523         (selected-window-group): New function.
11525         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
11526         enable, kill them at mode disable.  Add/remove follow-after-change to/from
11527         after-change-functions.
11528         (follow-start-end-invalid): New variable.
11529         (follow-redisplay): Manipulate follow-start-end-invalid.
11530         (follow-after-change, follow-window-start, follow-window-end)
11531         (follow-set-window-start, follow-pos-visible-in-window-p)
11532         (follow-move-to-window-line, follow-sit-for): New functions.
11534         lisp/isearch.el (isearch-call-message): New macro.
11535         (isearch-update, with-isearch-suspended, isearch-del-char)
11536         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
11537         (with-isearch-suspended): Rearrange code such that isearch-call-message is
11538         invoked before point is moved.
11539         (isearch-message): Add comment about where point must be at function call.
11540         (isearch-search): Remove call to isearch-message.
11541         (isearch-lazy-highlight-window-group): New variable.
11542         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
11543         the battery of tests to ...
11544         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
11545         Note: (sit-for 0) is still called.
11546         (isearch-lazy-highlight-update): Check membership of
11547         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
11548         property.
11549         (isearch-update, isearch-done, isearch-string-out-of-window)
11550         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
11551         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
11552         (isearch-lazy-highlight-update): Call the six amended primitives (see
11553         src/window.c above) with the new `group' argument set to t, to cooperate
11554         with Follow Mode.
11556 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
11558         * shr.el (shr-descend): Allow using lambdas in external functions.
11560 2015-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
11562         * admin/gitmerge.el: Tweaks that seemed necessary
11564         * admin/gitmerge.el (gitmerge-skip-regexp): Remove "sync".
11565         (gitmerge-maybe-resume): Provide explicit empty commit message.
11567 2015-12-25  Łukasz Stelmach  <stlman@poczta.fm>  (tiny change)
11569         Use a different port for TLS erc
11571         * lisp/erc/erc.el (erc-default-port-tls): New variable
11572         (bug#19497).
11573         * lisp/erc/erc.el (erc-tls): Use it.
11575 2015-12-25  Alain Schneble  <a.s@realize.ch>
11577         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
11579         * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
11580         * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
11581         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
11582         information in URL-struct.
11583         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
11584         path and query into nil path and query, respectively.
11585         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
11586         empty path into an absolute ("/") path.
11587         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
11588         fragment-only URIs. Do not just return them unchanged.
11589         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
11590         reference URI should not drop the last segment.
11592 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
11594         Let url use default file modes when copying files
11596         * lisp/url/url-handlers.el (url-copy-file): Use default file
11597         modes when copying files (bug#11400).
11599 2015-12-25  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
11601         Doc fix for url-http
11603         * lisp/url/url-http.el (url-http): Document better return values
11604           (bug#13187) (tiny change)
11606 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
11608         * eww.el (eww-display-html): Support <button> tags (bug#20485).
11610 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
11612         Made ffap-url-p a defun instead of a defsubst
11614         * lisp/ffap.el (ffap-url-p): Change from defsusbt to defun,
11615         since there doesn't seem to be much of a reason for it to be a
11616         defsubst (bug#18203).
11618 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
11620         Add a command to view files in the browser to dired
11622         * lisp/dired.el (dired-mode-map): Add the `W' command
11623         (bug#18810).
11625 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
11627         Allow http://user:pass@foo/ URLs again
11629         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
11630         user/passwords in URLs (bug#19046).
11632 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
11634         * eww.el (eww-mode-map): Fix command name of eww-toggle-colors.
11636 2015-12-25  Samer Masterson  <samer@samertm.com>
11638         Autoload url-insert-buffer-contents
11640         * lisp/url/url-handlers.el: Add autoload cookie so that
11641         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
11643 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
11645         Allow toggling colors in eww
11647         * doc/misc/eww.texi (Basics): Mention "C".
11649         * lisp/net/eww.el (eww-toggle-colors): New command and keystroke.
11651         * lisp/net/shr.el (shr-use-colors): New variable.
11652         (shr-colorize-region): Use it.
11654 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
11656         Follow meta refresh tags in eww
11658         * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
11660 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
11662         More eww file name coding fixes
11664         * eww.el (eww-decode-url-file-name): Use the base coding
11665         system to check for encodability.
11667 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
11669         Always save eww history
11671         * eww.el (eww-setup-buffer): Always save history, even when
11672         called from outside the eww buffer (bug#19638).
11674 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
11676         Default web pages to right-to-left
11678         * eww.el (eww-mode): Most web pages are left-to-right, so make
11679         that the default (bug#19801).
11681         * shr.el (shr-tag-html): Respect "dir" attributes
11682         (left-to-right, right-to-left).
11684 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
11686         Make toggling checkboxes work again
11688         * eww.el (eww-update-field): Make toggling checkboxes work
11689         again (bug#21881).
11691 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
11693         Don't store cookies with empty names
11695         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
11696         cookies with empty names (bug#21936).
11698 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
11700         * shr.el (shr-descend): Stop rendering before we run out of
11701         specpdl room (bug#22117).
11703 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
11705         Use cl-reduce, not reduce.
11707 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
11709         Allow several <tbody> tags in shr
11711         * shr.el (shr-table-body): New function to find the real body
11712         of a table.
11713         (shr-tag-table): Use it to render several <tbody> tags in a
11714         table (bug#22170).
11716 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
11718         Make prettier unique file names in eww
11720         (eww-make-unique-file-name): Make unique file names by making
11721         files like foo(2).jpg instead of foo(1)(2).jpg.
11723 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
11725         Decode hex-encoded URLs before using them as file names
11727         * eww.el (eww-decode-url-file-name): New function.
11728         (eww-download-callback): Use it to decode file names before
11729         saving them.
11731 2015-12-24  Ashish SHUKLA  <ashish.is@lostca.se>  (tiny change)
11733         * doc/misc/emacs-gnutls.texi (Help For Users): Document FreeBSD bundle.
11734         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
11736 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
11738         Allow overriding shr functions from eww
11740         * eww.el (eww-display-html): Allow overriding elements in
11741         `shr-external-rendering-functions'.
11743 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
11745         Ignore invalid SVG images
11747         * shr.el (shr-tag-svg): Ignore SVG images that have no width
11748         or height, because these can't be displayed by ImageMagick,
11749         anyway.
11751 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
11753         shr table rendering fix
11755         * shr.el (shr-tag-table): Allow rendering body-less tables
11756         that have headers.
11758 2015-12-22  Sam Steingold  <sds@gnu.org>
11760         clipboard should still work even if interprogram-* is disabled
11762         (clipboard-yank): When `interprogram-cut-function' is nil,
11763         bind it to `gui-selection-value' - the default value.
11764         (clipboard-kill-region, clipboard-kill-ring-save): When
11765         `interprogram-paste-function' is nil, bind it to `gui-select-text' -
11766         the default value.
11768 2015-12-18  Phillip Lord  <phillip.lord@russet.org.uk>
11770         Fix bootstrap issue with dired-loaddefs
11772         * lisp/dired.el: Autoloads for secondary files loaded optionally.
11774 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
11776         dired generate autoloads to non-versioned file.
11778         * lisp/dired.el: Remove autoloads.
11779         * lisp/Makefile.in: Add dired to autogenel.
11780         * lisp/dired-aux.el,lisp/dired-x.el: Update file local.
11781         * test/lisp/dired-tests.el: Add new test.
11783 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
11785         eieio generate autoloads to non-versioned file.
11787         * lisp/Makefile.in: eieio-loaddefs add to autogenel.
11788         * lisp/emacs-lisp/eieio.el,lisp/emacs-lisp/eieio-core.el:
11789           Remove autoloads.
11790         * lisp/emacs-lisp/eieio-compat.el,lisp/emacs-lisp/eieio-custom.el,
11791           lisp/emacs-lisp/eieio-opt.el: Update file local.
11792         * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.
11794 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
11796         htmlfontify generate autoload to non-versioned file.
11798         * lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
11799         * lisp/hfy-cmap.el: Update file local.
11800         * lisp/htmlfontify.el: Remove autoloads, add require.
11801         * test/lisp/htmlfontify-tests.el: Test autoload functionality.
11803 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
11805         ibuffer generate autoloads to non-versioned file.
11807         * lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
11808         * lisp/ibuf-ext.el: Update file local.
11809         * lisp/ibuffer.el: Remove autoloads and add a require.
11810         * test/lisp/ibuffer-tests.el: Test that autoload is working.
11812 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
11814         rmail generate autoloads to non-versioned file.
11816         * lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
11817         * lisp/mail/rmail.el: Remove autoloads, add require.
11818         * lisp/mail/rmailedit.el,lisp/mail/rmailkwd.el,
11819           lisp/mail/rmailmm.el,lisp/mail/rmailmsc.el,
11820           lisp/mail/rmailsort.el,lisp/mail/rmailsum.el,
11821           lisp/mail/undigest.el: Update file-local.
11822         * test/lisp/mail/rmail-tests.el:
11824 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
11826         Add autoload-force target.
11828         * lisp/Makefile.in (autoload-force): New target.
11830 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
11832         ps-print generate autoloads to non versioned file.
11834         * lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
11835         * lisp/ps-print.el: Remove autoloads.
11836         * lisp/ps-mule.el: Update file-local.
11837         * test/lisp/ps-print-tests.el: Test autoload functionality.
11839 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
11841         reftex generate autoloads to non versioned file.
11843         * lisp/Makefile.in: Add reftex-loaddefs to autogen files
11844         * lisp/textmodes/reftex.el: Remove autoloads.
11845         * lisp/textmodes/reftex-auc.el,lisp/textmodes/reftex-cite.el,
11846           lisp/textmodes/reftex-dcr.el,lisp/textmodes/reftex-global.el,
11847           lisp/textmodes/reftex-index.el,lisp/textmodes/reftex-parse.el,
11848           lisp/textmodes/reftex-ref.el,lisp/textmodes/reftex-sel.el,
11849           lisp/textmodes/reftex-toc.el: Update autoload file-local.
11850         * test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
11851           function.
11853 2015-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
11855         * lisp/calculator.el (calculator-define-key): Undo last change
11857         Make map argument mandatory instead (bug#22106).
11858         (calculator-add-operators): Pass the argument that's not optional any more.
11860 2015-12-03  Glenn Morris  <rgm@gnu.org>
11862         * Makefile.in: Avoid duplication.
11864         (have-tests): New rule.
11865         (check, check-maybe): Use it.
11867 2015-12-02  Phillip Lord  <phillip.lord@russet.org.uk>
11869         make check unconditional, check-maybe top-level.
11871          * Makefile.in: Add check-maybe target.
11872          * test/Makefile.in: Restore unconditional behaviour to make check.
11874 2015-12-01  Phillip Lord  <phillip.lord@russet.org.uk>
11876         Tests now support out-of-source-build.
11878          * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
11879            about current working directory.
11881 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
11883         * lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
11885 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
11887         Improve documentation and clean up.
11889          * test/Makefile.in: Improve documentation, use EMACS variable
11890            correctly, and clean up makefile rules.
11892 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
11894         Update file headers for name change.
11896          * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
11898 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
11900         Test files renamed to new scheme.
11902          * (finalizer-tests.el): Now renamed alloc-tests.el
11903          * (zlib-tests.el): Now renamed decompress-tests.el.
11905 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
11907         Tests now depend on source files
11909          * test/Makefile.in: Include dependences from tests to source files.
11910          * test/make-test-deps.emacs-lisp: New file
11911          * .gitignore: Ignore generated make include file
11913 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
11915         * lisp/progmodes/which-func.el: Improve disabling the mode
11917         Use lexical-binding.
11918         (which-func-modes, which-func-non-auto-modes, which-func-maxout)
11919         (which-func, which-func-format): Remove redundant :group arg.
11920         (which-func-try-to-enable): New function.
11921         (which-func-ff-hook, which-function-mode): Use it.
11922         (mode-line-misc-info): Add ourselves here instead of in bindings.el.
11923         * lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
11925 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
11927         * lisp/calculator.el (calculator-define-key): Silence warning
11929         ...about unknown calculator-mode-map.
11931 2015-11-29  Eli Barzilay  <eli@barzilay.org>
11933         * lisp/calculator.el: more improvements and bugfixes.
11935         - Mark `calculator-paste-decimals' as obsolete.  (It wasn't having an
11936           effect anyway.)
11938         - Simplify `calculator-number-to-string' by throwing most of the work
11939           onto `number-to-string', leaving just some tweaks for decimal inputs.
11940           This leads to some minor changes, for example, pasting "1x1" in hex
11941           mode would warn that "x" is ignored and result in "11" (and it wasn't
11942           done in decimal mode), whereas now it just ignores everything from the
11943           "x" and on and result in a "1" just like in decimal input mode.  Also,
11944           overflows are left for `number-to-string' to deal with.
11946         - `calculator-paste' is very simple as a result.
11948         - Extend the simplified `calculator-paste': with a prefix argument it
11949           pastes a string as if the characters were entered.  This can be used
11950           to reduce expressions, but note that it's a simple literal operation,
11951           so precedence can be messed, a number can be paster while entering a
11952           number, spaces and newlines matter, etc.
11954         - Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
11955           operator.
11957         - Fix a bug in `calculator-put-value': avoid grouping in the display
11958           that is used to construct `calculator-curnum'.  This would trigger
11959           when pasting or getting a value from a register in some radix mode
11960           with a large enough value.  Another fix: make the output radix equal
11961           the input one, otherwise numbers could be converted twice.
11963 2015-11-29  Eli Barzilay  <eli@barzilay.org>
11965         * lisp/calculator.el: Re-do key bindings.
11967         Use a helper function that arranges a parent keymap that binds alternate
11968         case keys so if some letter key is unbound and it's un/shifted version
11969         is, it will get used.  This makes the global-map trickery unnecessary.
11971         Also switch to passing strings that name keys through `kbd'.
11973 2015-11-29  Eli Barzilay  <eli@barzilay.org>
11975         * lisp/calculator.el: improve radix modes
11977         Fix prompt for some input radix with decimal output (eg, "BD" instead of
11978         the incorrect "B="); also, some minor docstring tweaks for these.
11980 2015-11-29  Eli Barzilay  <eli@barzilay.org>
11982         * lisp/calculator.el: better reading of register names
11984         Use `register-read-with-preview' with a dynamically bound
11985         `register-alist' and a proper preview function to read register names.
11987 2015-11-29  Eli Barzilay  <eli@barzilay.org>
11989         * lisp/calculator.el: General improvements
11991         Use things like `when', `unless', and `push'.
11993         Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
11994         non-electric mode.
11996 2015-11-28  Michael Albinus  <michael.albinus@gmx.de>
11998         Fix a problem with gfilenotify in filenotify-tests.el
12000         * test/lisp/filenotify-tests.el
12001         (file-notify--test-expected-events): Remove.
12002         (file-notify--test-cleanup): Do not set that variable.
12003         (file-notify--test-with-events): EVENTS can also be a list of lists.
12004         (file-notify-test02-events, file-notify-test04-file-validity):
12005         Adapt expected result.
12007 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12009         * .gitignore: Adjust to changes in 'test' directory structure.
12011 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
12013         Fix test/manual/etags/Makefile
12015         * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
12016         changes in 'test' directory structure.
12018 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
12020         Exclude resource dirs from search for tests.
12022         * test/Makefile.in: Test file locations are now found with find
12023           rather than using finds native functions.
12025 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
12027         Add test targets without directory names.
12029          * (test/Makefile.in): Extend test_template to add two targets for each
12030            file.
12032 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
12034         * lisp/emacs-lisp/package.el: Require url-handlers
12036 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
12038         Move elisp-mode-tests to new function names.
12040          * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
12041          find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
12043 2015-11-27  Juanma Barranquero  <lekktu@gmail.com>
12045         * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
12047 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
12049         Merge branch 'feature/standard-test-location'
12051 2015-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
12053         * lisp/emacs-lisp/eieio.el: Add some default implementations
12055         (standard-class): Mark it obsolete.
12056         (slot-missing): Give it a default implementation.
12057         (destructor): Simplify and mark it obsolete.
12058         (object-print): Give it a default implementation.
12059         (eieio-change-class): Rename from change-class.
12060         (change-class): Redefine as obsolete alias.
12062 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
12064         Some final fixes in file notification before merging with master
12066         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
12067         (file-notify-callback): Improve check for `stopped' event.  Call
12068         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
12069         (file-notify-add-watch): In case FILE is not a directory, call the
12070         file monitor for the kqueue backend.  Otherwise, call the
12071         directory monitor for the upper directory.
12073         * src/inotify.c (inotifyevent_to_event): Extract file name from
12074         watch_object if the event doesn't provide it.
12075         (Finotify_add_watch): Add file name to watch_object.
12077         * test/automated/file-notify-tests.el (file-notify--test-timeout):
12078         Use different timeouts for different libraries.
12079         (file-notify--test-with-events): Suppress lock files.  Flush
12080         outstanding events before running the body.
12081         (file-notify-test02-events, file-notify-test04-file-validity): Do
12082         not skip cygwin tests.  Add additional test for file creation.
12083         Adapt expected result for different backends.
12084         (file-notify-test03-autorevert): Some of the tests don't work for
12085         w32notify.
12086         (file-notify-test06-many-events): Rename into both directions.
12088 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
12090         Rework file notifications, kqueue has problems with directory monitors
12092         * lisp/filenotify.el (file-notify-add-watch): Call the native
12093         add-watch function on the file, not on the dir.
12095         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
12096         about already deleted entries.
12098         * test/automated/auto-revert-tests.el
12099         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
12100         since this deletes the target file first.
12102         * test/automated/file-notify-tests.el (file-notify--test-event-test):
12103         Make stronger checks.
12104         (file-notify-test01-add-watch, file-notify-test02-events)
12105         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
12106         Rewrite in order to call file monitors but directory monitors.
12107         (file-notify-test06-many-events): Ler rename work in both directions.
12109 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
12111         Continue with pending events
12113         * src/kqueue.c (pending_events): Remove global variable.
12114         (kqueue_compare_dir_list): Create `write' event for not used
12115         pending events.
12116         (globals_of_kqueue): Remove initialization of pending_events.
12118 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
12120         Improve loops in file-notify-test06-many-events
12122         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
12123         Use `read-event' pauses for the `write-file' loops; otherwise
12124         events are lost in inotify and gfilenotify cases.
12126 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
12128         Handle more complex rename operation in kqueue
12130         * src/kqueue.c (pending_events): New variable.
12131         (kqueue_compare_dir_list): Handle more complex rename operation.
12132         (globals_of_kqueue): Initialize pending_events.
12134         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
12135         Adapt expected events in the `rename-file' case.
12136         (file-notify-test06-many-events-remote): Declare.
12138 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
12140         New test with a larger number of events
12142         * test/automated/file-notify-tests.el (file-notify--test-with-events):
12143         Make timeout heuristically depend on the number of events.
12145         (file-notify-test06-many-events): Use it for new test.
12147 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
12149         Further fixes for kqueue
12151         * lisp/filenotify.el (file-notify-callback): Raise also event if
12152         directory name matches.
12153         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
12155         * src/kqueue.c (kqueue_generate_event): Use watch_object as
12156         argument instead of ident.  Remove callback argument.  Adapt
12157         callees.  Check actions whether they are monitored flags.
12159         * test/automated/file-notify-tests.el (file-notify--test-library):
12160         New defun.
12161         (file-notify-test00-availability, file-notify-test02-events)
12162         (file-notify-test04-file-validity)
12163         (file-notify-test05-dir-validity): Use it.
12164         (file-notify-test02-events, file-notify-test04-file-validity): Add
12165         `read-event' calls between different file actions, in order to
12166         give the backends a chance to rais an event.  Needed especially
12167         for kqueue.  In case of deleting a directory, there are two
12168         `deleted' events.
12170 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
12172         Code cleanup of kqueue.c
12174         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
12175         (kqueue_compare_dir_list): Do not loop when calling
12176         directory_files_internal.  Remove checks for "." and "..", this is
12177         done in kqueue_directory_listing now.
12178         (Fkqueue_add_watch): Check for proper emacs_open flags.
12180 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
12182         Doc changes for kqueue
12184         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
12185         Fix some glitches in the example.
12187 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
12189         Finish implementation in kqueue.c
12191         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
12192         Simplify access to list.
12193         (kqueue_compare_dir_list): Simplify access to list.  Raise
12194         `delete' event if directory does not exist any longer.  Otherwise,
12195         wait until directory contents has changed.  Fix error in check.
12197 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
12199         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
12201 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
12203         More work on kqueue
12205         * lisp/filenotify.el (file-notify-callback): Handle also the
12206         `rename' event from kqueue.
12207         (file-notify-add-watch): Do not register an entry twice.
12209         * src/kqueue.c (kqueue_directory_listing): New function.
12210         (kqueue_generate_event): New argument FILE1.  Adapt callees.
12211         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
12213 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
12215         Implement directory events
12217         * lisp/filenotify.el (file-notify-handle-event)
12218         (file-notify-callback): Remove traces.
12220         * src/kqueue.c: Include <sys/time.h>.
12221         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
12222         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
12223         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
12224         Compute initial directory listing.  Close file descriptor in case
12225         of errors.
12226         (syms_of_kqueue): Declare Qcreate.
12228 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
12230         Build fixes for kqueue support
12232         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
12233         flag.
12235         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
12236         kqueue on *BSD.
12238 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
12240         Continue kqueue implementation
12242         * lisp/filenotify.el (file-notify-handle-event)
12243         (file-notify-callback): Enable trace messages.
12245         * src/kqueue.c: Include also <sys/types.h>.
12246         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
12247         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
12248         (syms_of_kqueue): Add them.
12250 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
12252         Work on kqueue
12254         * lisp/filenotify.el (file-notify--library)
12255         (file-notify-descriptors, file-notify-callback)
12256         (file-notify-add-watch, file-notify-rm-watch)
12257         (file-notify-valid-p): Add kqueue support.
12259         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
12261 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
12263         Add kqueue support
12265         * configure.ac (--with-file-notification): Add kqueue.
12266         (top): Remove special test for "${HAVE_NS}" and
12267         ${with_file_notification}, this is handled inside gfilenotify
12268         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
12269         instead of library specific variables.
12271         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
12273         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
12275         * src/kqueue.c: New file.
12277         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
12279 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
12281         Update elisp-mode-tests for changed file location.
12283          * test/lisp/progmodes/elisp-mode-tests.el:
12285 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
12287         Exclude manual tests from Makefile
12289          * test/Makefile.in:
12291 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
12293         Move package test files to new directory.
12295          * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
12296          * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
12298 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
12300         Restore delete Makefiles and fix .gitignore.
12302          * .gitignore: Update Makefiles to changed locations
12303          * test/lisp/progmodes/flymake-resources/Makefile,
12304            test/manual/etags/Makefile,
12305            test/manual/etags/make-src/Makefile,
12306            test/manual/indent/Makefile: Restored and moved to new location.
12308 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
12310         Test infrastructure: updates after directory move
12312          * (test/Makefile.in): Support directories several levels deep.
12313          * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
12314          * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
12316 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
12318         Rename all test files to reflect source layout.
12320          * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
12321            test directory moves.
12322          * test/file-organisation.org: New file.
12323          * test/automated/Makefile.in
12324            test/automated/data/decompress/foo.gz
12325            test/automated/data/epg/pubkey.asc
12326            test/automated/data/epg/seckey.asc
12327            test/automated/data/files-bug18141.el.gz
12328            test/automated/data/flymake/test.c
12329            test/automated/data/flymake/test.pl
12330            test/automated/data/package/archive-contents
12331            test/automated/data/package/key.pub
12332            test/automated/data/package/key.sec
12333            test/automated/data/package/multi-file-0.2.3.tar
12334            test/automated/data/package/multi-file-readme.txt
12335            test/automated/data/package/newer-versions/archive-contents
12336            test/automated/data/package/newer-versions/new-pkg-1.0.el
12337            test/automated/data/package/newer-versions/simple-single-1.4.el
12338            test/automated/data/package/package-test-server.py
12339            test/automated/data/package/signed/archive-contents
12340            test/automated/data/package/signed/archive-contents.sig
12341            test/automated/data/package/signed/signed-bad-1.0.el
12342            test/automated/data/package/signed/signed-bad-1.0.el.sig
12343            test/automated/data/package/signed/signed-good-1.0.el
12344            test/automated/data/package/signed/signed-good-1.0.el.sig
12345            test/automated/data/package/simple-depend-1.0.el
12346            test/automated/data/package/simple-single-1.3.el
12347            test/automated/data/package/simple-single-readme.txt
12348            test/automated/data/package/simple-two-depend-1.1.el
12349            test/automated/abbrev-tests.el
12350            test/automated/auto-revert-tests.el
12351            test/automated/calc-tests.el
12352            test/automated/icalendar-tests.el
12353            test/automated/character-fold-tests.el
12354            test/automated/comint-testsuite.el
12355            test/automated/descr-text-test.el
12356            test/automated/electric-tests.el
12357            test/automated/cl-generic-tests.el
12358            test/automated/cl-lib-tests.el
12359            test/automated/eieio-test-methodinvoke.el
12360            test/automated/eieio-test-persist.el
12361            test/automated/eieio-tests.el
12362            test/automated/ert-tests.el
12363            test/automated/ert-x-tests.el
12364            test/automated/generator-tests.el
12365            test/automated/let-alist.el
12366            test/automated/map-tests.el
12367            test/automated/advice-tests.el
12368            test/automated/package-test.el
12369            test/automated/pcase-tests.el
12370            test/automated/regexp-tests.el
12371            test/automated/seq-tests.el
12372            test/automated/subr-x-tests.el
12373            test/automated/tabulated-list-test.el
12374            test/automated/thunk-tests.el
12375            test/automated/timer-tests.el
12376            test/automated/epg-tests.el
12377            test/automated/eshell.el
12378            test/automated/faces-tests.el
12379            test/automated/file-notify-tests.el
12380            test/automated/auth-source-tests.el
12381            test/automated/gnus-tests.el
12382            test/automated/message-mode-tests.el
12383            test/automated/help-fns.el
12384            test/automated/imenu-test.el
12385            test/automated/info-xref.el
12386            test/automated/mule-util.el
12387            test/automated/isearch-tests.el
12388            test/automated/json-tests.el
12389            test/automated/bytecomp-tests.el
12390            test/automated/coding-tests.el
12391            test/automated/core-elisp-tests.el
12392            test/automated/decoder-tests.el
12393            test/automated/files.el
12394            test/automated/font-parse-tests.el
12395            test/automated/lexbind-tests.el
12396            test/automated/occur-tests.el
12397            test/automated/process-tests.el
12398            test/automated/syntax-tests.el
12399            test/automated/textprop-tests.el
12400            test/automated/undo-tests.el
12401            test/automated/man-tests.el
12402            test/automated/completion-tests.el
12403            test/automated/dbus-tests.el
12404            test/automated/newsticker-tests.el
12405            test/automated/sasl-scram-rfc-tests.el
12406            test/automated/tramp-tests.el
12407            test/automated/obarray-tests.el
12408            test/automated/compile-tests.el
12409            test/automated/elisp-mode-tests.el
12410            test/automated/f90.el
12411            test/automated/flymake-tests.el
12412            test/automated/python-tests.el
12413            test/automated/ruby-mode-tests.el
12414            test/automated/subword-tests.el
12415            test/automated/replace-tests.el
12416            test/automated/simple-test.el
12417            test/automated/sort-tests.el
12418            test/automated/subr-tests.el
12419            test/automated/reftex-tests.el
12420            test/automated/sgml-mode-tests.el
12421            test/automated/tildify-tests.el
12422            test/automated/thingatpt.el
12423            test/automated/url-future-tests.el
12424            test/automated/url-util-tests.el
12425            test/automated/add-log-tests.el
12426            test/automated/vc-bzr.el
12427            test/automated/vc-tests.el
12428            test/automated/xml-parse-tests.el
12429            test/BidiCharacterTest.txt
12430            test/biditest.el
12431            test/cedet/cedet-utests.el
12432            test/cedet/ede-tests.el
12433            test/cedet/semantic-ia-utest.el
12434            test/cedet/semantic-tests.el
12435            test/cedet/semantic-utest-c.el
12436            test/cedet/semantic-utest.el
12437            test/cedet/srecode-tests.el
12438            test/cedet/tests/test.c
12439            test/cedet/tests/test.el
12440            test/cedet/tests/test.make
12441            test/cedet/tests/testdoublens.cpp
12442            test/cedet/tests/testdoublens.hpp
12443            test/cedet/tests/testfriends.cpp
12444            test/cedet/tests/testjavacomp.java
12445            test/cedet/tests/testnsp.cpp
12446            test/cedet/tests/testpolymorph.cpp
12447            test/cedet/tests/testspp.c
12448            test/cedet/tests/testsppcomplete.c
12449            test/cedet/tests/testsppreplace.c
12450            test/cedet/tests/testsppreplaced.c
12451            test/cedet/tests/testsubclass.cpp
12452            test/cedet/tests/testsubclass.hh
12453            test/cedet/tests/testtypedefs.cpp
12454            test/cedet/tests/testvarnames.c
12455            test/etags/CTAGS.good
12456            test/etags/ETAGS.good_1
12457            test/etags/ETAGS.good_2
12458            test/etags/ETAGS.good_3
12459            test/etags/ETAGS.good_4
12460            test/etags/ETAGS.good_5
12461            test/etags/ETAGS.good_6
12462            test/etags/a-src/empty.zz
12463            test/etags/a-src/empty.zz.gz
12464            test/etags/ada-src/2ataspri.adb
12465            test/etags/ada-src/2ataspri.ads
12466            test/etags/ada-src/etags-test-for.ada
12467            test/etags/ada-src/waroquiers.ada
12468            test/etags/c-src/a/b/b.c
12469            test/etags/c-src/abbrev.c
12470            test/etags/c-src/c.c
12471            test/etags/c-src/dostorture.c
12472            test/etags/c-src/emacs/src/gmalloc.c
12473            test/etags/c-src/emacs/src/keyboard.c
12474            test/etags/c-src/emacs/src/lisp.h
12475            test/etags/c-src/emacs/src/regex.h
12476            test/etags/c-src/etags.c
12477            test/etags/c-src/exit.c
12478            test/etags/c-src/exit.strange_suffix
12479            test/etags/c-src/fail.c
12480            test/etags/c-src/getopt.h
12481            test/etags/c-src/h.h
12482            test/etags/c-src/machsyscalls.c
12483            test/etags/c-src/machsyscalls.h
12484            test/etags/c-src/sysdep.h
12485            test/etags/c-src/tab.c
12486            test/etags/c-src/torture.c
12487            test/etags/cp-src/MDiagArray2.h
12488            test/etags/cp-src/Range.h
12489            test/etags/cp-src/burton.cpp
12490            test/etags/cp-src/c.C
12491            test/etags/cp-src/clheir.cpp.gz
12492            test/etags/cp-src/clheir.hpp
12493            test/etags/cp-src/conway.cpp
12494            test/etags/cp-src/conway.hpp
12495            test/etags/cp-src/fail.C
12496            test/etags/cp-src/functions.cpp
12497            test/etags/cp-src/screen.cpp
12498            test/etags/cp-src/screen.hpp
12499            test/etags/cp-src/x.cc
12500            test/etags/el-src/TAGTEST.EL
12501            test/etags/el-src/emacs/lisp/progmodes/etags.el
12502            test/etags/erl-src/gs_dialog.erl
12503            test/etags/f-src/entry.for
12504            test/etags/f-src/entry.strange.gz
12505            test/etags/f-src/entry.strange_suffix
12506            test/etags/forth-src/test-forth.fth
12507            test/etags/html-src/algrthms.html
12508            test/etags/html-src/index.shtml
12509            test/etags/html-src/software.html
12510            test/etags/html-src/softwarelibero.html
12511            test/etags/lua-src/allegro.lua
12512            test/etags/objc-src/PackInsp.h
12513            test/etags/objc-src/PackInsp.m
12514            test/etags/objc-src/Subprocess.h
12515            test/etags/objc-src/Subprocess.m
12516            test/etags/objcpp-src/SimpleCalc.H
12517            test/etags/objcpp-src/SimpleCalc.M
12518            test/etags/pas-src/common.pas
12519            test/etags/perl-src/htlmify-cystic
12520            test/etags/perl-src/kai-test.pl
12521            test/etags/perl-src/yagrip.pl
12522            test/etags/php-src/lce_functions.php
12523            test/etags/php-src/ptest.php
12524            test/etags/php-src/sendmail.php
12525            test/etags/prol-src/natded.prolog
12526            test/etags/prol-src/ordsets.prolog
12527            test/etags/ps-src/rfc1245.ps
12528            test/etags/pyt-src/server.py
12529            test/etags/tex-src/gzip.texi
12530            test/etags/tex-src/nonewline.tex
12531            test/etags/tex-src/testenv.tex
12532            test/etags/tex-src/texinfo.tex
12533            test/etags/y-src/atest.y
12534            test/etags/y-src/cccp.c
12535            test/etags/y-src/cccp.y
12536            test/etags/y-src/parse.c
12537            test/etags/y-src/parse.y
12538            test/indent/css-mode.css
12539            test/indent/js-indent-init-dynamic.js
12540            test/indent/js-indent-init-t.js
12541            test/indent/js-jsx.js
12542            test/indent/js.js
12543            test/indent/latex-mode.tex
12544            test/indent/modula2.mod
12545            test/indent/nxml.xml
12546            test/indent/octave.m
12547            test/indent/pascal.pas
12548            test/indent/perl.perl
12549            test/indent/prolog.prolog
12550            test/indent/ps-mode.ps
12551            test/indent/ruby.rb
12552            test/indent/scheme.scm
12553            test/indent/scss-mode.scss
12554            test/indent/sgml-mode-attribute.html
12555            test/indent/shell.rc
12556            test/indent/shell.sh
12557            test/redisplay-testsuite.el
12558            test/rmailmm.el
12559            test/automated/buffer-tests.el
12560            test/automated/cmds-tests.el
12561            test/automated/data-tests.el
12562            test/automated/finalizer-tests.el
12563            test/automated/fns-tests.el
12564            test/automated/inotify-test.el
12565            test/automated/keymap-tests.el
12566            test/automated/print-tests.el
12567            test/automated/libxml-tests.el
12568            test/automated/zlib-tests.el: Files Moved.
12570 2015-11-20  Michael Albinus  <michael.albinus@gmx.de>
12572         Rework file notifications, kqueue has problems with directory monitors
12574         * lisp/filenotify.el (file-notify-add-watch): Call the native
12575         add-watch function on the file, not on the dir.
12577         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
12578         about already deleted entries.
12580         * test/automated/auto-revert-tests.el
12581         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
12582         since this deletes the target file first.
12584         * test/automated/file-notify-tests.el (file-notify--test-event-test):
12585         Make stronger checks.
12586         (file-notify-test01-add-watch, file-notify-test02-events)
12587         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
12588         Rewrite in order to call file monitors but directory monitors.
12589         (file-notify-test06-many-events): Ler rename work in both directions.
12591 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
12593         Continie with pending events
12595         * src/kqueue.c (pending_events): Remove global variable.
12596         (kqueue_compare_dir_list): Create `write' event for not used
12597         pending events.
12598         (globals_of_kqueue): Remove initialization of pending_events.
12600 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
12602         Improve loops in file-notify-test06-many-events
12604         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
12605         Use `read-event' pauses for the `write-file' loops; otherwise
12606         events are lost in inotify and gfilenotify cases.
12608 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
12610         Handle more complex rename operation in kqueue
12612         * src/kqueue.c (pending_events): New variable.
12613         (kqueue_compare_dir_list): Handle more complex rename operation.
12614         (globals_of_kqueue): Initialize pending_events.
12616         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
12617         Adapt expected events in the `rename-file' case.
12618         (file-notify-test06-many-events-remote): Declare.
12620 2015-11-18  Wolfgang Jenkner  <wjenkner@inode.at>
12622         New test with a larger number of events.
12624         * test/automated/file-notify-tests.el (file-notify--test-with-events):
12625         Make timeout heuristically depend on the number of events.
12627         (file-notify-test06-many-events): Use it for new test.
12629 2015-11-18  Michael Albinus  <michael.albinus@gmx.de>
12631         Further fixes for kqueue.
12633         * lisp/filenotify.el (file-notify-callback): Raise also event if
12634         directory name matches.
12635         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
12637         * src/kqueue.c (kqueue_generate_event): Use watch_object as
12638         argument instead of ident.  Remove callback argument.  Adapt
12639         callees.  Check actions whether they are monitored flags.
12641         * test/automated/file-notify-tests.el (file-notify--test-library):
12642         New defun.
12643         (file-notify-test00-availability, file-notify-test02-events)
12644         (file-notify-test04-file-validity)
12645         (file-notify-test05-dir-validity): Use it.
12646         (file-notify-test02-events, file-notify-test04-file-validity): Add
12647         `read-event' calls between different file actions, in order to
12648         give the backends a chance to rais an event.  Needed especially
12649         for kqueue.  In case of deleting a directory, there are two
12650         `deleted' events.
12652 2015-11-17  Michael Albinus  <michael.albinus@gmx.de>
12654         Code cleanup of kqueue.c
12656         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
12657         (kqueue_compare_dir_list): Do not loop when calling
12658         directory_files_internal.  Remove checks for "." and "..", this is
12659         done in kqueue_directory_listing now.
12660         (Fkqueue_add_watch): Check for proper emacs_open flags.
12662 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
12664         Doc changes for kqueue
12666         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
12667         Fix some glitches in the example.
12669 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
12671         Finish implementation in kqueue.c
12673         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
12674         Simplify access to list.
12675         (kqueue_compare_dir_list): Simplify access to list.  Raise
12676         `delete' event if directory does not exist any longer.  Otherwise,
12677         wait until directory contents has changed.  Fix error in check.
12679 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
12681         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
12683 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
12685         More work on kqueue
12687         * lisp/filenotify.el (file-notify-callback): Handle also the
12688         `rename' event from kqueue.
12689         (file-notify-add-watch): Do not register an entry twice.
12691         * src/kqueue.c (kqueue_directory_listing): New function.
12692         (kqueue_generate_event): New argument FILE1.  Adapt callees.
12693         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
12695 2015-11-14  Michael Albinus  <michael.albinus@gmx.de>
12697         Implement directory events
12699         * lisp/filenotify.el (file-notify-handle-event)
12700         (file-notify-callback): Remove traces.
12702         * src/kqueue.c: Include <sys/time.h>.
12703         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
12704         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
12705         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
12706         Compute initial directory listing.  Close file descriptor in case
12707         of errors.
12708         (syms_of_kqueue): Declare Qcreate.
12710 2015-11-11  Wolfgang Jenkner  <wjenkner@inode.at>
12712         Build fixes for kqueue support.
12714         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
12715         flag.
12717         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
12718         kqueue on *BSD.
12720 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
12722         Continue kqueue implementation
12724         * lisp/filenotify.el (file-notify-handle-event)
12725         (file-notify-callback): Enable trace messages.
12727         * src/kqueue.c: Include also <sys/types.h>.
12728         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
12729         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
12730         (syms_of_kqueue): Add them.
12732 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
12734         Work on kqueue
12736         * lisp/filenotify.el (file-notify--library)
12737         (file-notify-descriptors, file-notify-callback)
12738         (file-notify-add-watch, file-notify-rm-watch)
12739         (file-notify-valid-p): Add kqueue support.
12741         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
12743 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
12745         Add kqueue support
12747         * configure.ac (--with-file-notification): Add kqueue.
12748         (top): Remove special test for "${HAVE_NS}" and
12749         ${with_file_notification}, this is handled inside gfilenotify
12750         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
12751         instead of library specific variables.
12753         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
12755         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
12757         * src/kqueue.c: New file.
12759         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
12761 2015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
12763         verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
12765         * verilog-mode.el (verilog-save-font-no-change-functions):
12766         Commentary and fix pre-Emacs 21 behavior.
12768 2015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
12770         Use obarray functions from obarray.
12772         * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
12773           abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
12774           clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
12775           delegate to obarray.el functions.
12776         * lisp/loadup.el: load obarray before abbrev
12777         * test/automated/abbrev-tests.el: new tests
12779 2015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
12781         epa.el: Add option to replace original text
12783         * lisp/epa.el (epa-replace-original-text): New user option.
12784         (Bug#21947)
12786 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
12788         Add interactive seek command.
12790         * lisp/mpc.el (mpc-cmd-seekcur): New function.
12791         (mpc-seek-current): New command.
12792         (mpc-mode-menu): Add entry for mpc-seek-current
12793         (mpc-mode-map): Bind mpc-seek-current to "g"
12795 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
12797         Fix issue where a new tempfile was created every refresh
12799         * lisp/mpc.el (mpc-format): Leave dir as relative path
12801 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
12803         * lisp/progmodes/cc-defs.el: Use with-silent-modifications
12805         (c-save-buffer-state): Use with-silent-modifications when available.
12806         (c--macroexpand-all): Check macroexpand-all directly rather than
12807         c--mapcan-status.
12809 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
12811         * lisp/loadup.el: Set max-lisp-eval-depth here
12813         * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
12814         (BYTE_COMPILE_FLAGS): Adjust accordingly.
12816 2015-11-17  João Távora  <joaotavora@gmail.com>
12818         Minor fix to comment indentation and typo in last commit
12820         * linum.el (linum-update-window): Fix comment indentation and a
12821         typo.
12823 2015-11-17  João Távora  <joaotavora@gmail.com>
12825         linum-mode plays more nicely with other margin-setting extensions
12827         linum.el will only modify the left margin if it needs to, and will
12828         only reset the it back to 0 if it guesses that no-one has touched that
12829         margin in the meantime.
12831         As such, this is a more of a workaround than an actual fix, but fixes
12832         the problems described in bug#20674 regarding the interaction with
12833         modes such as darkroom-mode and olivetti-mode.
12835         A similar fix was commited to nlinum.el in ELPA.git's
12836         e7f5f549fbfb740b911fb7f33b42381ecece56d8
12838         * linum.el (linum-delete-overlays): Restore margins more
12839         criteriously.
12840         (linum-update-window): Set margins more criteriously.
12842 2015-11-16  Daiki Ueno  <ueno@gnu.org>
12844         * lisp/image-mode.el: Support encrypted file
12846         (image-toggle-display-image): Read content from the buffer instead
12847         of the file, if the buffer holds a decrypted data.  (Bug#21870)
12849 2015-11-15  Juanma Barranquero  <lekktu@gmail.com>
12851         * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
12853 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
12855         * lisp/emacs-lisp/package.el: Fix a decoding issue
12857         (package--with-response-buffer): Use `url-insert-buffer-contents'.
12858         The previous code had some issues with decoding. Refactoring that
12859         function allows us to use the decoding from url-handlers while still
12860         treating both sync and async requests the same.
12862         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
12863         `url-insert-buffer-contents'.
12864         (url-insert-buffer-contents): New function
12866 2015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
12868         * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
12870         (verilog-save-buffer-state): Use with-silent-modifications when available.
12871         (verilog-save-font-no-change-functions): Don't bind
12872         before/after-change-functions if it's not needed.
12874 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
12876         * CONTRIBUTE: Remove information about feature freeze.
12878         Merge branch 'release-process-lowercase'
12880 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
12882         Document the release process
12884         * admin/notes/versioning: Add information about RC releases.
12885         * admin/release-process: Document the release process.
12886         * admin/authors.el (authors-ignored-files):
12887         * admin/README: Change FOR-RELEASE to release-process.
12888         * CONTRIBUTE:
12889         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
12891 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
12893         * admin/release-process: Rename from admin/FOR-RELEASE.
12895 2015-11-14  David Engster  <deng@randomsample.de>
12897         gitmerge: Fix git log command
12899         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
12900         only want commits from the branch that is to be merged.
12901         (gitmerge-setup-log-buffer): Use the same symmetric range as in
12902         `gitmerge-missing'.
12904 2015-11-14  David Engster  <deng@randomsample.de>
12906         gitmerge: Try to detect cherry-picks
12908         * admin/gitmerge.el (gitmerge-default-branch): Change to
12909         origin/emacs-25.
12910         (gitmerge-missing): Use symmetric difference ('...') between
12911         branch and master so that cherry-picks can be detected.
12913 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
12915         Increment Emacs version on master branch
12917         * lisp/cus-edit.el (customize-changed-options-previous-release):
12918         Increase previous version to 24.5.
12920         * configure.ac:
12921         * msdos/sed2v2.inp: Bump version to 25.1.50.
12923 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
12925         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
12926         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
12927         * README: Mention CONTRIBUTE.
12929 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
12931         Update verilog-mode.el to 2015-11-09-b121d60-vpo
12933         * verilog-mode.el (verilog-auto, verilog-delete-auto)
12934         (verilog-modi-cache-results, verilog-save-buffer-state)
12935         (verilog-save-font-no-change-functions): When internally suppressing
12936         change functions, use `inhibit-modification-hooks' and call
12937         `after-change-funtions' to more nicely work with user hooks.
12938         Reported by Stefan Monnier.
12939         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
12940         Create `verilog-delete-auto-buffer' to avoid double-calling
12941         fontification hooks.
12942         (verilog-restore-buffer-modified-p, verilog-auto)
12943         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
12944         set-buffer-modified-p.  Reported by Stefan Monnier.
12945         (verilog-diff-auto, verilog-diff-buffers-p)
12946         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
12947         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
12948         AUTOINST with unpacked dimensional parameters, bug981.  Reported by
12949         by Amol Nagapurkar.
12950         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
12951         properties inside internal structures.  No functional change
12952         intended.
12954 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
12956         Use generic dispatch for xref backends
12958         * lisp/progmodes/xref.el (xref-backend-functions):
12959         New variable.
12960         (xref-find-function): Remove.
12961         (xref-find-backend)
12962         (xref--etags-backend): New functions.
12963         (xref-identifier-at-point-function)
12964         (xref-identifier-completion-table-function): Remove.
12965         (xref-backend-definitions, xref-backend-references)
12966         (xref-backend-apropos, xref-backend-identifier-at-point)
12967         (xref-backend-identifier-completion-table):
12968         New generic functions.
12970         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
12971         Add `elisp--xref-backend' to the beginning of
12972         `xref-backend-functions', locally.  Delete references to
12973         removed functions and vars.
12974         (elisp-xref-find): Remove.
12975         (elisp--xref-backend): New function.
12976         (elisp--xref-find-references, elisp--xref-find-apropos)
12977         (elisp--xref-identifier-completion-table):
12978         Turn into appropriately named generic methods.
12980         * lisp/progmodes/etags.el (etags-xref-find): Remove.
12981         (xref-backend-identifier-completion-table)
12982         (xref-backend-references, xref-backend-definitions)
12983         (xref-backend-apropos): New generic methods.
12985 2015-11-13  Juri Linkov  <juri@linkov.net>
12987         Support rectangular regions for more commands
12989         * lisp/simple.el (region-extract-function): Handle the arg
12990         value ‘bounds’.
12991         (region-insert-function): New function.
12992         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
12993         If non-nil, operate on multiple chunks.
12994         (region-noncontiguous-p): New function.
12996         * lisp/rect.el: Add function rectangle--insert-region
12997         around region-insert-function.
12998         (extract-rectangle-bounds): New function.
12999         (rectangle--extract-region): Handle the arg value ‘bounds’.
13000         (rectangle--insert-region): New function.
13002         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
13003         around region-insert-function.
13004         (cua--extract-rectangle-bounds): New function.
13005         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
13007         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
13008         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
13009         (query-replace-regexp-eval, map-query-replace-regexp)
13010         (replace-string, replace-regexp): Use ‘use-region-p’.
13011         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
13012         (perform-replace): Add arg ‘region-noncontiguous-p’.
13013         If non-nil, operate on multiple chunks.
13015         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
13016         If non-nil, operate on multiple chunks.  (Bug#19829)
13018 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
13020         Handle multiple matches on the same line; add highlighting
13022         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
13023         column value in characters.
13024         (xref--collect-matches): Rename from `xref--collect-match'.
13025         Search for all matches in the hit line.  Add `highlight' face to
13026         the matched region in the summary.  Update both callers.
13028 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
13030         Replace xref-match-bounds with xref-match-length
13032         Relying on xref-location-marker to point to the beginning of the match
13034         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
13035         (xref-match-length): Add.
13036         (xref-make-match): Change the arguments.
13037         (xref--match-buffer-bounds): Remove.
13038         (xref-match-item): Store length, instead of end-column.
13039         (xref-pulse-momentarily)
13040         (xref--collect-match)
13041         (xref--query-replace-1): Update accordingly.
13042         (xref-query-replace): Ditto.  And check that the search results
13043         are up-to-date.
13045 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
13047         Merge from gnulib
13049         This incorporates:
13050         2015-11-13 xalloc-oversized: improve performance with GCC 5
13051         * lib/xalloc-oversized.h: Copy from gnulib.
13053 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
13055         Spruce up ftfont.c memory allocation
13057         * src/ftfont.c (setup_otf_gstring):
13058         Avoid O(N**2) behavior when reallocating.
13059         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
13060         reallocating buffers; this simplifies the code.  Do not trust
13061         mflt_run to leave the output areas unchanged on failure, as
13062         this isn’t part of its interface spec.
13064 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
13066         Port recent XCB changes to 64-bit ‘long int’
13068         For historical reasons, libX11 represents 32-bit values like Atoms as
13069         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
13070         do that, so adapt the recent XCB code to behave properly on 64-bit
13071         platforms.  Also, fix what appears to be a bug in the interpretation
13072         of xcb_get_property_value_length, at least on my Fedora platform
13073         which is running libxcb-1.11-5.fc21.
13074         * src/xfns.c (x_real_pos_and_offsets):
13075         * src/xterm.c (get_current_wm_state):
13076         xcb_get_property_value_length returns a byte count, not a word count.
13077         For 32-bit quantities, xcb_get_property_value returns a vector
13078         of 32-bit words, not of (possibly 64-bit) long int.
13080 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
13082         * src/undo.c (run_undoable_change): Now static.
13084 2016-01-30  Michael Albinus  <michael.albinus@gmx.de>
13086         Adapt Tramp version, do not merge with master
13088         * doc/misc/trampver.texi (trampver):
13089         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
13091 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13093         Remove support for ':timeout' from w32 tray notifications
13095         * src/w32fns.c (Fw32_notification_notify): Delete the code that
13096         supports ':timeout'.
13097         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
13098         with dbusbind.c when D-Bus is compiled in.
13100         * doc/lispref/os.texi (Desktop Notifications): Don't mention
13101         ':timeout'.
13103 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
13105         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
13106         (simple-test--transpositions): New macro.
13107         (simple-transpose-subr): New test.
13109 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
13111         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
13113 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
13115         * src/undo.c: Small fixes for previous change
13116         (run_undoable_change): Mark void argument list.
13117         (record_property_change): Remove unused variable `boundary'.
13119 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13121         Add a few more variables to redisplay--variables
13123         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
13124         and bidi-display-reordering to the list.
13126 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13128         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
13130 2015-11-13  Eli Barzilay  <eli@barzilay.org>
13132         Fix point positioning after transposing with negative arg
13134         * lisp/simple.el (transpose-subr): When invoked with a negative
13135         argument, move point to after the transposed text, like we do
13136         when invoked with a positive argument.  (Bug#21885)
13138 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13140         Fix last change in shr.el
13142         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
13143         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
13145 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13147         Fix last change
13149         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
13150         Don't DEFSYM tray notification symbols if D-Bus is being used.
13152 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13154         Another fix for MinGW64 and Cygwin builds due to notifications
13156         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
13157         being compiled into Emacs.
13158         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
13159         Sw32_notification_notify and Sw32_notification_close if the code
13160         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
13162 2016-01-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13163 2015-11-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13165         Remove intern calls and XXX comments from Fx_export_frames
13167         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
13168         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
13169         for consistency with image types.  Remove XXX comments.
13170         (syms_of_xfns) <Qpdf>: DEFSYM it.
13172 2016-01-30  Eric Hanchrow  <eric.hanchrow@gmail.com>
13173 2015-11-12  Eric Hanchrow  <eric.hanchrow@gmail.com>
13175         shr: don't invoke unbound function (Bug#21895)
13177         * lisp/net/shr.el (have-fringes-p): New function.
13178         (shr-insert-document, shr-fill-text): Use it.
13180 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
13182         * test/automated/keymap-tests.el: Fix test to make it repeatable
13184         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
13185         entry to its initial value to make the test repeatable in interactive
13186         sessions (assuming it doesn't fail and crashes Emacs, of course).
13188 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
13190         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
13192 2016-01-30  Phillip Lord  <phillip.lord@russet.org.uk>
13194         : Tests for undo-auto functionality.
13195 2015-11-12  Artur Malabarba  <bruce.connor.am@gmail.com>
13197         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
13198         Small fix.
13200 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
13202         The heuristic that Emacs uses to add an `undo-boundary' has been
13203         reworked, as it interacts poorly with functions on `post-command-hook'
13204         or `after-change-functions'.
13206         * lisp/simple.el: New section added.
13207         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
13208         (self_insert_command): Calls simple.el to amalgamate.
13209         (delete_char): Calls simple.el to amalgamate.
13210         * src/keyboard.c (last_undo_boundary): Removed.
13211         * src/undo.c (run_undoable_change): New function.
13213 2015-11-12  Juri Linkov  <juri@linkov.net>
13215         Bind [?\S-\ ] to previous line command in Dired-like modes.
13217         * lisp/arc-mode.el (archive-mode-map):
13218         * lisp/dired.el (dired-mode-map):
13219         * lisp/proced.el (proced-mode-map):
13220         * lisp/vc/vc-dir.el (vc-dir-mode-map):
13221         Bind [?\S-\ ] to previous line command.
13222         (Bug#20790)
13224 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
13226         Fix the MinGW64 and Cygwin-w32 builds
13228         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
13229         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
13230         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
13231         which cause trouble with MinGW42 headers.  Ifdef away tray
13232         notifications code for Cygwin.  Reported by Andy Moreton
13233         <andrewjmoreton@gmail.com>.
13235 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
13237         Enable sorting of JSON object keys when encoding
13239         * lisp/json.el (json-encoding-object-sort-predicate): New variable
13240         for specifying a sorting predicate for JSON objects during encoding.
13241         (json--plist-to-alist): New utility function.
13242         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
13243         are to be sorted.
13244         (json-encode-alist): Sort output by
13245         `json-encoding-object-sort-predicate, when set.
13246         (json-encode-plist): Re-use `json-encode-alist' when object keys are
13247         to be sorted.
13248         (json-pretty-print-buffer-ordered): New command to pretty print the
13249         buffer with object keys sorted alphabetically.
13250         (json-pretty-print-ordered): New command to pretty print the region
13251         with object keys sorted alphabetically.
13253         * test/automated/json-tests.el (test-json-plist-to-alist)
13254         (test-json-encode-plist, test-json-encode-hash-table)
13255         (test-json-encode-alist-with-sort-predicate)
13256         (test-json-encode-plist-with-sort-predicate): New tests.
13258         * etc/NEWS: Add an entry for the new commands.
13260 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
13262         * test/automated/keymap-tests.el: New test file.
13264 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
13266         Speed up x_real_pos_and_offsets using XCB
13268         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
13269         all X calls, and pipeline requests when possible, collecting results
13270         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
13272 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
13274         Enable use of XCB for checking window manager state
13276         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
13277         of XGetWindowProperty plus error-catching, since we can explicitly
13278         check for errors in the XCB version.  This eliminates 3 XSync calls on
13279         top of the round-trip actually fetching the information.
13281 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
13283         Detect XCB and save a connection handle
13285         * configure.ac: If using X11, check for XCB libraries and header.
13286         * src/Makefile.in (XCB_LIBS): Define.
13287         (LIBX_EXTRA): Include it.
13289         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
13290         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
13291         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
13293 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
13295         Reduce some data dependencies between X calls
13297         Gains nothing in the traditional-Xlib code, but more closely aligns
13298         with how the XCB version will work.
13300         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
13301         send coordinates (0,0) to the X server and add in the real coordinates
13302         after getting the response.  Move XGetGeometry for outer window inside
13303         error-trapping block.  Use DPY variable more, since it's available.
13305 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
13307         Use color cache for creating bitmap
13309         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
13310         Set attributes to use the caching color allocator.  Initialize and
13311         free the cache.
13313 2015-11-12  Eli Barzilay  <eli@barzilay.org>
13315         Add "^" to the interactive specs of `dired-next/previous-line'
13317         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
13318         to bind these commands to the arrow keys, and that means that they work
13319         better with a "^" in the `interactive' declaration so selection works
13320         as expected.
13322 2016-01-30  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13324         Sync with soap-client repository, version 3.0.2
13326         * lisp/net/soap-client.el: Bump version to 3.0.2.
13328         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
13330         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
13331         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
13333         * lisp/net/soap-client.el: Support Emacs versions that do not have
13334         define-error.
13336         * lisp/net/soap-inspect.el: Remove version header.
13338         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
13339 2015-11-11  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13341         Sync with soap-client repository, version 3.0.2
13343         * soap-client.el: Bump version to 3.0.2.
13345         * soap-client.el (soap-warning): Use format, not format-message.
13347         * soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
13348         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
13350         * soap-client.el: Support Emacs versions that do not have
13351         define-error.
13353         * soap-inspect.el: Remove version header.
13355         * soap-client.el, soap-inspect.el, jira2.el: Fix first line header
13356         format.
13358 2015-11-11  Alan Mackenzie  <acm@muc.de>
13360         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
13362         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
13363         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
13364         (c-guess-basic-syntax):
13365         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
13366         (c-get-fallback-scan-pos): "New" function (existed several years ago).
13367         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
13368         c-get-fallback-scan-pos.
13369         (c-parse-state-1): Handle 'BOD strategy.
13371         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
13372         (c-font-lock-fontify-region): Remove bindings of
13373         open-paren-in-column-0-is-defun-start to nil.
13375         * doc/misc/cc-mode.texi (Performance Issues)
13376         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
13378 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
13380         * lisp/obarray.el: Fix shadowed variables.
13381         (obarray-map, obarray-remove, obarray-put, obarray-get):
13382         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
13384 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
13386         Avoid error in submitting a form with EWW
13388         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
13389         CHUNK to be nil.  (Bug#21881)
13391 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
13393         Rename seq-p and map-p to seqp and mapp
13395         * lisp/emacs-lisp/seq.el (seqp): New name.
13396         * lisp/emacs-lisp/map.el (mapp): New name.
13397         * doc/lispref/sequences.texi: Update the documentation for seqp.
13398         * test/automated/map-tests.el: Update the tests for mapp.
13400 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
13402         Rename obarray-p to obarrayp
13404         * lisp/obarray.el (obarrayp): New name.
13405         * test/automated/obarray-tests.el: Update the tests.
13407 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
13409         Rename obarray-foreach to obarray-map
13411         * lisp/obarray.el (obarray-map): New name.
13412         * test/automated/obarray-tests.el: Update the corresponding tests.
13414 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
13416         New file with obarray functions.
13418         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
13419         * test/automated/obarray-tests.el: New file.
13421 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
13423         Implement tray notifications for MS-Windows
13425         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
13426         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
13427         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
13428         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
13429         (EMACS_NOTIFICATION_MSG): New macros.
13430         (NI_Severity): New enumeration.
13431         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
13432         (delete_tray_notification, Fw32_notification_notify)
13433         (Fw32_notification_close): New functions.
13434         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
13435         keywords used by w32-notification-notify.
13437         * doc/lispref/os.texi (Desktop Notifications): Describe the native
13438         w32 tray notifications.
13440 2016-01-30  Alan Mackenzie  <acm@muc.de>
13442         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
13444         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
13445         Windows" and new @defun selected-window-group.
13446         (Window Start and End): Describe new &optional parameter GROUP and
13447         ...-group-function for window-start, window-end, set-window-start, and
13448         pos-visible-in-window-p.
13449         (Textual Scrolling) Describe the same for recenter.
13450         doc/lispref/positions.texi (Screen Lines): Describe the same for
13451         move-to-window-line.
13453         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
13454         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
13455         new optional parameter "group".  At the beginning of each, check whether the
13456         corresponding ...-group-function is set to a function, and if so execute this
13457         function in place of the normal processing.
13458         (syms_of_window): Define symbols for the six new variables below.
13459         (window-start-group-function, window-end-group-function)
13460         (set-window-start-group-function, recenter-group-function)
13461         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
13462         New permanent local buffer local variables.
13463         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
13464         Fpos_visible_in_window_p.
13466         lisp/window.el (selected-window-group-function): New permanent local buffer
13467         local variable.
13468         (selected-window-group): New function.
13470         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
13471         enable, kill them at mode disable.  Add/remove follow-after-change to/from
13472         after-change-functions.
13473         (follow-start-end-invalid): New variable.
13474         (follow-redisplay): Manipulate follow-start-end-invalid.
13475         (follow-after-change, follow-window-start, follow-window-end)
13476         (follow-set-window-start, follow-pos-visible-in-window-p)
13477         (follow-move-to-window-line, follow-sit-for): New functions.
13479         lisp/isearch.el (isearch-call-message): New macro.
13480         (isearch-update, with-isearch-suspended, isearch-del-char)
13481         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
13482         (with-isearch-suspended): Rearrange code such that isearch-call-message is
13483         invoked before point is moved.
13484         (isearch-message): Add comment about where point must be at function call.
13485         (isearch-search): Remove call to isearch-message.
13486         (isearch-lazy-highlight-window-group): New variable.
13487         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
13488         the battery of tests to ...
13489         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
13490         Note: (sit-for 0) is still called.
13491         (isearch-lazy-highlight-update): Check membership of
13492         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
13493         property.
13494         (isearch-update, isearch-done, isearch-string-out-of-window)
13495         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
13496         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
13497         (isearch-lazy-highlight-update): Call the six amended primitives (see
13498         src/window.c above) with the new `group' argument set to t, to cooperate
13499         with Follow Mode.
13501 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
13503         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
13505         * lisp/net/tramp.el (tramp-handle-file-equal-p)
13506         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
13507         Harvey Chapman <hchapman@3gfp.com>.
13509         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
13510         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
13511         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
13512         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
13514 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
13516         * CONTRIBUTE: Encourage adding tests.
13518         Based on this post from John Wiegley:
13520           From: "John Wiegley" <johnw@newartisans.com>
13521           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
13522           To: Juanma Barranquero <lekktu@gmail.com>
13523           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
13524               emacs-devel <emacs-devel@gnu.org>
13525           Date: Wed, 28 Oct 2015 18:45:29 -0700
13526           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
13528           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
13530 2015-11-10  David Reitter  <david.reitter@gmail.com>
13532         Avoid creating notification objects when possible
13534         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
13535         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
13536         functions that do not require a notification object.  When needed,
13537         define NSWindowDidEnterFullScreenNotification to allow for compilation
13538         on OS X 10.6.8.
13540 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
13542         Move INTEGER_TO_CONS body out of .h file
13544         * src/data.c (INTBIG_TO_LISP): New macro, with most
13545         of the contents of the old INTEGER_TO_CONS.
13546         (intbig_to_lisp, uintbig_to_lisp): New functions.
13547         * src/lisp.h (INTEGER_TO_CONS):
13548         Simplify by using EXPR_SIGNED and the new functions.
13549         This shrinks code size a bit, and makes it easier to
13550         put a breakpoint on handling of large integers.
13552 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
13554         Merge from gnulib
13556         This incorporates:
13557         2015-11-10 intprops: new public macro EXPR_SIGNED
13558         2015-11-10 intprops: fix typo in clang port
13559         * lib/intprops.h: Copy from gnulib.
13561 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
13563         Spelling fixes
13565         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
13566         Fix misspelling in output.
13568 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
13570         * doc/lispref/variables.texi (Directory Local Variables):
13571         Document dir-locals wildcards.
13573         * lisp/files.el (dir-locals-file): Point to Info node.
13575         * doc/emacs/custom.texi (Directory Variables):
13576         Document dir-locals wildcards.
13578         * etc/NEWS: Document new functionality.
13580 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
13582         * lisp/files.el: Don't allow customization of dir-locals sorting.
13583         In retrospect, this is not a good idea for the same reason that
13584         `dir-locals-file' is a defconst, because it is important that this
13585         behaviour be "uniform across different environments and users".
13586         Sure, the user can still change the sorting with a hack, but we
13587         shouldn't encourage them to change it.
13588         (dir-locals--all-files): Return list in the order returned by
13589         `file-expand-wildcards'.
13590         (file-expand-wildcards): Document the sorting predicate used.
13591         (dir-locals-sort-predicate): Delete variable.
13593 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
13595         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
13597         * lisp/isearch.el (search-default-regexp-mode): Change default value.
13599 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
13601         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
13602         `locate-dominating-file' will now keep looking if the files it finds in
13603         a given directory are unreadable (or not files).
13605 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
13607         * lisp/files.el (dir-locals-file): Allow wildcards.
13608         (dir-locals-find-file, dir-locals-collect-variables)
13609         (dir-locals-read-from-file): Update accordingly.
13610         (hack-dir-local-variables): Rename a local variable.
13612         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
13614         * lisp/help-fns.el (describe-variable): Update accordingly.
13616         * .gitignore: Add .dir-locals?.el.
13618 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
13620         * lisp/emacs-lisp/map.el (map-merge-with): New function.
13622         * test/automated/map-tests.el (test-map-merge-with): New test.
13624 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
13626         Fix some recently-perturbed bookmark autoloads
13628         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
13629         (bookmark-set): Restore autoload.
13630         (bookmark-set-no-overwrite): Add autoload.
13632         Thanks to Juanma Barranquero for noticing the autoload problems
13633         introduced by my recent commit adding/changing the above functions
13634         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
13636 2016-01-30  Noah Friedman  <friedman@splode.com>
13638         (ydump-buffer): Handle case where gap is at the start of buffer.
13639         I don't recall if older versions of gdb were less strict but you
13640         cannot dump a 0-length range in gdb 7.9.1.
13642 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
13643 2015-11-09  Noah Friedman  <friedman@splode.com>
13645         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
13646         the start of buffer.  I don't recall if older versions of gdb were
13647         less strict but you cannot dump a 0-length range in gdb 7.9.1.
13649 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
13651         * lisp/progmodes/project.el: Update Commentary.
13653         Merge branch 'project-next'
13655 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
13657         Fold `project-ask-user' into `project-current'
13659         * lisp/progmodes/project.el (project-find-functions): Remove
13660         `project-ask-user'.
13661 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
13663         Fold `project-ask-user' into `project-current'
13665         * lisp/progmodes/project.el (project-find-functions):
13666         Remove `project-ask-user'.
13667         (project-ask-user): Remove function and the corresponding
13668         `project-roots' implementation.
13669         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
13670         user in case there's no project in the current directory.  Update
13671         all callers.
13673 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
13675         When VC detects a conflict, specify which file
13677         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
13678         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
13679         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
13680         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
13681         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
13682           to display a standard message that specifies the conflicted file.
13684         Before this change, the message VC used for indicating a conflicted
13685         file was just "There are unresolved conflicts in this file" without
13686         naming the file (and this language was duplicated in several places).
13687         After this change, it's "There are unresolved conflicts in file FOO"
13688         (and this language is now centralized in one function in vc.el).
13690         Justification: It's important for the message to name the conflicted
13691         file because the moment when VC realizes a file is conflicted does not
13692         always come interactively.  For example, some people automatically
13693         find a set of Org Mode files on startup, and may keep those .org files
13694         under version control.  If any of the files are conflicted, the user
13695         just sees some messages fly by, and might later check the "*Messages*"
13696         buffer to find out what files were conflicted.  I'm not saying this
13697         happened to me or anything; it's a purely hypothetical example.
13699 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
13701         Fix assertion violation in define-key
13703         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
13704         objects.  Reported by Drew Adams <drew.adams@oracle.com>
13705         and Juanma Barranquero <lekktu@gmail.com>.
13707 2015-11-09  Dima Kogan  <dima@secretsauce.net>
13709         Fix a memory leak in GC of font cache
13711         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
13712         entities if some of the fonts it references are marked.  This
13713         plugs a memory leak.  (Bug#21556)
13715 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
13717         Use INT_ADD_WRAPV etc. to check integer overflow
13719         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
13720         * src/buffer.c (record_overlay_string, overlay_strings):
13721         * src/casefiddle.c (casify_object):
13722         * src/ccl.c (Fccl_execute_on_string):
13723         * src/character.c (char_width, c_string_width, lisp_string_width)
13724         (count_size_as_multibyte, string_escape_byte8):
13725         * src/coding.c (coding_alloc_by_realloc, produce_chars):
13726         * src/data.c (arith_driver):
13727         * src/dispnew.c (realloc_glyph_pool, init_display):
13728         * src/editfns.c (styled_format):
13729         * src/fns.c (Ffillarray):
13730         * src/ftfont.c (ftfont_shape_by_flt):
13731         * src/gnutls.c (gnutls_hex_string):
13732         * src/gtkutil.c (get_utf8_string):
13733         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
13734         * src/keymap.c (Fkey_description):
13735         * src/lisp.h (SAFE_ALLOCA_LISP):
13736         * src/term.c (encode_terminal_code):
13737         * src/tparam.c (tparam1):
13738         * src/xselect.c (x_property_data_to_lisp):
13739         * src/xsmfns.c (smc_save_yourself_CB):
13740         * src/xterm.c (x_term_init):
13741         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
13742         more-complicated code involving division and/or
13743         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
13744         subtraction and/or INT_ADD_OVERFLOW.
13745         * src/casefiddle.c (casify_object): Simplify multibyte size check.
13746         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
13747         * src/data.c (arith_driver): Also check for division overflow,
13748         as that’s now possible given that the accumulator can now contain
13749         any Emacs integer.
13750         * src/lisp.h (lisp_word_count): Remove; no longer used.
13752 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
13753 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
13755         Make sure that the ignore file exists
13757         * lisp/vc/vc.el (vc-default-ignore-completion-table):
13758         Make sure that the ignore file exists.
13760 2016-01-30  Michael Sperber  <mike@xemacs.org>
13762         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
13763 2015-11-08  Michael Sperber  <mike@xemacs.org>
13765         * gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
13766         `gnus-summary-delete-article` in a way that also works on XEmacs.
13768 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
13770         Add support for retrieving paths to JSON elements
13772         Add support for retrieving the path to a JSON element. This can for
13773         instance be useful to retrieve paths in deeply nested JSON
13774         structures.
13776         * lisp/json.el (json-pre-element-read-function)
13777         (json-post-element-read-function): New variables to hold pre- and post
13778         read callback functions for `json-read-array' and `json-read-object'.
13779         (json--path): New variable used internally by `json-path-to-position'.
13780         (json--record-path, json--check-position): New functions used
13781         internally by `json-path-to-position'.
13782         (json-path-to-position): New function for retrieving the path to a
13783         JSON element at a given position.
13784         (json-read-object, json-read-array): Call
13785         `json-pre-element-read-function' and `json-post-element-read-function'
13786         when set.
13788         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
13789         (test-json-path-to-position-with-arrays)
13790         (test-json-path-to-position-no-match): New tests for
13791         `json-path-to-position'.
13793 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
13795         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
13797         This really should been part of my previous commit
13798         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
13800 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
13802         Offer non-overwrite bookmark setter (Bug#15746)
13804         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
13805         what `bookmark-set' used to do, but with more choices for overwrite
13806         vs push, and with minor changes to the interactive prompt format.
13807         (bookmark-set): Rewrite as wrapper around above.
13808         If overwriting, inform the user of that in the prompt.
13809         (bookmark-set-no-overwrite): New function, also done as wrapper.
13810         Bind to "M" in `ctl-x-r-map' autoloads.
13811         (bookmark-map): Similarly bind "M" here.
13813 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
13815         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
13817 2015-11-08  Alan Modra  <amodra@gmail.com>
13819         ELF unexec: Don't insert a new section
13821         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
13822         don't need to mess with symbol st_shndx, or section sh_link and
13823         sh_info.
13825         This does lead to eu-elflint complaints about symbols defined in .bss
13826         with a needed version, because normally it is undefined symbols that
13827         have needed versions;  Defined symbols have version definitions.
13828         The exception is symbols defined by the linker in .dynbss for
13829         variables copied from a shared library in order to avoid text
13830         relocations, with copy relocs to copy their initial values from the
13831         shared library.  These symbols are both defined and have needed
13832         versions, and eu-elflink only expects to see them in SHT_NOBITS
13833         sections.  Of course there is no real problem with having such symbols
13834         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
13836         * src/unexelf.c: Delete outdated comments.
13837         (PATCH_INDEX): Delete.
13838         (find_section): Delete.
13839         (unexec): Don't add a new section.  Instead reuse the last bss
13840         section, extending it to cover dumped data.  Make bss sections
13841         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
13842         st_shndx.  Rename bss sections.
13844 2015-11-08  Alan Modra  <amodra@gmail.com>
13846         ELF unexec: Drive from PT_LOAD header rather than sections
13848         This rewrites bss handling in the ELF unexec code.  Finding bss
13849         sections by name results in complicated code that
13850         - does not account for all names of possible bss sections,
13851         - assumes specific ordering of bss sections,
13852         - can wrongly choose a SHT_NOBITS section not in the bss segment,
13853         - incorrectly calculates bss size (no accounting for alignment gaps),
13854         - assumes .data and .bss are in the same segment.
13856         All of these problems and more are solved by finding the bss segment
13857         in PT_LOAD headers, ie. the address range included in p_memsz but not
13858         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
13859         in that address range.
13861         * src/unexelf.c: Delete old ppc comment.
13862         (OLD_PROGRAM_H): Define.
13863         (round_up): Delete.
13864         (unexec): Don't search for bss style sections by name.  Instead,
13865         use the last PT_LOAD header address range covered by p_memsz
13866         but not p_filesz and match any SHT_NOBITS section in that
13867         address range.  Simplify initialization of section header vars.
13868         Don't assume that section headers are above bss segment.  Move
13869         copying of bss area out of section loop.  Align .data2 section
13870         to 1, since it now covers the entire bss area.  For SHT_NOBITS
13871         sections in the bss segment, leave sh_addr and sh_addralign
13872         unchanged, but correct sh_offset.  Clear memory corresponding
13873         to SHT_NOBITS .plt section.  Delete comment and hacks for
13874         sections partly overlapping bss range now that the full range
13875         is properly calculated.  Delete now dead .sbss code.
13876         (Bug#20614)
13878 2015-11-08  Alan Modra  <amodra@gmail.com>
13880         ELF unexec: R_*_NONE relocs
13882         These should be ignored on all targets.
13884         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
13885         not just Alpha.  Comment on reloc size assumption.
13887 2015-11-08  Alan Modra  <amodra@gmail.com>
13889         ELF unexec: _OBJC_ symbols in bss sections
13891         This code assumed that there was only one bss section.  Rather than
13892         checking for a particular index, check the section type.  Also, handle
13893         the possibility that the section was SHT_NOBITS originally and is
13894         unchanged, in which case no clearing is needed (and sh_offset isn't
13895         necessarily valid, which can lead to a wild memset).
13897         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
13898         bss sections.
13900 2015-11-08  Alan Modra  <amodra@gmail.com>
13902         ELF unexec: Symbol table patching
13904         No st_shndx value larger than SHN_LORESERVE should be changed.
13905         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
13906         SHN_LORESERVE.  Error on SHN_XINDEX.
13908 2015-11-08  Alan Modra  <amodra@gmail.com>
13910         ELF unexec: Merge Alpha and MIPS COFF debug handling
13912         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
13913         Don't find .mdebug section index, find the section in the loop.
13914         Allow for unlikely possibility that .mdebug is located at sh_offset
13915         before bss segment, by calculating move from difference in
13916         sh_offset rather than just assuming new_data2_size.  Simplify
13917         cbLineOffset handling.
13919 2015-11-08  Alan Modra  <amodra@gmail.com>
13921         ELF unexec: Tidy code
13923         Separate out some of the more mechanical changes so following patches
13924         are smaller.
13926         * src/unexelf.c (unexec): Rearrange initialization of program
13927         header vars.  Use pointer vars in loops rather than indexing
13928         section header array via macros.  Simplify _OBJC_ sym code
13929         and reloc handling code.
13931 2015-11-08  Alan Modra  <amodra@gmail.com>
13933         ELF unexec: Correct section header index
13935         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
13936         it should have been using "NEW_SECTION_H (nn)" to find the name of the
13937         section currently being processed.  Of course, before the bss
13938         sections, n and nn have the same value, so this doesn't matter except
13939         in the case of .sbss.  For .sbss this probably meant .bss (most likely
13940         the next section) was copied from memory.  A later patch removes the
13941         bogus .sbss handling anyway.
13943         * src/unexelf.c (unexec): Use correct index to look up names.
13945 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
13947         Fix Bug#21841
13949         * lisp/filenotify.el (file-notify--rm-descriptor):
13950         Use `descriptor' instead of computing its value.
13951         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
13952         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
13953         (Bug#21841)
13955 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
13957         Remove dirs in vc project roots from the the vc project library roots
13959         * lisp/progmodes/project.el (project-library-roots):
13960         Remove directories inside the project roots from the result.
13961         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
13963 2015-11-07  Dmitry Gutov  <dgutov@yandex.ru>
13965         Move and rename xref-find-regexp to the project package
13967         * lisp/progmodes/project.el (project-find-regexp)
13968         (project--read-regexp)
13969         (project--find-regexp-in): New functions.
13971         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
13972         xref--show-xrefs.  Use in existing callers in place of that
13973         function.
13974         (xref--show-xrefs): Only do the "show" part.
13975         (xref-find-regexp): Rename, more or less, to
13976         project-or-libraries-find-regexp.
13978 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
13980         Abolish temporary buffer management for xref
13982         * lisp/progmodes/xref.el (xref--temporary-buffers)
13983         (xref--current)
13984         (xref--inhibit-mark-current)
13985         (xref--mark-selected): Remove.  Remove all references.
13986         (xref--show-xrefs): Do not construct the
13987         list of the temporary buffers, nor pass it along.
13989 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
13991         Rename "search path" to "library roots"
13993         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
13994         of the elements from CL-LIST1.
13996         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
13997         Update WRT to the above change.
13999         * lisp/progmodes/project.el (project-search-path-function): Rename
14000         to project-library-roots-function, update the documentation and
14001         references.
14002         (project-search-path): Likewise, to project-library-roots.
14003         (project-roots): Clarify documentation.
14004         (project-vc-search-path): Likewise, to project-vc-library-roots.
14005         (project-library-roots): In addition to the renames, thread the
14006         results through file-name-as-directory.
14007         (project-prune-directories): Accept a variable number of
14008         arguments.  Rename to project-combine-directories.
14009         (project-subtract-directories): New function.
14011         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
14012         Append project-roots and project-library-roots together.
14014         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
14016 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
14018         Prefer xpalloc to doubling buffers by hand
14020         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
14021         (read1): Use it for simplicity.
14022         * src/macros.c (store_kbd_macro_char):
14023         * src/minibuf.c (read_minibuf_noninteractive):
14024         * src/term.c (encode_terminal_code):
14025         * src/xrdb.c (magic_db):
14026         Prefer xpalloc to growing buffers by hand.
14027         This doesn’t fix any bugs, but simplifies the code a bit.
14029 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
14031         Merge from gnulib
14033         This incorporates:
14034         2015-11-05 timespec-sub: fix overflow bug; add tests
14035         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
14036         2015-11-03 intprops: add parentheses
14037         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
14038         Copy from gnulib.
14040 2015-11-07  David Reitter  <david.reitter@gmail.com>
14042         Provide NS notification objects where required to eliminate warnings
14044         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
14045         Call notification functions with notification objects
14046         as per delegate APIs.
14048 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
14050         Add test for bug #21824
14052         * test/automated/buffer-tests.el: New file.
14053         (overlay-modification-hooks-message-other-buf): New test.
14055 2015-11-07  Kelvin White  <kwhite@gnu.org>
14057         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
14059 2015-11-07  David Reitter  <david.reitter@gmail.com>
14061         Ignore fullscreen exit notifications on NS when frame is dead
14063         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
14064         (windowDidExitFullScreen:): Return if frame is dead.
14065         These functions may be called when a fullscreen frame
14066         is closed; they are called before, not after.
14068         May address Bug#21428.
14070 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
14072         Speed up lookup in redisplay--variables
14074         * lisp/frame.el (redisplay--variables): Make it a hash-table.
14076         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
14077         as a hash-table.  This speeds up this function by an order of
14078         magnitude: where previously a setq was slowed down by 100% by
14079         introducing the maybe_set_redisplay test, it is now only 5%
14080         slower.
14081         (syms_of_xdisp) <redisplay--variables>: Doc fix.
14083 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
14085         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
14087         The defsubst was being created as:
14088             (cl-defsubst name (args) ("DOC") ...)
14090         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
14091         Add test.
14093 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
14095         Update doc string of hexl-mode
14097         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
14099 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
14101         Fix error in copy-abbrev-table
14103         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
14104         property of the abbrev-table.  (Bug#21828)
14106         * test/automated/abbrev-tests.el: New file.
14108 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
14110         Add test to auto-revert-tests.el for Bug#21841
14112         * test/automated/auto-revert-tests.el
14113         (auto-revert-test01-auto-revert-several-files): New test.
14114         (auto-revert-test02-auto-revert-tail-mode)
14115         (auto-revert-test03-auto-revert-mode-dired): Rename them.
14117 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
14119         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
14121 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
14123         In x_consider_frame_title don't set title of tooltip frames
14125         * src/xdisp.c (x_consider_frame_title): Return immediately for
14126         tooltip frames to avoid displaying empty tooltips.
14128 2015-11-06  Anders Lindgren  <andlind@gmail.com>
14130         Fixed NextStep fullscreen problem (bug#21770).
14132         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
14133         fullscreen frames.
14135 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
14137         Ensure redisplay after evaluation
14139         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
14140         Revert last change.
14141         * lisp/frame.el (redisplay--variables): Populate the
14142         redisplay--variables list.
14143         * src/xdisp.c (maybe_set_redisplay): New function.
14144         (syms_of_xdisp) <redisplay--variables>: New variable.
14145         * src/window.h (maybe_set_redisplay): Declare prototype.
14146         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
14148 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
14150         * test/automated/subr-tests.el (subr-test-when): Fix again.
14152 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
14154         Don't invoke overlay modification hooks in wrong buffer
14156         * src/buffer.c (report_overlay_modification): When called with
14157         AFTER non-zero, don't invoke overlay modification hooks if the
14158         buffer recorded in last_overlay_modification_hooks is different
14159         from the current buffer.  (Bug#21824)
14161 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
14163         * admin/notes/repo: Fix a few obsolete references to Bazaar.
14165 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
14167         * test/automated/subr-tests.el (subr-test-when): Fix test.
14169 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
14171         Avoid division by zero crash observed by Yuan MEI
14173         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
14175         * src/dispnew.c (required_matrix_height, required_matrix_width):
14176         Avoid division by zero.
14177         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
14178         dpyinfo->smallest_char_width to 1.
14180 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
14182         Ensure redisplay after "C-x C-e"
14184         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
14185         redisplay happens to account for any side effects of the evaluated
14186         sexp.  (Bug#21835)
14188 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
14190         Skip some file notification tests for cygwin
14192         * test/automated/file-notify-tests.el (file-notify--test-with-events):
14193         Remove argument TIMEOUT.  Adapt all callees.
14194         (file-notify-test02-events, file-notify-test04-file-validity):
14195         Skip for cygwin.  (Bug#21804)
14197 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
14199         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
14201 2015-11-05  Daiki Ueno  <ueno@gnu.org>
14203         Suppress redundant Pinentry startup messages
14205         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
14206         * lisp/epg.el: Declare `pinentry-start'.
14207         (epg--start): Call `pinentry-start' with QUIET argument set.
14209 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
14211         * doc/emacs/ack.texi (Acknowledgments): Updates.
14213 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
14215         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
14216         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
14218 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
14220         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
14221         Add prettification support for \times.
14223 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
14225         * test/automated/process-tests.el: Skip tests when bash is unavailable.
14226         (process-test-sentinel-accept-process-output)
14227         (process-test-sentinel-sit-for): skip-unless bash executable found.
14229 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
14231         Add test for bug #21831
14233         * test/automated/process-tests.el
14234         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
14235         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
14237 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
14239         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
14241         (eieio--generic-static-object-generalizer): Fix typo.
14242         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
14243         like the underlying cause of bug#17852 was fixed in the mean time.
14245 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
14247         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
14249         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
14250         It breaks bootstrapping (duh).
14252 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
14254         * lisp/files.el (report-errors): Obsolete.
14256         (normal-mode, hack-local-variables, dir-locals-find-file):
14257         Use `with-demoted-errors' instead.
14259 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
14261         * lisp/subr.el (when): Use `macroexp-progn'.
14263         * test/automated/subr-tests.el (subr-test-when): New test.
14265 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
14267         * lisp/progmodes/xref.el: Doc fixes.
14268         (xref-make-file-location, xref-make-buffer-location, xref-make)
14269         (xref-make-bogus-location, xref-make-match): Add cross-references.
14270         (xref--insert-xrefs): Fix typo in docstring.
14272 2015-11-04  Anders Lindgren  <andlind@gmail.com>
14274         Render fringe bitmaps correctly on NextStep (bug#21301)
14276         The fringe bitmaps were inverted, the background was not transparent,
14277         the image data was horizontally mirrored, and periodic fringe bitmaps
14278         were not supported.
14280         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
14281         When both background and foreground colors are 0, set the background
14282         alpha channel to 0 (making the background transparent).  When
14283         copying the image data, do this from the most significant bit
14284         (leftmost) to the least (rightmost), to avoid mirroring.
14285         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
14286         Add support for periodic images (e.g. the empty line indicator).
14288 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
14290         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
14292 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
14294         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
14296         * admin/MAINTAINERS: Add thunk.el.
14298 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
14300         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
14302 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
14304         Fix a stupid error in gfilenotify.c
14306         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
14307         if we've got a `deleted' signal AND the file name is the watched one.
14309 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
14311         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
14313         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
14314         Use case-insensitive string compare for file names.
14315         (emacs-test-dir): Add 'downcase' to cause case differences (at
14316         least on my system).
14318 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
14320         flymake-tests.el (warning-predicate-rx-gcc): Fix check
14322         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
14323         Also check that "make" is available, not just "gcc".
14325 2015-11-02  Ken Brown  <kbrown@cornell.edu>
14327         Document behavior of collation on Cygwin
14329         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
14330         expected failure on Cygwin.
14331         * doc/lispref/strings.texi (Text Comparison): Document that
14332         punctuation and whitespace are not ignored for sorting on Cygwin.
14334 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
14336         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
14338 2015-11-01  Glenn Morris  <rgm@gnu.org>
14340         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
14341         (Bug#21794)
14342         * test/automated/f90.el (f90-test-bug21794): New test.
14344 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
14346         Fix incompatibility with TCC in test for bug#18745
14348         * test/automated/process-tests.el (process-test-quoted-batfile):
14349         Remove spaces unrelated to the bug being tested.
14351 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
14353         Improve completion in tramp-gvfs.el
14355         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
14356         Rename from `tramp-zeroconf-parse-service-device-names'.
14357         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
14358         with `tramp-zeroconf-parse-device-names'.
14359         (tramp-gvfs-parse-device-names): New defun.
14360         (top): Use it when `tramp-zeroconf-parse-device-names' is not
14361         applicable.
14363         * lisp/net/tramp.el (tramp-set-completion-function): The argument
14364         could also be a zeroconf service type.
14366 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14368         * lisp/net/ntlm.el: Change version to 2.0.0.
14370 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
14372         Fix bug#21762
14373         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
14374         `eql' instead of `=' to accommodate the case that (syntax-after (point))
14375         returns nil.
14376         * test/automated/python-tests.el (python-indent-inside-paren-7):
14377         New test.
14379 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
14381         * test/automated/python-tests.el: Avoid warnings.
14382         (python-tests-with-temp-buffer, python-tests-with-temp-file):
14383         Bind `python-indent-guess-indent-offset' to nil.
14385 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
14387         * src/alloc.c: Silence compiler warnings.
14388         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
14390 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
14392         * etc/NEWS: Fix js-jsx-mode entry punctuation.
14394 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
14396         Add JSX indentation via js-jsx-mode  (Bug#21799)
14398         * lisp/progmodes/js.el: Add JSX indentation support.
14399         (js--jsx-end-tag-re)
14400         (js--jsx-after-tag-re): New variables.
14401         (js--jsx-find-before-tag)
14402         (js--jsx-indented-element-p)
14403         (js--as-sgml)
14404         (js--expression-in-sgml-indent-line)
14405         (js-jsx-indent-line)
14406         (js-jsx-mode): New functions.
14407         * test/indent/js-jsx.js: New file.
14408         * etc/NEWS: Add information about js-jsx-mode.
14410 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
14412         Minor fix in filenotify.el
14414         * lisp/filenotify.el (file-notify--event-file-name)
14415         (file-notify--event-file1-name): Normalize result with
14416         `directory-file-name'.
14418 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
14420         Avoid errors in redisplay--pre-redisplay-functions
14422         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
14423         use 'bobp', instead compare window-point with 1.  (Bug#21730)
14425 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
14427         Merge from gnulib
14429         This incorporates:
14430         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
14431         2015-10-25 stdalign: port to Sun C 5.9
14432         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
14433         Copy from gnulib.
14435 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
14437         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
14438         (w32_compare_strings): Adjust for the correction.
14440 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
14442         * test/automated/vc-tests.el (vc-test--state)
14443         (vc-test--working-revision, vc-test--checkout-model):
14444         Add result messages.
14446 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14448         * test/automated/faces-tests.el: Add another test
14450 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14452         * lisp/faces.el (faces--attribute-at-point): Fix bug
14453         introduced by previous commit.
14455 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14457         * test/automated/faces-tests.el: New file.
14459 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14461         * lisp/faces.el: Refactor common code and fix a bug.
14462         (faces--attribute-at-point): New function.  Fix a bug when the
14463         face at point is a list of faces and the desired attribute is not
14464         on the first one.
14465         (foreground-color-at-point, background-color-at-point): Use it.
14467 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
14469         * etc/tutorials/TUTORIAL.translators: Fix PL names.
14471 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
14473         * lisp/character-fold.el: Provide `character-fold'.
14475 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
14477         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
14478         for Gnus and ivy.
14480 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
14482         Some minor fixes for tramp-gvfs.el
14484         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
14485         An attribute returned by gvfs-info might be empty.  In case of
14486         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
14487         (tramp-zeroconf-parse-service-device-names): New defun.
14488         Derived from `tramp-zeroconf-parse-workstation-device-names'.
14489         (top): Add completion functions for "afp" and "smb" methods.
14491 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14493         * test/automated/character-fold-tests.el: New file
14495 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14497         * test/automated/sort-tests.el: New file.
14498         Tests in this file are randomly generated and then tested with
14499         regular, reverse, and case-fold sorting.
14501 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
14503         Describe known problems with pinning Emacs to taskbar
14505         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
14506         on Windows 10.  For the details, see the discussion starting at
14507         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
14509 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14511         * lisp/isearch.el: Avoid an error that blocks isearch.
14512         (isearch-update): Don't error if `isearch--current-buffer' has
14513         been killed.
14515         * test/automated/isearch-tests.el (isearch--test-update):
14516         New file.
14518 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
14520         Fix documentation of 'beginning/end-of-buffer'
14522         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
14523         conditions under which the mark will be pushed at the previous
14524         position.  (Bug#21748)
14526 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
14528         Add RefTeX feature idea: editing RefTeX TOC buffers
14530         More face defs for ivy, swiper, ace-window, eshell
14532 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
14534         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
14535         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
14536         just VAR.
14537         (auth-source-backend-parse): Use make-instance.
14538         (auth-source-search): Remove unused key args.
14539         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
14540         (auth-source-search-backends): Use slot names rather than their initarg.
14541         (auth-source-netrc-create):
14542         (auth-source-delete):
14543         (auth-source-secrets-create, auth-source-plstore-search)
14544         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
14545         (auth-source-plstore-create, auth-source-netrc-search)
14546         (auth-source-netrc-parse): Remove unused key args.
14547         (auth-source-forget+): Simplify the arglist.
14548         (auth-source-macos-keychain-search-items)
14549         (auth-source-token-passphrase-callback-function): Mark unused args.
14550         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
14551         (pp-escape-newlines): Declare.
14552         (auto-source--symbol-keyword): New function.
14553         (auth-source-plstore-create, auth-source-netrc-create)
14554         (auth-source-netrc-normalize): Use it.
14555         (auth-source-netrc-search): Don't pass :delete to
14556         auth-source-netrc-parse since it doesn't use it.
14557         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
14558         symbol-value to index in keyword args.
14559         (auth-source-macos-keychain-result-append): Avoid setq.
14560         (auth-source-netrc-create): Remove unused vars `file' and `add'.
14561         (auth-source-user-or-password): Remove unused var `cname'.
14563 2015-10-29  Juri Linkov  <juri@linkov.net>
14565         * lisp/dired.el (dired-unmark-all-files-query): Declare.
14566         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
14567         (Bug#21746)
14569 2015-10-29  Juri Linkov  <juri@linkov.net>
14571         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
14572         to go to the beginning of text line instead of command line.
14573         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
14575 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
14577         Fix encoding of saving *Help* buffers
14579         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
14580         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
14582 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
14584         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
14585         (cl--generic-derived-specializers): New function.
14586         (cl--generic-derived-generalizer): New generalizer.
14587         (cl-generic-generalizers): New specializer (derived-mode MODE).
14588         (cl--generic-split-args): Apply the rewriter, if any.
14589         (cl-generic-define-context-rewriter): New macro.
14590         (major-mode): Use it to define a new context-rewriter, so we can write
14591         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
14593         * lisp/frame.el (window-system): New context-rewriter so we can write
14594         `(window-system VAL)' instead of (window-system (eql VAL)).
14595         (cl--generic-split-args): Apply the rewriter, if any.
14596         (frame-creation-function): Use the new syntax.
14598         * lisp/term/x-win.el (window-system-initialization)
14599         (handle-args-function, frame-creation-function)
14600         (gui-backend-set-selection, gui-backend-selection-owner-p)
14601         (gui-backend-selection-exists-p, gui-backend-get-selection):
14602         * lisp/term/w32-win.el (window-system-initialization)
14603         (handle-args-function, frame-creation-function)
14604         (gui-backend-set-selection, gui-backend-get-selection)
14605         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
14606         * lisp/term/pc-win.el (gui-backend-get-selection)
14607         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
14608         (gui-backend-set-selection, window-system-initialization)
14609         (frame-creation-function, handle-args-function):
14610         * lisp/term/ns-win.el (window-system-initialization)
14611         (handle-args-function, frame-creation-function)
14612         (gui-backend-set-selection, gui-backend-selection-exists-p)
14613         (gui-backend-get-selection):
14614         * lisp/startup.el (handle-args-function):
14615         * lisp/term/xterm.el (gui-backend-get-selection)
14616         (gui-backend-set-selection): Use the new syntax.
14618 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
14620         * test/indent/css-mode.css: Add tests for url(...) syntax.
14622 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
14624         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
14625         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
14626         (smie-prec2->grammar): Use `declare'.
14628 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
14630         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
14631         (cl--generic-generalizer): Add `name' field.
14632         (cl-generic-make-generalizer): Add corresponding `name' argument.
14633         (cl-generic-define-generalizer): New macro.
14634         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
14635         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
14636         (cl--generic-t-generalizer): Use it.
14637         (cl-generic-ensure-function): Add `noerror' argument.
14638         (cl-generic-define): Use it so we don't follow aliases.
14639         (cl-generic-define-method): Preserve pre-existing ordering of methods.
14640         (cl--generic-arg-specializer): New function.
14641         (cl--generic-cache-miss): Use it.
14642         (cl-generic-generalizers): Only fset a temporary definition
14643         during bootstrap.
14644         (cl--generic-struct-tag, cl--generic-struct-specializers):
14645         Allow extra arguments.
14647         * lisp/emacs-lisp/eieio-compat.el
14648         (eieio--generic-static-symbol-generalizer)
14649         (eieio--generic-static-object-generalizer):
14650         Use cl-generic-define-generalizer.
14651         (eieio--generic-static-symbol-specializers): Allow extra arguments.
14653         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
14654         (eieio--generic-subclass-generalizer):
14655         Use cl-generic-define-generalizer.
14656         (eieio--generic-subclass-specializers): Allow extra arguments.
14658 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
14660         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
14662 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
14664         Add "afp" method to Tramp
14666         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
14668         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
14669         (tramp-gvfs-handle-expand-file-name)
14670         (tramp-gvfs-handler-mounted-unmounted)
14671         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
14672         (tramp-gvfs-maybe-open-connection): Support also "afp".
14673         (tramp-gvfs-handle-file-attributes): Handle the case of empty
14674         "owner::user" and "owner::group" entries.
14676 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
14678         Handle negative coordinates in ‘x_calc_absolute_position’
14680         * src/w32term.c (x_calc_absolute_position): Find display origin to
14681         allow for negative coordinates.
14683 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
14685         (internal--syntax-propertize): Save match-data here (bug#21766)
14687         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
14688         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
14690 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
14692         Don't require default-directory to end with a slash
14694         * doc/lispref/files.texi (Magic File Names): Document the change
14695         in unhandled-file-name-directory.
14697         * lisp/url/url-handlers.el
14698         (url-handler-unhandled-file-name-directory): Update accordingly.
14700         * src/buffer.c (default-directory): Update the docsting.
14702         * src/fileio.c (unhandled-file-name-directory): Default to calling
14703         `file-name-as-directory'
14704         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
14706 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14708         * lisp/isearch.el: Delete some outdated comments.
14710 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
14712         Fix eshell/clear not working if the output has a small line count
14714         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
14715         number of newlines to be inserted. This fixes the issue where
14716         eshell/clear wouldn't work if the prompt was not at the bottom of the
14717         window, and the output wasn't too long.
14719 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
14721         * lisp/files.el (write-file): Use vc-refresh-state.
14723         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
14725         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
14727 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
14729         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
14730         (macroexp-unprogn): Make sure we never return an empty list.
14731         (macroexp-if): Remove unused (and unsafe) optimization.
14732         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
14733         occur occasionally.
14735 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
14737         Fix bug#21766 and add test
14738         * lisp/simple.el (delete-trailing-whitespace): Save match data when
14739         calling `skip-syntax-backward'.
14740         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
14741         New test.
14743 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14745         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
14747 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
14749         * src/dispnew.c (init_display): Simplify overflow checking.
14751 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14753         * lisp/character-fold.el (character-fold-to-regexp): Fix case
14754         where string ends in space
14756 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14758         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
14760         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
14762 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14764         * lisp/character-fold.el: Make compatible with lax-whitespace.
14765         (character-fold-to-regexp): Rework internals to play nice with
14766         lax-whitespacing.
14768         When the user types a space, we want to match the table entry for
14769         ?\s, which is generally a regexp like "[ ...]".  However, the
14770         `search-spaces-regexp' variable doesn't "see" spaces inside these
14771         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
14772         manually expose a space).
14774         Furthermore, the lax search engine acts on a bunch of spaces, not
14775         on individual spaces, so if the string contains sequential spaces
14776         like "  ", we need to keep them grouped together like this:
14777         "\\(  \\|[ ...][ ...]\\)".
14779 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14781         * lisp/isearch.el: Refactor momentary messages.
14782         (isearch--momentary-message): New function.
14783         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
14784         (isearch-toggle-invisible): Use it.
14786 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14788         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
14789         (isearch-define-mode-toggle): New macro.
14790         (isearch-toggle-invisible): Rename to
14791         `isearch-define-mode-toggle'.
14792         (isearch-toggle-case-fold, isearch-toggle-invisible)
14793         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
14794         with `isearch-define-mode-toggle'.
14796 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
14798         Avoid using `add-to-list' on a let-local var in tramp-smb.el
14800         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
14801         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
14803 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
14805         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
14806         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
14807         does not exist in XEmacs 21.4.
14809 2015-10-28  Anders Lindgren  <andlind@gmail.com>
14811         Fixed OS X startup crash
14813         Input events started to arrive before ns_term_init() was finished.
14814         Solved by blocking input.  This also seems to correct the "You
14815         can't open the application "Emacs" because it may be damaged or
14816         incomplete" error issued when double-clicking on the Emacs
14817         application.
14819         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
14820         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
14822 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14824         * src/process.c (Fget_buffer_process): Improve docstring.
14825         Document the fact that it doesn't return dead processes.
14827 2015-10-28  Anders Lindgren  <andlind@gmail.com>
14829         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
14831         * src/nsterm.h (struct ns_output): New flag, in_animation.
14832         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
14833         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
14834         in_animation flag around call to "setVisible". Set new tool bar
14835         height before call to setVisible.
14836         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
14837         andColumns:] as this fools the subsequent call to updateFrameSize
14838         from performing the real resize.
14839         (windowDidResize): Don't update anything when in_animation is
14840         non-zero.
14842         Trace output.
14844         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
14845         (EmacsToolbar):
14846         * src/nsterm.m (x_set_window_size, updateFrameSize)
14847         ([EmacsView setRows: andColumns:])
14849 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
14851         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
14853 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
14855         Prettify TeX macros not ending in a word char
14857         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
14858         Prettify macros which don't end in a word character.
14860 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
14862         Pipe Hg commit descriptions through 'tabindent'
14864         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
14865         through 'tabindent'.
14866         (vc-hg-log-view-mode): Set tab-width to 2 locally.
14867         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
14869 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14871         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
14872         (tramp-smb-handle-directory-files): Use `delete-dups'.
14874         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
14876 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14878         * lisp/international/ccl.el: Use lexical-binding.
14879         (ccl-compile-if): Remove unused var `false-ic'.
14880         (ccl-compile-write-repeat): Remove unused var `i'.
14881         (ccl-compile-map-single): Remove unused var `id'.
14882         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
14883         dynamic var `ccl-code'.
14885 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14887         * lisp/json.el (json-new-object): Optimize trivial `list' call.
14889 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14891         * lisp/help.el: Fix bug with incorrect arglist string.
14892         (help-add-fundoc-usage): Don't mistake a mis-formatted string
14893         for a list.
14895 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14897         * lisp/gnus/gnus-topic.el: Silence some warnings.
14898         (gnus-topic-prepare-topic): Remove unused var `topic'.
14899         (gnus-topic-remove-topic): Mark unused arg `hide'.
14900         (gnus-tmp-header): Declare.
14901         (gnus-topic-goto-missing-group): Remove unused var `entry'.
14902         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
14903         (gnus-topic-copy-matching): Mark unused arg `copyp'.
14904         Move initialization of `topic' into its declaration.
14906 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
14908         Minor CEDET fixes
14910         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
14911         Handle warnings from gtags about invalid options.
14912         (cedet-gnu-global-create/update-database): Do incremental update
14913         properly.
14915         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
14916         Get monotone root right.
14918 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
14920         Fall back to polling in autorevert when needed
14922         * lisp/autorevert.el (auto-revert-notify-handler): When a
14923         `stopped' event arrives from file notification, fall back to polling.
14925         * test/automated/file-notify-tests.el
14926         (file-notify-test03-autorevert): Extend test for polling when file
14927         notification ceases to work.
14929 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
14931         Show full commit messages in 'hg log' when appropriate
14933         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
14934         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
14935         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
14937 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
14939         Use a plain SVG file for the icon
14941         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
14942           format instead of the Inkscape SVG format.
14944 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
14946         Fix subtle bug in auto-revert-tests.el
14948         * test/automated/auto-revert-tests.el
14949         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
14950         buffer where it belongs to.  (Bug#21668)
14952 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
14954         * lisp/emacs-lisp/map.el: Better docstrings.
14956         * lisp/emacs-lisp/seq.el: Better docstrings.
14958         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
14960 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
14962         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
14964 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
14966         Clarify that load-path contents should be directory file names
14968         * doc/lispref/files.texi (Directory Names): Define and use "directory
14969         file name".  Recommend `expand-file-name'.
14971         * src/lread.c (load-path): Fix doc string; elements are directory file
14972         names.
14974 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
14976         Fix simple-test.el test
14978         * test/automated/simple-test.el (simple-test--dummy-buffer):
14979         Make sure indentation doesn't use TABs, otherwise the 6th test
14980         might fail.
14982 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
14984         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
14985         `substring' does not account for full width characters.
14987 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
14989         Further work on `stopped' events in filenotify.el
14991         * doc/lispref/os.texi (File Notifications): Rework examples.
14993         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
14994         (file-notify--rm-descriptor, file-notify-callback): Improve check
14995         for sending `stopped' event.
14996         (file-notify-add-watch): Check for more events for `inotify'.
14998         * test/automated/file-notify-tests.el
14999         (file-notify--test-expected-events): New defvar.
15000         (file-notify--test-with-events): Use it.
15001         (file-notify--test-cleanup): Make it more robust when deleting
15002         directories.
15003         (file-notify--test-event-test): Check also for watched directories.
15004         (file-notify--test-event-handler): Suppress temporary .#files.
15005         (file-notify-test02-events, file-notify-test04-file-validity):
15006         Rework `stopped' events.
15007         (file-notify-test05-dir-validity): Wait for events when appropriate.
15009 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
15011         * src/keyboard.c (post-command-hook): Shorten docstring.
15013 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
15015         Fix infinite loop in sh-script's SMIE code
15017         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
15018         loop (bug#21747).
15020 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15022         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
15023         Character-fold search _still_ doesn't play well with
15024         lax-whitespace.  So disable it by default (again) for now.
15026 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15028         * lisp/isearch.el: No visual feedback for default search mode.
15029         During an isearch where character-folding is the default, we don't
15030         want to take up minibuffer space just to tell the user that
15031         "Char-fold " is on.  The same goes for other modes, if the user
15032         changes the default.  In contrast, if the user toggles OFF the
15033         default mode, they should see "Literal", to distinguish it from
15034         the default mode.
15035         (isearch--describe-regexp-mode): Return "" if describing the
15036         default mode, and return "literal " if describing a plain search
15037         and it is not default.
15039 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15041         * test/automated/simple-test.el: New file.
15042         Define tests for `newline' and `open-line'.
15044 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15046         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
15047         Also run `post-self-insert-hook' when called interactively.
15049 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15051         * lisp/simple.el (open-line): Fix docstring.
15052         Also explain apparently redundant line.
15054 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15055             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
15057         Sync with soap-client repository, version 3.0.1
15059         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
15060         Bump version to 3.0.1.
15062         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
15064 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
15066         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
15068 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15070         * src/keyboard.c (post-command-hook): Extend the docstring.
15071         Mainly, explain how to use it without hanging Emacs, or giving the
15072         impression that it is hanging.  Also mention `pre-command-hook'.
15073         (pre-command-hook): Mention `post-command-hook'.
15075 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15077         * lisp/custom.el (custom-declare-variable): Shorten code again.
15078         Without using pcase this time.  We can't use pcase because it is
15079         loaded after custom in loadup.el.  Also add a comment explaining
15080         this to future dummies like me.
15082 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
15084         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
15086 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
15088         Introduce `stopped' event in file notification
15090         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
15091         (file-notify-rm-watch): Use it.
15092         (file-notify-callback): Implement `stopped' event.
15093         (file-notify-add-watch): Mention `stopped' in the docstring.
15094         Check, that upper directory exists.
15096         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
15097         Add two test cases.
15098         (file-notify-test02-events): Handle also `stopped' event.
15099         (file-notify-test04-file-validity): Add another test case.
15101 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
15103         Revert commit that broke 'make bootstrap'
15105         * lisp/custom.el (custom-declare-variable): Revert commit
15106         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
15107         even when pcase has not been defined yet, when doing bootstrapping.
15109 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
15111         Port recent inline functions fix to Standard C
15113         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
15114         All uses rewritten to define the function directly rather than to
15115         use a macro to define the function.  This conforms to Standard C,
15116         which does not allow stray semicolons at the top level.  I hope it
15117         also avoids the problems with TAGS.  Those macros, though clever,
15118         were pretty confusing anyway, and it wasn’t clear they were worth
15119         the aggravation even without the TAGS problem.
15121 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
15123         * lisp/isearch.el: Make character-fold search the default again.
15125 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
15127         * lisp/character-fold.el: Many improvements.
15128         (character-fold-search-forward, character-fold-search-backward):
15129         New command.
15130         (character-fold-to-regexp): Remove lax-whitespace hack.
15131         (character-fold-search): Remove variable.  Only isearch and
15132         query-replace use char-folding, and they both have their own
15133         variables to configure that.
15135 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
15137         * lisp/isearch.el: Generalize definition of regexp-function toggles.
15138         (isearch-specify-regexp-function): New macro for specifying
15139         possible values of `isearch-regexp-function'.
15140         (isearch-toggle-character-fold, isearch-toggle-symbol)
15141         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
15143 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
15145         * lisp/isearch.el (search-default-regexp-mode): New variable.
15146         (isearch-mode): Use it.
15148 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
15150         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
15151         (search-slow-speed, search-upper-case)
15152         (search-nonincremental-instead, search-whitespace-regexp)
15153         (search-invisible, isearch-hide-immediately)
15154         (isearch-resume-in-command-history, search-ring-max)
15155         (regexp-search-ring-max, search-ring-update, search-highlight)
15156         (isearch-fail): Delete :group entries.
15158 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
15160         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
15162 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
15164         addpm.c: Silence some warnings.
15166         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
15167         to LPBYTE.
15168         (add_registry): Pass NULL to optional lpClass argument of
15169         RegCreateKeyEx, not an empty string.
15171 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
15173         addpm.c: Do not add obsolete GTK libraries to the path.
15175         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
15176         (add_registry): Remove variables `size' and `gtk_key'.
15177         Do not add the GTK DLL directory to the library search path; it is
15178         confusing behavior (in particular, the same Emacs version with and
15179         without invoking addpm will use a different path), and the GTK image
15180         libraries are obsolete anyway.
15182 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
15184         addpm.c: Replace existing registry entries, but do not create new ones
15186         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
15187         existing values from previous versions, but do not add new ones; the
15188         key could exist for other reasons unrelated to old Emacsen, like X-style
15189         resources, or to set some environment variables like HOME or LANG, and
15190         in that case we don't want to populate it with obsolete values.
15192 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
15194         * nt/addpm.c (add_registry): Do not compute unused return value.
15196 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
15198         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
15200         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
15201         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
15202         current behavior because REG_OPTION_NON_VOLATILE is defined to
15203         be 0L anyway, but that option is actually documented only for
15204         RegCreateKeyEx.
15206 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
15208         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
15210 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
15212         Update frame title when redisplay scrolls selected window
15214         * src/xdisp.c (redisplay_window): Reconsider the frame's title
15215         when the mode-line of the frame's selected window needs to be
15216         updated.
15218 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
15220         Update frame title when scrolling the selected window
15222         * src/window.c (wset_update_mode_line): New function, sets either
15223         the window's update_mode_line flag or the global update_mode_lines
15224         variable.
15225         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
15226         (window_scroll_line_based): Call it instead of only setting the
15227         window's update_mode_line flag.
15229 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
15231         An even better fix for bug#21739
15233         * src/window.c (set_window_buffer): If the window is the frame's
15234         selected window, set update_mode_lines, not the window's
15235         update_mode_line flag.
15236         * src/buffer.c (Fkill_buffer): Undo last change.
15237         (set_update_modelines_for_buf): Function deleted.
15239 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15240             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
15242         Sync with soap-client repository, version 3.0.0
15244         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
15245         Bump version to 3.0.0.
15247         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
15249         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
15251         * lisp/net/soap-inspect.el: Shorten first line description.
15253         * lisp/net/soap-client.el: Make a small whitespace fix.
15255         * lisp/net/soap-inspect.el: Update copyright years.
15257         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
15258         first use in soap-encode-xs-element.
15260         * lisp/net/soap-client.el (soap-type-is-array?): new defun
15261         (soap-encode-xs-element): handle array elements in this function
15262         (soap-encode-xs-complex-type): flag error if asked to encode an
15263         array type, this is handled in `soap-encode-xs-element'
15265         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
15266         Do not print type for attribute group.
15268         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
15269         New function.
15270         (soap-inspect-xs-attribute-group): Likewise.
15272         * lisp/net/soap-inspect.el
15273         (soap-resolve-references-for-xs-attribute-group): Resolve
15274         references of attributes in an attribute group.
15276         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
15277         type directly, not through soap-wsdl-get.
15279         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
15280         nil if reference attribute is nil.
15282         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
15283         Convert XML schema attributes to xsd:string.
15285         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
15286         New function.
15287         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
15288         (soap-sample-value-for-xs-complex-type): Likewise.
15289         (soap-inspect-xs-attribute): New function.
15290         (soap-inspect-xs-simple-type): Print attributes.
15291         (soap-inspect-xs-complex-type): Likewise.
15293         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
15294         Resolve references for attributes.
15295         (soap-resolve-references-for-xs-complex-type): Likewise.
15297         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
15298         Rename from soap-xml-node-first-child.
15299         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
15300         (soap-xs-parse-simple-type): Likewise.
15302         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
15304         * lisp/net/soap-client.el (soap-invoke-internal): New function.
15305         (soap-invoke-async): Call soap-invoke-internal.
15306         (soap-invoke): Likewise.
15308         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
15309         url-retrieve callback is killed.
15311         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
15312         Rename function.
15313         (soap-parse-wsdl-phase-fetch-imports): Likewise.
15314         (soap-parse-wsdl-phase-parse-schema): Likewise.
15315         (soap-parse-wsdl-phase-fetch-schema): Likewise.
15316         (soap-parse-wsdl-phase-finish-parsing): Likewise.
15317         (soap-parse-wsdl): Update calls.
15319         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
15321         * lisp/net/soap-client.el (soap-invoke-async): New function.
15322         (soap-invoke): Reimplement using soap-invoke-async.
15324         * lisp/net/soap-client.el (soap-parse-server-response):
15325         Improve docstring.
15326         (soap-invoke): Inline call to soap-parse-server-response.
15328         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
15329         Prevent incorrect warning.
15331         * lisp/net/soap-client.el (soap-parse-server-response):
15332         Rename soap-process-url-response.  Destroy the mime part.
15333         (soap-invoke): Call soap-parse-server-response.
15335         * lisp/net/soap-client.el: Update copyright date.
15337         * lisp/net/soap-client.el: Fix checkdoc issues.
15339         * lisp/net/soap-client.el: Fix indentation and long lines.
15341         * lisp/net/soap-client.el (soap-time-format): Remove variable.
15342         (soap-encode-xs-basic-type): Simplify date-time format detection.
15343         (soap-decode-xs-basic-type): Remove soap-time-format support.
15345         * lisp/net/soap-client.el (soap-process-url-response): New function.
15346         (soap-fetch-xml-from-url): Call soap-process-url-response.
15347         (soap-parse-wsdl-phase-1): New function.
15348         (soap-parse-wsdl-phase-2): Likewise.
15349         (soap-parse-wsdl-phase-3): Likewise.
15350         (soap-parse-wsdl-phase-4): Likewise.
15351         (soap-parse-wsdl-phase-5): Likewise.
15352         (soap-parse-wsdl): Call phase functions.
15354         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
15355         Remove one-argument and call.
15357         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
15359         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
15360         (soap-parse-schema): Add wsdl argument.  Look up XML schema
15361         imports from wsdl.
15362         (soap-load-wsdl): Do not set soap-xmlschema-imports.
15363         (soap-parse-wsdl): Get XML schema imports from wsdl.
15365         * lisp/net/soap-client.el (soap-current-file): Remove variable.
15366         (soap-wsdl): Add current-file slot.
15367         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
15368         file from wsdl.
15369         (soap-fetch-xml-from-file): Likewise.
15370         (soap-fetch-xml): Likewise.
15371         (soap-load-wsdl): Always create wsdl object first.
15372         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
15374         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
15375         (soap-xs-parse-element): Set is-group slot.
15376         (soap-resolve-references-for-xs-element): Skip is-group elements.
15377         (soap-xs-complex-type): Add is-group slot.
15378         (soap-xs-parse-complex-type): Set is-group slot.
15379         (soap-xs-parse-sequence): Parse xsd:group elements.
15380         (soap-resolve-references-for-xs-complex-type): Inline elements
15381         from referenced xsd:group nodes.
15382         (soap-parse-schema): Parse xsd:group nodes.
15384         * lisp/net/soap-client.el (soap-invoke):
15385         Don't set url-http-version to 1.0.
15387         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
15388         Allow choice nodes to accept multiple values.
15390         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
15391         for extra header values.
15393         * lisp/net/soap-client.el (soap-well-known-xmlns):
15394         Add wsa and wsaw tags.
15395         (soap-operation): Add input-action and output-action slots.
15396         (soap-parse-operation): Parse wsaw:Action nodes.
15397         (soap-encode-body): Encode service-url for WS-Addressing.
15398         (soap-create-envelope): Likewise.
15399         (soap-invoke): Update soap-create-envelope call to provide
15400         service-url argument.
15402         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
15403         Support xsi:type override attribute.
15404         (soap-decode-array): Likewise.
15406         * lisp/net/soap-client.el (soap-parse-schema):
15407         Handle location attribute.
15409         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
15410         matched validation regexp.
15412         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
15413         Encode xsd:list nodes.
15414         (soap-decode-xs-simple-type): Decode xsd:list nodes.
15416         * lisp/net/soap-client.el (soap-get-candidate-elements):
15417         Fix reference handling.
15419         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
15420         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
15421         (soap-xs-add-list): New function.
15423         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
15424         expected, interpret nil as "false".
15426         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
15427         gYear, gMonthDay, gDay and gMonth.
15429         * lisp/net/soap-client.el (soap-time-format): New variable.
15430         (soap-encode-xs-basic-type): Handle dateTime, time, date,
15431         gYearMonth, gYear, gMonthDay, gDay and gMonth.
15432         (soap-decode-date-time): New function.
15433         (soap-decode-xs-basic-type): Use soap-decode-date-time.
15435         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
15436         after encoding.
15437         (soap-decode-xs-basic-type): Validate value before decoding.
15439         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
15440         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
15442         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
15443         instead of overwriting it.
15444         (soap-validate-xs-simple-type): Add union support.
15446         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
15447         to Emacs regexp using xsdre-translate.
15448         (soap-validate-xs-simple-type): Validate value against pattern.
15450         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
15451         inline simpleType nodes.
15452         (soap-decode-type): Handle union types.
15454         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
15455         attributes.
15457         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
15458         from soap-xs-attribute-group-consolidate, all callers updated
15459         (soap-get-xs-attributes): Rename from
15460         soap-xs-attributes-consolidate, all callers updated
15462         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
15463         (soap-xs-attribute-group): New type.
15464         (soap-xs-parse-attribute-group): New function.
15465         (soap-resolve-references-for-xs-attribute-group): Likewise.
15466         (soap-xs-add-extension): Handle attribute groups.
15467         (soap-resolve-references-for-xs-simple-type): Likewise.
15468         (soap-xs-parse-complex-type): Likewise.
15469         (soap-xs-parse-extension-or-restriction): Likewise.
15470         (soap-resolve-references-for-xs-complex-type): Likewise.
15471         (soap-xs-attribute-group-consolidate): New function.
15472         (soap-xs-attributes-consolidate): Handle attribute groups.
15473         (soap-parse-schema): Likewise.
15475         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
15476         Fix boolean encoding.
15478         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
15479         element names in warnings.
15481         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
15483         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
15484         Eliminate invalid warnings for choice types.
15486         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
15487         Also encode base type attributes.
15489         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
15490         warning.  Print e-name in warnings, or element if e-name is nil.
15492         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
15493         (soap-xs-parse-element): Set substitution-group.
15494         (soap-resolve-references-for-xs-element): Populate alternatives slot.
15495         (soap-get-candidate-elements): New function.
15496         (soap-encode-xs-complex-type): Iterate through all candidate elements.
15497         Handle types with nil type indicator.  Fix warning logic.
15499         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
15500         earlier in the file to prevent compiler warning.
15502         * lisp/net/soap-client.el (soap-node-optional): New function.
15503         (soap-node-multiple): Likewise.
15504         (soap-xs-parse-element): Call soap-node-optional and
15505         soap-node-multiple.
15506         (soap-xs-complex-type): Add optional? and multiple? slots.
15507         (soap-xml-get-children-fq): New function.
15508         (soap-xs-element-get-fq-name): Likewise.
15509         (soap-xs-complex-type-optional-p): Likewise.
15510         (soap-xs-complex-type-multiple-p): Likewise.
15511         (soap-xs-attributes-consolidate): Likewise.
15512         (soap-decode-xs-attributes): Likewise.
15513         (soap-decode-xs-complex-type): Decode types with nil type indicator.
15514         Support children that use local namespaces.  Decode attributes.
15515         Add type considerations to optional? and multiple? warnings.
15517         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
15518         Store parsed attributes.
15519         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
15521         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
15522         Don't add the xsi:type attribute (Exchange refuses requests which have
15523         this attribute).
15525         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
15526         correct compiler warnings about unused function arguments and
15527         local variables.
15529         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
15530         type indicator.
15531         (soap-parse-envelope): Handle response headers.
15532         (soap-parse-response): Likewise.  Only return non-nil decoded values.
15534         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
15535         Return validated value.
15537         * lisp/net/soap-client.el (soap-xs-parse-element)
15538         (soap-xs-parse-simple-type)
15539         (soap-xs-parse-complex-type)
15540         (soap-parse-message)
15541         (soap-parse-operation): Add the current namespace to the element
15542         being created.
15543         (soap-resolve-references-for-xs-element)
15544         (soap-resolve-references-for-xs-simple-type)
15545         (soap-resolve-references-for-xs-complex-type)
15546         (soap-resolve-references-for-operation): Resolve the namespace to
15547         the namespace tag.
15548         (soap-make-wsdl): specify a namespace tag when creating the xsd
15549         and soapenc namespaces
15550         (soap-wsdl-resolve-references): don't update namespace tags in
15551         elements here
15552         (soap-parse-port-type): bind the urn: to soap-target-xmlns
15553         (soap-encode-body): don't add nil namespace tags to
15554         soap-encoded-namespaces
15556         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
15557         for registering the soap-inspect method.  Make debbugs tests pass.
15558         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
15559         type name, also skip string only nodes when decoding a structure.
15560         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
15561         types too.
15562         (soap-encode-body): Grab the header value from the param table.
15564         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
15565         New function.
15566         (soap-encode-xs-element): Don't encode nil value unless needed.
15568         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
15569         (soap-parse-binding): Parse the message parts required in the body.
15570         (soap-encode-body): Encode only the parts that are declared to be
15571         part of the body.
15573         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
15574         when writing out the tag.
15575         (soap-encode-body): Remove hack that inserts the xmlns in the
15576         element attributes list.
15578         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
15579         (soap-xs-parse-attribute): Default slot is set from the XML
15580         "fixed" attribute.
15581         (soap-encode-xs-complex-type-attributes): Encode any attributes
15582         that have a default value.  Also, don't put the xsi:nil attribute
15583         when the complex type has no content anyway.
15585         * lisp/net/soap-client.el (soap-well-known-xmlns):
15586         Add the xml namespace.
15587         (soap-local-xmlns): Start with the xml namespace.
15588         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
15589         (soap-make-xs-basic-types): More xsd types added.
15590         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
15591         Handle "language", "time", "date", "nonNegativeInteger".
15592         (soap-resolve-references-for-xs-element): Don't signal an error if
15593         the element does not have a type.
15594         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
15595         added stum for xsd:list.
15596         (soap-xs-add-union): Call soap-l2fq on all union members.
15597         (soap-xs-add-extension): Call soap-l2fq on the base member.
15598         (soap-resolve-references-for-xs-simple-type): Don't signal an
15599         error if the simple type has no base.
15600         (soap-resolve-references-for-xs-simple-type): Bugfix, call
15601         soap-wsdl-get on each type of the base.
15603         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
15604         Referenced type can be eiher a simple type or a basic type.
15605         (soap-xs-add-restriction)
15606         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
15607         (soap-make-xs-basic-types)
15608         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
15609         Add support for more XMLSchema basic types.
15610         (soap-current-file, soap-xmlschema-imports): New defvars.
15611         (soap-parse-schema): Add locations from xsd:import tags to
15612         `soap-xmlschema-imports'.
15613         (soap-wsdl): Make destructor private.
15614         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
15615         (soap-wsdl-add-alias): Check if we try to replace aliases.
15616         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
15617         (soap-fetch-xml): New defuns.
15618         (soap-load-wsdl): Update to load the WSDL from either a file or
15619         an url.
15620         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
15621         (soap-parse-wsdl): Process wsdl:import tags and imports from
15622         `soap-xmlschema-imports'.
15623         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
15624         symbol-name.
15625         (soap-l2fq): Make the name part always a string.
15626         (soap-name-p): New defun, used for name tests.
15628         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
15629         Supply sample values for choice types with a special tag.
15630         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
15631         Handle anonymous elements correctly.
15632         (soap-encode-value): Accept nodes that have no namespace tag.
15634         * lisp/net/soap-client.el (soap-invoke): Encode the string for
15635         `url-request-data' as UTF-8.  Fixes issue 16.
15637 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
15639         Update the new icon
15641         Move the E slightly to the right in the circle.
15643         * etc/images/icons/hicolor/128x128/apps/emacs.png:
15644         * etc/images/icons/hicolor/16x16/apps/emacs.png:
15645         * etc/images/icons/hicolor/24x24/apps/emacs.png:
15646         * etc/images/icons/hicolor/32x32/apps/emacs.png:
15647         * etc/images/icons/hicolor/48x48/apps/emacs.png:
15648         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
15649         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
15650         * nt/icons/emacs.ico: New icom update.
15652 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
15654         Avoid missing inline functions from lisp.h in TAGS
15656         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
15657         need to end each invocation with a semi-colon.
15658         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
15659         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
15660         inline functions defined immediately after each invocation, and
15661         also avoid tagging every invocation of these macros.
15663 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
15665         A better fix for bug#21739
15667         * src/buffer.c (set_update_modelines_for_buf): New function.
15668         (Fkill_buffer): Use it to set the global variable
15669         update_mode_lines if the killed buffer was displayed in some
15670         window.  Don't set windows_or_buffers_changed.  This is a better
15671         fix for bug#21739 than the previous fix, since it will cause only
15672         redisplay of mode lines, not of entire windows, but will still
15673         catch attention of x_consider_frame_title in xdisp.c, which
15674         redraws the frame title.
15676 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
15678         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
15679         tar.bz2 and tar.xz archives.
15681 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
15683         Fix infloop in redisplay introduced by a recent change
15685         * src/xdisp.c (redisplay_internal): Avoid inflooping when
15686         redisplaying the selected window sets the selected frame's
15687         redisplay flag.  (Bug#21745)
15689 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
15691         * lisp/emacs-lisp/thunk.el: Better documentation.
15693 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
15695         Replace the old icon for Windows and Mac OSX
15697         * nt/icons/emacs.ico:
15698         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
15699         Use the new icons.
15701 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
15703         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
15704         `load-path' should contain only directory names.
15706 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
15708         New library thunk.el
15710         thunk.el is extracted from stream.el in ELPA, with additional tests.
15712         * lisp/emacs-lisp/thunk.el: New file.
15713         * test/automated/thunk-tests.el: New file.
15714         * etc/NEWS: Add information about thunk.el
15716 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
15718         Fix bug#21669
15720         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
15721         calling low-level functions.
15723         * test/automated/file-notify-tests.el (file-notify--test-timeout):
15724         Decrase to 6 seconds for remote directories.
15725         (file-notify-test02-events): Expect different number of
15726         `attribute-changed' events for the local and remote cases.  Apply
15727         short delays between the operations, in order to receive all
15728         events in the remote case.  Combine `attribute-change' tests.
15729         (Bug#21669)
15731 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
15733         Decode the HTML source when displaying it in EWW
15735         * lisp/net/eww.el (eww-view-source): Decode the HTML source
15736         according to its headers.
15738 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
15740         New default icon
15742         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
15743         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
15744         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
15745         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
15746         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
15747         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
15748         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
15749         Move the old logo files to emacs23.*.
15750         * etc/images/icons/hicolor/128x128/apps/emacs.png:
15751         * etc/images/icons/hicolor/16x16/apps/emacs.png:
15752         * etc/images/icons/hicolor/24x24/apps/emacs.png:
15753         * etc/images/icons/hicolor/32x32/apps/emacs.png:
15754         * etc/images/icons/hicolor/48x48/apps/emacs.png:
15755         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
15756         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
15757         New files.
15758         * etc/images/icons/README: Update the copyright information.
15760 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
15762         Fix redisplay of frame title when current buffer is killed
15764         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
15765         non-zero value, to redisplay more than just the affected windows.
15766         (Bug#21739)
15768 2015-10-23  Anders Lindgren  <andlind@gmail.com>
15770         NextStep maximization and NSTRACE rewrite
15772         Full-height, full-width, and maximized windows now cover the
15773         entire screen (except the menu bar), including the part where the
15774         system dock is placed.  The system zoom animation is no longer
15775         used.
15777         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
15778         original size.
15780         * src/nsterm.m (ns_menu_bar_height): New function, return height of
15781         the menu bar, or 0 when it's hidden.
15782         (constrain_frame_rect): New function for constraining a frame.
15783         (ns_constrain_all_frames): Set frame size explicitly rather than
15784         relying on the system doing it for us by writing back the current
15785         frame size.
15786         (windowWillUseStandardFrame): Register non-maximized width or
15787         height as new user size.  When entering full width or height,
15788         the other size component is taken from the user size.
15789         (fullscreenState): New method for accessing the fullscreen state.
15790         (constrainFrameRect): Restrict frame to be placed under the menu bar,
15791         if present.  The old version, sometimes, restricted the height of a
15792         frame to the screen, this version never does this.
15793         (zoom): Perform zoom by setting the frame to the full size of the
15794         screen (minus the menu bar).  The default system function, with the
15795         zoom animation, is no longer used, as the final frame size doesn't
15796         cover the entire screen.
15798         Rework how to constrain resizing to the character grid.  The old
15799         system used "resizeIncrements" in NSWindows.  However, once a frame
15800         was resized so that it was not aligned to the text grid, it
15801         remained unaligned even after a resize.  In addition, it conflicted
15802         when resizing a fullheight window.
15804         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
15805         unless when pixelwise frame resizing is enabled.
15806         (updateFrameSize, initFrameFromEmacs)
15807         (toggleFullScreen, handleFS): Don't set resizeIncrements.
15809         Redesign the NS trace system.  The call structure is represented
15810         using indentations and vertical lines.  The NSTRACE macro accepts
15811         printf-style arguments.  New macros for printing various
15812         information.
15814         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
15815         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
15816         block (typically a function), accept printf-style arguments.
15817         (NSTRACE_MSG): Macro for extra information, accepts
15818         printf-style arguments.
15819         (NSTRACE_what): Macros for printing various types.
15820         (NSTRACE_FMT_what): Macro with printf format string snippets.
15821         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
15822         corresponds to NSTRACE_FMT_what.
15823         (NSTRACE_RETURN): Macro to print return value, accept
15824         printf-style arguments.
15825         (NSTRACE_RETURN_what): Macros to print return value for
15826         various types.
15828         * src/nsterm.m: Remove old NSTRACE macro
15829         * src/nsterm.m (nstrace_num): Trace counter.
15830         (nstrace_depth): Current call depth.
15831         (nstrace_leave): NSTRACE support function, called when the
15832         local variable "nstrace_enabled" goes out of scope using the
15833         "cleanup" extension.
15834         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
15835         (constrain_frame_rect, ns_constrain_all_frames)
15836         (ns_update_auto_hide_menu_bar, ns_update_begin)
15837         (ns_update_window_begin, update_window_end, ns_update_end)
15838         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
15839         (ns_frame_rehighlight, x_make_frame_visible)
15840         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
15841         (x_destroy_window, x_set_offset, x_set_window_size)
15842         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
15843         (ns_defined_color, frame_set_mouse_pixel_position)
15844         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
15845         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
15846         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
15847         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
15848         (dumpcursor, ns_draw_vertical_window_border)
15849         (ns_draw_window_divider, ns_draw_relief)
15850         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
15851         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
15852         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
15853         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
15854         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
15855         (ns_create_terminal, ns_term_init, sendEvent)
15856         (applicationDidFinishLaunching, applicationDidBecomeActive)
15857         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
15858         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
15859         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
15860         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
15861         (mouse_autoselect_window, in_window, mouseDragged)
15862         (rightMouseDragged, otherMouseDragged, windowShouldClose)
15863         (updateFrameSize, windowWillResize, windowDidResize)
15864         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
15865         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
15866         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
15867         (windowDidEnterFullScreen, windowWillExitFullScreen)
15868         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
15869         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
15870         (draggingEntered, performDragOperation, validRequestorForSendType)
15871         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
15872         (EmacsScroller_initFrame, EmacsScroller_setFrame)
15873         (EmacsScroller_dealloc, condemn, reprieve, judge)
15874         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
15875         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
15877         * src/nsfns.m: Remove old NSTRACE macro
15878         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
15879         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
15880         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
15882         * src/nsimage.m: Remove old NSTRACE macro
15883         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
15884         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
15886         * src/nsmenu.m: Remove old NSTRACE macro
15887         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
15888         Use new trace system.
15890 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
15892         No need to use eval-and-compile
15894         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
15895         autoload epg functions.
15897 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
15899         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
15901         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
15902         epg-context-set-passphrase-callback, epg-decrypt-string, and
15903         epg-encrypt-string; require epg when compiling for the setf-method
15904         for epg-context-armor. (bug#21724)
15906 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
15908         Include file cleanup for w32 files in src directory
15910         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
15911         fontset.h, blockinput.h.
15912         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
15913         charset.h, fontset.h.
15914         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
15915         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
15916         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
15917         in an ifdef-ed away block.
15918         Include fcntl.h for CYGWIN.
15919         (set_frame_param): Remove unused function.
15920         * src/w32select.c: Don't include charset.h and composite.h.
15921         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
15922         due to pointer signedness mismatches.
15923         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
15924         due to pointer signedness mismatches.
15925         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
15926         process.h, dispextern.h.
15927         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
15928         (Fw32_application_type): Avoid compiler warnings due to pointer
15929         signedness mismatches.
15930         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
15931         character.h, charset.h, dispextern.h.
15932         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
15933         to pointer signedness mismatches.
15934         * src/w32inevt.c: Don't include dispextern.h, window.h,
15935         termhooks.h, w32heap.h.
15936         * src/w32font.c: Don't include dispextern.h, character.h,
15937         charset.h, fontset.h, font.h.
15938         (intern_font_name, add_font_entity_to_list)
15939         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
15940         (list_all_matching_fonts): Avoid compiler warnings due to pointer
15941         signedness mismatches.
15942         * src/w32fns.c: Don't include character.h, intervals.h,
15943         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
15944         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
15945         (w32_color_map_lookup, add_system_logical_colors_to_map)
15946         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
15947         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
15948         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
15949         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
15950         compiler warnings, mainly due to pointer signedness mismatches.
15951         (unwind_create_frame_1): Remove unused function.
15952         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
15953         window.h, termhooks.h, dispextern.h.
15954         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
15955         signedness mismatch.
15956         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
15957         w32heap.h.
15959 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
15961         Improve doc-view wrt. auto-revert-mode
15963         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
15964         is corrupted (bug#21729).
15965         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
15967 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
15969         Describe dired-do-compress-to in the manual
15971         * etc/NEWS: Update.
15973         * lisp/dired-aux.el: Fix typo.
15975         * doc/emacs/dired.texi: Add entry.
15977 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
15979         Further fix for proper locale handling in tramp-gvfs.el
15981         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
15982         Just suppress LC_MESSAGES locale category settings.
15984 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
15986         New lispref section “Security Considerations”
15988         This attempts to document some of the issues recently discussed
15989         on emacs-devel, and to indicate other such issues.  The section
15990         could be a lot longer.
15991         * doc/lispref/os.texi (Security Considerations):
15992         New node.
15993         * doc/lispref/elisp.texi (Top):
15994         * doc/lispref/processes.texi (Shell Arguments):
15995         * lisp/subr.el (shell-quote-argument):
15996         * src/callproc.c (syms_of_callproc):
15997         Reference it.
15999 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
16001         Merge from gnulib
16003         This incorporates:
16004         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
16005         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
16006         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
16007         Copy from gnulib.
16009 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
16011         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
16012         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
16014 2015-10-21  Ken Brown  <kbrown@cornell.edu>
16016         Further include-file cleanup
16018         * src/sheap.c: Include stdlib.h.
16019         * src/unexcw.c: Include string.h.
16021 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
16023         Fix logic in 'server-kill-emacs-query-function'
16025         * lisp/server.el (server-kill-emacs-query-function): Correct the
16026         logic that controls whether the user is asked for confirmation.
16027         (Bug#21723)
16029 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
16031         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
16032         (isearch--lax-regexp-function-p): New function.
16034 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
16036         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
16037         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
16038         around `isearch-regexp-function'.
16040 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
16042         * lisp/isearch.el: Rename word search to regexp-function search.
16043         `isearch-word' went well beyond its original purpose, and the name
16044         no longer makes sense.  It is now called
16045         `isearch-regexp-function', and its value should always be a function
16046         that converts a string to a regexp (though setting it to t is still
16047         supported for now).
16048         (isearch-word): Make obsolete.
16049         (isearch-regexp-function): New variable.
16050         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
16051         (with-isearch-suspended, isearch-toggle-regexp)
16052         (isearch-toggle-word, isearch-toggle-symbol)
16053         (isearch-toggle-character-fold, isearch-query-replace)
16054         (isearch-occur, isearch-highlight-regexp)
16055         (isearch-search-and-update, isearch-message-prefix)
16056         (isearch-search-fun-default, isearch-search)
16057         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
16058         Use it.
16059         (isearch-lazy-highlight-regexp-function): New var.
16060         (isearch-lazy-highlight-word): Make obsolete.
16061         (isearch--describe-regexp-mode): New function.
16062         (isearch--describe-word-mode): Make obsolete.
16064         * lisp/info.el (Info-isearch-search):
16065         * lisp/replace.el (replace-search, replace-highlight):
16066         * lisp/obsolete/longlines.el (longlines-search-function):
16067         * lisp/hexl.el (hexl-isearch-search-function):
16068         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
16069         Use the new var.
16071 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
16073         Add dired-do-compress-to command bound to "c"
16075         * lisp/dired-aux.el (dired-shell-command): Use the caller's
16076           `default-directory', return the result of `process-file'.
16077         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
16078         used by default.
16079         (dired-compress-files-alist): New defvar.
16080         (dired-do-compress-to): New command.
16082         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
16083         (dired-do-compress-to): Add an autoload entry.
16085         * etc/NEWS: Add two entries.
16087 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
16089         Make RefTeX work with LaTeX subfiles package
16091         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
16092         document class argument as master file for referencing purposes.
16094 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
16096         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
16098 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
16100         Include-file cleanup for src directory
16102         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
16103         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
16104         but does not include it directly.  As a general rule, a source
16105         file should include foo.h if it needs the interfaces that foo.h
16106         defines.
16107         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
16108         systime.h.
16109         * src/atimer.c: Don’t include blockinput.h.
16110         * src/buffer.c: Include coding.h, systime.h.  Don’t include
16111         keyboard.h, coding.h.
16112         * src/callint.c: Don’t include commands.h, keymap.h.
16113         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
16114         systty.h, termhooks.h.
16115         * src/casetab.c: Don’t include character.h.
16116         * src/category.c: Don’t include charset.h, keymap.h.
16117         * src/ccl.h: Don’t include character.h.
16118         * src/character.c: Don’t include charset.h.
16119         * src/charset.c: Don’t include disptab.h.
16120         * src/chartab.c: Don’t include ccl.h.
16121         * src/cm.c: Don’t include frame.h, termhooks.h.
16122         * src/cmds.c: Don’t include window.h, dispextern.h.
16123         * src/coding.c: Don’t include window.h, frame.h.
16124         * src/composite.c: Include composite.h.  Don’t include window.h,
16125         font.h.
16126         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
16127         * src/dbusbind.c: Don’t include frame.h.
16128         * src/decompress.c: Don’t include character.h.
16129         * src/dired.c: Don’t include character.h, commands.h, charset.h.
16130         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
16131         process.h, timespec.h.  Include systime.h.
16132         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
16133         * src/editfns.c: Include composite.h.  Don’t include frame.h.
16134         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
16135         commands.h, systty.h..
16136         * src/fileio.c: Don’t include intervals.h, dispextern.h.
16137         Include composite.h.
16138         * src/filelock.c: Don’t include character.h, systime.h.
16139         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
16140         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
16141         * src/font.c: Include termhooks.h.
16142         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
16143         struct composition_it, struct face, struct glyph_string.
16144         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
16145         intervals.h, window.h, termhooks.h.
16146         * src/frame.c: Don’t include character.h, commands.h, font.h.
16147         * src/frame.h: Don’t include dispextern.h.
16148         * src/fringe.c: Don’t include character.h.
16149         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
16150         character.h, charset.h, fontset.h.
16151         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
16152         fontset.h.
16153         * src/ftxfont.c: Don’t include dispextern.h, character.h,
16154         charset.h, fontset.h.
16155         * src/gfilenotify.c: Don’t include frame.h, process.h.
16156         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
16157         Don’t include syssignal.h, buffer.h, charset.h, font.h.
16158         * src/gtkutil.h: Don’t include frame.h.
16159         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
16160         Don’t include character.h.
16161         * src/indent.c: Don’t include keyboard.h, termchar.h.
16162         * src/inotify.c: Don’t include character.h, frame.h.
16163         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
16164         * src/intervals.c: Don’t include character.h, keyboard.h.
16165         * src/intervals.h: Don’t include dispextern.h, composite.h.
16166         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
16167         Include coding.h.
16168         * src/keyboard.h: Don’t incldue systime.h.
16169         * src/keymap.c: Don’t include charset.h, frame.h.
16170         * src/lread.c: Include dispextern.h and systime.h.
16171         Don’t include frame.h.  Include systime.h.
16172         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
16173         * src/menu.c: Include character.h, coding.h.  Don’t include
16174         dispextern.h.
16175         * src/menu.h: Don’t include systime.h.
16176         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
16177         intervals.h, termhooks.h.
16178         * src/print.c: Include coding.h.  Don’t include keyboard.h,
16179         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
16180         Add forward decl of struct terminal.
16181         * src/process.c: Don’t include termhooks.h, commands.h,
16182         dispextern.h, composite.h.
16183         * src/region-cache.c: Don’t include character.h.
16184         * src/scroll.c: Don’t include keyboard.h, window.h.
16185         * src/search.c: Don’t include category.h, commands.h.
16186         * src/sound.c: Don’t include dispextern.h.
16187         * src/syntax.c: Don’t include command.h, keymap.h.
16188         * src/sysdep.c: Don’t include window.h, dispextern.h.
16189         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
16190         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
16191         * src/terminal.c: Include character.h.
16192         Don’t include charset.h, coding.h.
16193         * src/textprop.c: Don’t include character.h.
16194         * src/undo.c: Don’t include character.h, commands.h, window.h.
16195         * src/unexsol.c: Don’t include character.h, charset.h.
16196         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
16197         window.h, dispextern.h, blockinput.h, character.h, font.h.
16198         * src/widgetprv.h: Don’t include widget.h.
16199         * src/window.c: Don’t include character.h, menu.h, intervals.h.
16200         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
16201         macros.h, process.h.
16202         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
16203         intervals.h.
16204         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
16205         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
16206         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
16207         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
16208         * src/xgselect.c: Don’t include timespec.h, frame.h.
16209         Include systime.h.
16210         * src/xgselect.h: Don’t include time.h.
16211         Use a forward decl to struct timespec instead.
16212         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
16213         dispextern.h.  Include systime.h.
16214         * src/xml.c: Don’t include character.h.
16215         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
16216         * src/xselect.c: Don’t include dispextern.h, character.h,
16217         buffer.h, process.h.
16218         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
16219         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
16220         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
16222 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
16224         (/ N) now returns the reciprocal of N
16226         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
16227         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
16228         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
16229         (color-xyz-to-srgb, color-xyz-to-lab):
16230         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
16231         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
16232         (shr-color-hsl-to-rgb-fractions):
16233         Exploit the change to simplify the code a bit.
16234         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
16235         Don’t complain about single-argument calls to ‘/’.
16236         * src/data.c (arith_driver, float_arith_driver):
16237         Implement the change.
16239 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
16241         Call vc-dir-refresh after stash operations
16243         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
16244         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
16246         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
16247         since it can be abbreviated (as returned by vc-find-root).
16249 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
16251         * lisp/vc/vc-svn.el:
16252         * lisp/vc/vc-mtn.el:
16253         * lisp/vc/vc-hg.el:
16254         * lisp/vc/vc-cvs.el:
16255         * lisp/vc/vc-git.el:
16256         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
16257         Its usages have been replaced with vc-run-delayed.
16259 2015-10-20  Dima Kogan  <dima@secretsauce.net>
16261         Fix memory leak in fontset handling
16263         * src/font.c (copy_font_spec): Make a deep copy of the input
16264         argument FONT.  (Bug#21651)
16266 2015-10-20  Michael Sperber  <mike@xemacs.org>
16268         * lisp/gnus/mailcap.el (mailcap-mime-data):
16269         Conditonalize `doc-view-mode', which does not exist on XEmacs.
16271 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
16273         Update the way directories are compressed
16275         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
16276         for *.tar.gz decompression to use a pipe.
16277         Add an entry for the default directory compression (to *.tar.g).
16278         (dired-compress-file): Update.
16280         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
16282 2015-10-20  Michael Sperber  <mike@xemacs.org>
16284         Unbreak `group' option for `mail-sources'
16286         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
16287         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
16288         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
16290 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
16292         New function seq-position
16294         * lisp/emacs-lisp/seq.el (seq-position): New function.
16295         * test/automated/seq-tests.el: New tests for seq-position.
16296         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
16298 2015-10-19  Ken Brown  <kbrown@cornell.edu>
16300         Enable --with-wide-int build on 32-bit Cygwin
16302         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
16303         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
16305 2015-10-19  Glenn Morris  <rgm@gnu.org>
16307         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
16309 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
16311         Resurrect image loading under auto-image-file-mode
16313         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
16314         'openp' specially.  This special case was lost in the changes on
16315         2015-08-18.  (Bug#21685)
16317 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
16319         Fix return value of 'set-file-extended-attributes'
16321         * lisp/files.el (set-file-extended-attributes): Return non-nil
16322         when setting either ACLs or SELinux context succeeds.  Document
16323         the return value.  (Bug#21699)
16325         * doc/lispref/files.texi (Changing Files): Document the return
16326         value of set-file-extended-attributes.
16328 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
16330         Improve documentation of functions that change files
16332         * doc/lispref/files.texi (Changing Files): Document that these
16333         functions signal an error on failure.
16335 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
16337         Fix doc string of 'shell-quote-argument'
16339         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
16341 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
16343         Some minor Tramp changes
16345         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
16347         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
16348         Expand `tramp-auto-save-directory'.
16350 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
16352         Minor edits in Tramp
16354         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
16355         Declare it.
16357         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
16358         Remove declaration.
16360 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
16362         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
16364 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
16366         Avoid crashes when redisplayng a window changes faces or fonts
16368         * src/xdisp.c (redisplay_internal): If redisplaying the selected
16369         window or one of the frames turns on the frame's 'redisplay' flag,
16370         redisplay again.  (Bug#21428)
16372         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
16374 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
16376         Solve timimg issues in file-notify-tests.el
16378         * test/automated/file-notify-tests.el (file-notify-test02-events):
16379         Rectify `attribute-change' tests.  There are timing issues with
16380         gfilenotify.  (Bug#21669)
16382 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
16384         Fix quoting of data within htmlfontify doc
16386         * doc/misc/htmlfontify.texi (Data Structures, Customization):
16387         Fix quoting of data structures.  A Lisp quote is needed only
16388         when data appears within Lisp code.
16390 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
16392         * lisp/emacs-lisp/package.el: Reload archive-contents if
16393         priorities change.
16394         (package--old-archive-priorities): New variable.
16395         (package-read-all-archive-contents, package-menu--refresh): Use it
16396         to decide when the `package-archive-contents' needs to be read
16397         again.
16399 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
16401         Make src headers idempotent and standalone
16403         Redo src/*.h so that each include file is idempotent (that is, can
16404         be included multiple times with the latter inclusions having no
16405         effect) and standalone (that is, can be included by itself,
16406         with no include file other than config.h needed as a prerequisite).
16407         This is standard practice in GNU programs nowadays.
16408         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
16409         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
16410         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
16411         * src/regex.h [emacs]:
16412         * src/syntax.h, src/systty.h, src/termhooks.h:
16413         Include lisp.h, for Lisp_Object.
16414         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
16415         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
16416         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
16417         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
16418         * src/termopts.h, src/tparam.h, src/unexec.h:
16419         Protect against multiple inclusion.
16420         * src/buffer.h: Include character.h, for STRING_CHAR.
16421         * src/emacsgtkfixed.h (struct frame):
16422         * src/fontset.h (struct face):
16423         * src/region-cache.h (struct buffer):
16424         * src/termhooks.h (struct glyph):
16425         * src/xsettings.h (struct x_display_info):
16426         Add possibly-forward decl.
16427         * src/syntax.h: Include buffer.h, for BVAR.
16428         * src/sysselect.h: Include lisp.h, for eassume.
16429         * src/termchar.h: Include <stdio.h>, for FILE.
16430         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
16431         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
16433 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
16435         Handle symlink targets containing spaces in tramp-gvfs.el
16437         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
16438         Handle symlink targets containing spaces.
16440 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
16442         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
16444         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
16445         same reason that `load-path' shouldn't.  Setting it via the customize
16446         interface is a trap for the user.
16448         Installed themes commonly add themselves to this variable, which means
16449         its value is not fit for being saved (it will permanently remember dirs
16450         that don't exist anymore).
16452         This is aggravated by the fact that Emacs always applies the `user'
16453         theme on top of any theme that's loaded, since this will apply the old
16454         variable value and remove any new directories that had been recently
16455         added by themes themselves.
16457         Not to mention, we already have `custom-theme-directory', which is safe
16458         to customize.
16460 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
16462         * lisp/mpc.el: Rename the new toggling commands.
16463         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
16464         (mpc-toggle-shuffle): Add "-toggle" in the name.
16466 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
16468         Improve the doc string of 'completion-boundaries'
16470         * lisp/minibuffer.el (completion-boundaries): Rename the argument
16471         TABLE to COLLECTION, for consistency with other high-level
16472         completion functions.  Document how COLLECTION is called if it
16473         is a function.  (Bug#21644)
16475 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
16477         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
16479 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
16481         Make dired-do-compress work for *.zip files
16483         * lisp/dired-aux.el (dired-check-process): Transform the top-level
16484           comment into a docstring.
16485         (dired-shell-command): New command.  This mirrors
16486         `dired-check-process', but is more user-friendly for passing
16487         arguments.
16488         (dired-compress-file-suffixes): Allow to specify the command switches
16489         along with input (%i) and output (%o) inside the PROGRAM part.
16490         Add an entry for *.zip files, and update the entry for *.tar.gz files
16491         to the new style.  Update the docstring.
16492         (dired-compress-file): When PROGRAM matches %i or %o, use the new
16493         logic.
16494         (dired-update-file-line): Avoid an error when at end of buffer.
16496         Fixes bug#21637.
16498 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
16500         Minor improvement in documentation of internals
16502         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
16504 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
16506         Improve documentation of COLLECTION in completion functions
16508         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
16509         cross-reference to "Programmed Completion".
16511         * src/minibuf.c (Fcompleting_read): Improve the doc string.
16512         (Bug#21644)
16514 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
16516         Add more release info to etc/HISTORY
16518         * etc/HISTORY: Add more release information about 19.x and 20.x
16519         versions.
16521 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
16523         New file etc/HISTORY
16525         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
16526         * etc/HISTORY: New file.
16527         * etc/NEWS: Mention it.
16529 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
16531         js-mode: Don't misindent generator methods
16533         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
16534         generator methods from multiplication operator
16535         (https://github.com/mooz/js2-mode/issues/275).
16537 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
16539         Fix animation timeout delay calculation
16541         * lisp/image.el (image-animate-timeout):
16542         Don’t assume speed is floating-point.
16544 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
16546         Add commands for controlling MPD modes
16548         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
16549         (mpc-cmd-single): New functions.
16550         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
16551         (mpc-mode-menu): Add new commands as menu items.
16553 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
16555         Refer to `(elisp)Basic Completion' in completing-read docstring
16557         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
16558         Completion' in the docstring (bug#21644).
16560 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
16562         * lisp/mpc.el (mpc-format): Always push form to pred
16564 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
16566         Spelling fixes
16568         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
16569         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
16570         Fix misspelling of nonexistent file name.
16572 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
16574         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
16576 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
16578         Some editing fixes in Tramp
16580         * lisp/net/tramp-gvfs.el:
16581         * doc/misc/tramp.texi: "customer option" -> "custom option".
16583         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
16585 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
16587         Use proper localization in tramp-gvfs.el
16589         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
16590         Suppress localized settings in order to proper parse gfvs output.
16592 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
16594         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
16595         Quote argument in proper order.  (Bug#21562)
16597 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
16599         Fix typos in docstrings
16601         * lisp/emacs-lisp/map.el:
16602         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
16603           macros.
16605 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
16607         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
16609 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
16611         Make dired-jump work with tar-subfile-mode
16613         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
16614           emitting an error, switch to `tar-superior-buffer'.
16616 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
16618         * .gitignore: Add build-aux/ar-lib.
16620 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
16622         Better docstrings in seq.el and map.el
16624         * lisp/emacs-lisp/map.el:
16625         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
16627 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
16629         Merge from gnulib
16631         This incorporates:
16632         2015-10-13 binary-io, u64, unistd: port to strict C
16633         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
16634         2015-09-25 c-ctype: port better to z/OS EBCDIC
16635         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
16636         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
16637         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
16638         Copy from gnulib.
16640 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
16642         Take XPNTR private
16644         * src/alloc.c (PURE_POINTER_P): Remove.
16645         All uses replaced with PURE_P.
16646         (XPNTR_OR_SYMBOL_OFFSET): New function.
16647         (XPNTR): Move here from lisp.h.
16648         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
16649         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
16650         Remove unnecessary cast.
16651         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
16652         to avoid an unnecessary runtime test for symbols.
16653         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
16654         Only alloc.c needs XPNTR now.
16656 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
16658         Add MPC play/pause command
16660         * lisp/mpc.el (mpc-toggle-play): New command.
16661         (mpc-mode-map): Bind it to "s".
16662         (mpc-mode-menu): Add corresponding menu item.
16664 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
16666         Add bindings and menu items for prev and next tracks
16668         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
16669         "<" to mpc-prev.
16670         (mpc-mode-menu): Add corresponding menu items
16672 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
16674         Reduce face-related consing during frame creation.
16676         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
16677         attribute list once.
16678         (face-spec-reset-face): Use it instead of building the list.
16680 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
16682         Do process ConfigureNotify events indicating size changes.
16684         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
16685         events don't have the same size, process each one.
16687 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
16689         Derive mpc-mode from special-mode
16691         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
16692         (mpc-mode): Derive from special mode.
16693         (mpc-songs-mode-map): Don't set parent keymap.
16695 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
16697         Fix error messages for when covers are not found.
16699         The last change to mpc-format let the binding to file call
16700         mpc-file-local-copy with nil argument.  Instead, employ if-let here
16701         so nil bindings don't result in needless computation and errors.
16702         * lisp/mpc.el: Require 'subr-x at compile time.
16703         * lisp/mpc.el (mpc-format): Use if-let.
16705 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
16707         Make dired-do-compress work for *.tar.gz files
16709         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
16710           "tar -zxvf" to *.tar.gz; update docstring.
16712         (dired-compress-file): Allow to specify switches after the command in
16713         `dired-compress-file-suffixes'.
16715 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
16717         Make dired-do-compress work for directories
16719         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
16720           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
16721         Also convert the top comment into a docstring.
16723 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
16725         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
16727         ... since it might come straight from the memoizing table.
16729 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
16731         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
16733 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
16735         Use special-mode in eww list modes
16737         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
16738         (eww-buffers-mode): Derive from special-mode and remove redundant
16739         setting of buffer-read-only.
16740         (eww-mode-map): Remove redundant keymap parent setting.
16741         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
16742         Remove redundant keymap suppressions and mappings.
16744 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
16746         Allow setting frame pixel sizes from frame parameters (Bug#21415)
16748         Also fix some misfeatures in frame (re-)sizing code, add more
16749         debugging information and remove some dead code.
16751         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
16752         parameter names when setting `frame-size-history'.
16753         (frame--size-history): New function.
16755         * src/frame.c (frame_inhibit_resize): If frame has not been made
16756         yet, return t if inhibit_horizontal_resize or
16757         inhibit_vertical_resize bit have been set.
16758         (adjust_frame_size): Simplify.
16759         (make_frame): Initialize inhibit_horizontal_resize,
16760         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
16761         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
16762         inhibit_vertical_resize slots.
16763         (x_set_frame_parameters): Handle `text-pixels' specification for
16764         width and height parameters.  Don't consider new_height or
16765         new_width changes.  Call adjust_frame_size instead of
16766         Fset_frame_size.
16767         (x_figure_window_size): Two new arguments x_width and y_width
16768         returning frame's figures width and height.  Calculate tool bar
16769         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
16770         Handle `text-pixels' specification for width and height
16771         parameters.
16772         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
16773         (Qx_set_window_size_1, Qx_set_window_size_2)
16774         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
16775         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
16776         (Qfree_frame_menubar_2): New symbols.
16777         * src/frame.h (structure frame): New booleans
16778         tool_bar_redisplayed, tool_bar_resized,
16779         inhibit_horizontal_resize, inhibit_vertical_resize.
16780         (x_figure_window_size): Update external declaration.
16781         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
16782         calling gtk_window_resize.
16783         (update_frame_tool_bar): Make inhibiting of frame resizing more
16784         discriminative.  Set tool_bar_resized bit.
16785         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
16786         resizing more discriminative.  Call adjust_frame_size instead of
16787         x_set_window_size.
16788         (Fx_create_frame): Handle x_width and x_height if
16789         set by x_figure_window_size.
16790         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
16791         subtract 3 from tool bar height.
16792         (x_set_window_size): Add frame_size_history_add call.
16793         (x_new_font): Call adjust_frame_size instead of
16794         x_set_window_size.
16795         * src/w32fns.c (x_change_tool_bar_height): Reset
16796         tool_bar_redisplayed and tool_bar_resized bits when adding tool
16797         bar.  Make inhibiting of frame resizing more discriminative.
16798         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
16799         (Fx_create_frame): Handle x_width and x_height if set by
16800         x_figure_window_size.  Set size hints before adjusting frame size.
16801         (x_create_tip_frame): Adjust x_figure_window_size call.
16802         * src/w32term.c (x_set_window_size): Add frame_size_history_add
16803         call.
16804         * src/widget.c (set_frame_size): Remove dead code.  Add
16805         frame_size_history_add call.  When frame_resize_pixelwise is t
16806         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
16807         pixel_width and pixel_height.
16808         (update_various_frame_slots): Remove dead code.
16809         (EmacsFrameResize): Add more information in
16810         frame_size_history_add call.
16811         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
16812         is not set.
16813         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
16814         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
16815         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
16816         tool_bar_resized bits when adding tool bar.  Make inhibiting of
16817         frame resizing more discriminative.
16818         (Fx_create_frame): Handle x_width and x_height if set by
16819         x_figure_window_size.  Set size hints before adjusting frame size.
16820         (x_create_tip_frame): Adjust x_figure_window_size call.
16821         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
16822         (set_frame_menubar): On Lucid never add core-border-width to
16823         avoid that adding XtNinternalBorderWidth adds it again.
16824         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
16825         * src/xterm.c (x_new_font): In non-toolkit case handle size
16826         change of menu bar.
16827         (x_set_window_size_1): Fix calls to frame_size_history_add.
16828         (x_wm_set_size_hint): Remove dead code.  Set
16829         size_hints.min_width and size_hints.min_height to base_width and
16830         base_height.
16832 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
16834         * test/automated/file-notify-tests.el (file-notify--test-timeout):
16835         Add docstring.  Increase to 10 seconds for remote
16836         directories.  (Bug#21669)
16838 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
16840         Unmacroize ebrowse.c and etags.c a bit
16842         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
16843         (streq, filename_eq, set_flag, has_flag): Now inline functions.
16844         (set_flag): First arg is now an address, not an lvalue.
16845         All callers changed.
16846         (filename_eq, set_flag, has_flag):
16847         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
16848         All callers changed.
16849         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
16850         Now inline functions.  Remove asserts that are unnecessary these
16851         days (and in some cases were too-generous anyway).
16853 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
16855         Use highlight for current items
16857         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
16858         Apply highlight face instead of region face.
16860 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
16862         Search for more cover image names in MPC
16864         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
16865         case insensitively
16867 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
16869         Remove or comment out unused variables
16871         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
16872         nontext_cursor, mode_cursor, hand_cursor and count.
16873         (x_change_tool_bar_height): Remove variable old_text_height.
16874         (deliver_wm_chars): Remove variable strip_Alt.
16875         (Fw32_shell_execute): Remove variable document_a.
16876         (Fw32_frame_geometry): Remove variable fullboth.
16877         * src/w32term.c (w32_setup_relief_color): Comment out variable
16878         w32_display_info.
16879         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
16880         (w32_read_socket): Comment out variables rows, columns.
16881         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
16883 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
16885         * src/w32proc.c (sys_select): Fix bitwise test.
16887 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
16889         Minor typo corrections in doc strings
16891         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
16892         Doc fixes.
16894 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
16896         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
16898 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
16900         Attempt to avoid crashes in plist-member
16902         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
16903         and a call to XCDR.  (Bug#21655)
16905 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
16907         * lisp/select.el (gui-get-primary-selection): In
16908         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
16910 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
16912         Support RTF in doc-view
16914         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
16916 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
16918         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
16920 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
16922         Replace the usage of an obsolete function in auth-source.el
16924         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
16925         Replace an usage of `epg-context-set-armor' with `setf'.
16927 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
16929         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
16931 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
16933         Have calc-yank recognize numbers in different bases.
16935         * lisp/calc/calc-yank.el (math-number-regexp): New function.
16936         (calc-yank): Use `math-number-regexp' to recognize numbers.
16938 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
16940         Handle an opaque-move X11 window manager operation more efficiently
16942         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
16943         followed by more ConfigureNotify events for the same window, process
16944         only the last one.
16946 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
16948         Fix cursor setting for tip frame; re-enable cursor generation
16950         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
16951         attributes sent when creating the new X window.  Don't skip setting
16952         the pointerColor parameter.
16954 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
16956         Rewrite x_set_mouse_color to sync less
16958         We can track serial numbers of X requests and correlate error events
16959         with the associated requests.  This way we can identify errors for
16960         specific calls without having to use XSync after every one.
16962         * src/xfns.c (enum mouse_cursor): New type.
16963         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
16964         (mouse_cursor_types): New array listing the Lisp variables and default
16965         cursor appearances for each cursor type.
16966         (x_set_mouse_color_handler): New function; checks error event serial
16967         number against submitted requests.
16968         (x_set_mouse_color): Updated to use the new error handler callback,
16969         and to be more table-driven, to simplify repetitious code.
16971 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
16973         Add x_catch_errors_with_handler
16975         * src/xterm.c (struct x_error_message_stack): Add new fields for a
16976         callback function and associated data pointer.
16977         (x_error_catcher): If the callback function is set, call it after
16978         saving the error message string.
16979         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
16980         accepts a callback function and data pointer.
16981         (x_catch_errors): Now a wrapper function.
16982         * src/xterm.h (x_special_error_handler): New typedef.
16983         (x_catch_errors_with_handler): Declare.
16985 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
16987         Introduce x_uncatch_errors_after_check to reduce XSync calls
16989         Both x_had_errors_p and x_check_errors call XSync, so if they're
16990         immediately followed by x_uncatch_errors, its XSync call will be
16991         redundant, resulting in a wasted round trip to the X server.
16993         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
16994         x_uncatch_errors without the XSync call.
16995         (XTmouse_position, x_wm_supports):
16996         * src/xfns.c (x_set_mouse_color):
16997         * src/xmenu.c (Fx_menu_bar_open_internal):
16998         * src/xselect.c (x_own_selection, x_get_foreign_selection):
16999         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
17000         * src/xterm.h (x_uncatch_errors_after_check): Declare.
17002 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
17004         Document the optional prefix to `calc-yank'
17006         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
17007         prefix to `calc-yank'.
17008         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
17009         the Calc buffer are yanked back unchanged.
17011 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
17013         * lisp/calendar/calendar.el: Display buffer before executing body.
17015         In each use of this macro, the modeline is derived from a window width
17016         calculation, which will be wrong if (display-buffer) splits the window
17017         horizontally.
17019 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
17021         Use ‘echo’ safely with ‘\’ or leading ‘-’
17023         POSIX says that ‘echo FOO’ produces implementation-defined output
17024         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
17025         behavior in that case.
17026         * Makefile.in (removenullpaths): Remove.
17027         (epaths-force): Rewrite to avoid the need for ‘echo’.
17028         (install-etc): Be clearer about escaping the shell metacharacters
17029         ‘\’ and ‘$’.
17030         * Makefile.in (install-arch-indep, install-etcdoc):
17031         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
17032         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
17033         * configure.ac, lib-src/rcs2log, make-dist:
17034         * src/Makefile.in (lisp.mk):
17035         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
17036         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
17037         if $foo can contain arbitrary characters.
17038         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
17039         * doc/lispref/two-volume.make (vol1.pdf):
17040         * test/etags/make-src/Makefile (web ftp publish):
17041         Use ‘printf’ rather than ‘echo -e’.
17043 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
17045         Allow numbers with different radixes to be yanked.
17047         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
17048         default base 10.
17050 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
17052         Improve CHECK_IMPURE and PURE_P speedup
17054         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
17056 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
17058         Use events instead of chars to keep track of steps.
17060         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
17061         to keep track of steps.
17063 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
17065         Fix --enable-gcc-warnings problem with older GCC
17067         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
17068         This is for building with --enable-gcc-warnings with
17069         GCC 4.6 through 5.0.
17071 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
17073         Fix vertical-motion in truncated lines that end in a stretch
17075         * src/indent.c (Fvertical_motion): Expect overshoot when point is
17076         beyond window margin and lines are truncated, even if we have a
17077         stretch at point.  (Bug#21468)
17079 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
17081         Avoid link-time errors due to inline functions
17083         * src/emacs.c: Include puresize.h, to avoid link-time errors in
17084         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
17085         inline functions.
17087 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
17089         * src/data.c (Faset): Fix last change.
17091 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
17093         CHECK_IMPURE and PURE_P speedup
17095         * src/intervals.c (create_root_interval):
17096         Do CHECK_IMPURE only for strings; not needed for buffers.
17097         Prefer ! STRINGP to BUFFERP, for a tad more speed.
17098         * src/puresize.h (CHECK_IMPURE, PURE_P):
17099         Now inline functions instead of macros.
17100         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
17101         All callers changed.
17102         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
17103         All callers changed.
17105 2015-10-09  Noah Friedman  <friedman@splode.com>
17107         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
17109 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
17111         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
17113         our after-change-function, rather than re-adding it if it was removed.
17115 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
17117         * lisp/cedet/ede: Silence some compiler warnings
17119         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
17120         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
17121         (ede-apply-object-keymap, ede-reset-all-buffers)
17122         (ede-auto-add-to-target): Use dolist.
17123         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
17124         Use field names rather than initarg names in `oref'.
17125         (ede-load-project-file): Remove unused var `file'.
17126         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
17127         (ede-set): Remove unused var `a'.
17129         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
17130         (ede-project-autoload): Avoid the old-style "name" argument.
17131         (ede-emacs-find-matching-target): Use field names rather than initarg
17132         names in `oref'.
17134         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
17135         (ede-linux-load, ede-project-autoload): Avoid the old-style
17136         "name" argument.
17137         (ede-linux-find-matching-target): Use field names rather than initarg
17138         names in `oref'.
17140 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
17142         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
17144 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
17146         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
17147         indenting too far after ":-".
17149 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
17151         Update case-table and categories of recently added characters
17153         * lisp/international/characters.el: Update information about Latin
17154         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
17155         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
17156         blocks.  (Byug#21654)
17158 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
17160         * src/frame.c (adjust_frame_size): In minibuffer-only windows
17161         don't count minibuffer height twice.  (Bug#21643)
17163 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
17165         Avoid inflooping in font-lock
17167         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
17168         inhibit-field-text-motion around the call to
17169         line-beginning-position, to avoid inflooping.  (Bug#21615)
17171 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
17173         Refactor duplicated code; ensure default is in completions
17175         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
17176         New function.
17177         (reftex-extract-bib-entries): Use it.
17178         (reftex-extract-bib-entries-from-thebibliography): Use it.
17180 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
17182         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
17183         in the example.
17185 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
17187         * lisp/calc/calc.el: Silence byte-compiler warnings.
17188         (calc-scan-for-dels): Use ignore-errors.
17189         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
17190         (calc-read-key-sequence): Remove unused var `prompt2'.
17191         (calc-kill-stack-buffer): Remove unused var `buflist'.
17192         (calc): Remove unused var `oldbuf'.
17193         (calc-refresh): Use inhibit-read-only.
17194         (calc-can-abbrev-vectors): Declare.
17195         (calc-record): Remove unused var `mainbuf'.
17196         (math-sub-bignum): Remove unused var `sum'.
17197         (math-svo-c, math-svo-wid, math-svo-off): Declare.
17199 2015-10-08  Daiki Ueno  <ueno@gnu.org>
17201         Use g_clear_error instead of g_error_free
17203         * src/image.c: Define g_clear_error instead of g_error_free.
17204         (init_svg_functions): Resolve symbol g_clear_error instead of
17205         g_error_free.
17206         (svg_load_image): Use g_clear_error instead of g_error_free, to
17207         suppress GLib warnings when ERR is not set.  See bug#21641.
17209 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
17211         * src/image.c (image_size_error): Simplify.
17213 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
17215         Fix problems caught with --enable-gcc-warnings
17217         * src/image.c (lookup_rgb_color):
17218         * src/xfns.c (x_defined_color):
17219         * src/xterm.c (x_parse_color):
17220         Remove unused locals.
17222 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
17224         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
17226 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
17228         Format initial input uniformly
17230         * lisp/calc/calc.el (calc-digit-start-entry): New function.
17231         * lisp/calc/calc.el (calcDigit-start):
17232         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
17233         Use `calc-digit-start-entry' to format input.
17235 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
17237         Disable non-working pointerColor setting for X tooltip frame
17239         It generates a bunch of server traffic, but there's some bug wherein
17240         the new mouse cursor settings don't seem to get used.  In most
17241         situations the cursor isn't likely to be seen anyway, so it's not
17242         urgent to fix.
17244         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
17246 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
17248         Reduce some unnecessary X calls
17250         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
17251         call.  If border width is wanted, get it from the XGetGeometry call
17252         instead of calling XGetWindowAttributes on the same window.  Skip some
17253         X calls if we've already detected an error from the X server.
17254         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
17255         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
17257 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
17259         Reduce color allocation/query traffic in the TrueColor case
17261         When working with an X visual with TrueColor class, pixel values can
17262         be generated from the RGB values according to mask value provided by
17263         the server on connection.  Some of the image-handling code was already
17264         doing this.
17266         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
17267         lookup_rgb_color.
17268         (x_mutable_colormap): New function.
17269         * src/image.c (lookup_rgb_color): Move pixel composition code to
17270         x_make_truecolor_pixel.
17271         (x_kill_gs_process): Call x_mutable_colormap.
17272         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
17273         x_mutable_colormap.
17274         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
17275         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
17276         pixel value into RGB values directly, and don't send a request to the
17277         server.
17278         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
17279         value with x_make_truecolor_pixel.
17280         (x_copy_color): For an immutable color map, just return the provided
17281         pixel value.
17283 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
17285         Cache XParseColor results in the X display info structure
17287         With repeated lookups of foreground and background colors for multiple
17288         faces per frame, we issue a lot of redundant color name lookups to the
17289         X server, waiting every time for the response.  On a remote network
17290         with, say, 30ms round-trip time, this can add nearly a full second to
17291         creation of a new frame.
17293         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
17294         * src/image.c (get_spec_bg_or_alpha_as_argb):
17295         (xpm_init_color_cache, xpm_lookup_color):
17296         * src/xfns.c (x_defined_color):
17297         * src/xterm.c (x_parse_color): New function; caches color names not
17298         starting with "#" in the display-info structure.
17299         (x_delete_display): Delete the cache content.
17300         * src/xterm.h (struct color_name_cache_entry): New type.
17301         (x_parse_color): Declare.
17302         (struct x_display_info): Add a new field for the cache.
17304 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
17306         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
17308 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
17310         Fix segfault in image_size_error
17312         * src/image.c (image_size_error): Pass a Lisp string to
17313         image_error, not a C string.  (Bug#21641)
17315 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
17317         Highlight CSS variable definitions
17319         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
17320         CSS variables.  (Bug#21638)
17322 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17324         * test/automated/tabulated-list-test.el: New file.
17325         Test bug#21639 and some basic functionality.
17327 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17329         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
17330         Check if column can be sorted before trying.  (Bug#21639)
17332 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
17334         Add test for `self-insert-command' (bug#21633)
17336         * test/automated/cmds-tests.el: New file.
17338 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
17340         * src/window.c (resize_frame_windows): Don't set root window's
17341         top position when resizing horizontally.
17343 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17345         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
17346         Document more possible values.
17348 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17350         * lisp/textmodes/tex-mode.el: Use lexical-binding.
17352 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17354         * lisp/indent.el (indent--default-inside-comment): New function.
17355         (indent-for-tab-command): Use it for `noindent' indentation.
17357 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
17359         Fix bug in GC_CHECK_MARKED_OBJECTS check
17361         * src/alloc.c (mark_object): Fix bug in checking code.
17362         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
17363         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
17364         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
17365         bucket.  The bug did not affect behavior either in the normal case
17366         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
17367         not have an internal error that a properly-written
17368         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
17370 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
17372         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
17373         Add prettified version for \\Bbb{Q}.
17375 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
17377         * test/automated/package-test.el (package-test-install-single):
17378         Add a test for bug#21625.
17380 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
17382         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
17383           not a package-desc object.  Also clarify documentation.  (Bug#21625)
17385 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
17387         Fix display of characters adjacent to ZWJ and ZWNJ
17389         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
17390         characters the same as directional formatting controls.
17391         (bidi_level_of_next_char): Include all Bn characters in rule L1,
17392         as mandated by the UBA.
17394 2015-10-06  Andreas Schwab  <schwab@suse.de>
17396         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
17397         number.  (Bug#21633)
17399 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
17401         * doc/lispref/objects.texi (Window Type): Add a cross reference.
17403         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
17405 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
17407         * lisp/language/misc-lang.el (composition-function-table):
17408         Fix entries for Arabic and Syriac.
17410 2015-10-05  Damien Cassou  <damien@cassou.me>
17412         Add first unit tests for auth-source.el
17414         * test/automated/auth-source-tests.el: New file.
17416 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
17418         Remove redundant redisplay code
17420         * src/xdisp.c (redisplay_internal, try_cursor_movement)
17421         (try_window_reusing_current_matrix, try_window_id): Remove
17422         redundant restrictions on redisplay optimizations based on the
17423         frame's 'redisplay' flag.  See
17424         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
17425         discussions.
17427 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
17429         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
17431 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
17433         Update tutorials/TUTORIAL.cn
17435         * etc/tutorials/TUTORIAL.cn: Improve translation.
17437 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
17439         * src/macfont.m (macfont_encode_char, syms_of_macfont):
17440         Remove unused vars.
17442 2015-10-04  Stefan Merten  <stefan@merten-home.de>
17444         Pull in version numbers from rst.el upstream release.
17446         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
17447         (rst-svn-timestamp, rst-official-version)
17448         (rst-official-cvs-rev, rst-package-emacs-version-alist):
17449         Update version numbers.
17451 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
17453         * test/automated/coding-tests.el: New file.
17455 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
17457         Improve XEmacs compatibility of Tramp
17459         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
17460         Declare if it doesn't exist.
17461         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
17462         (redisplay): Make it an alias if it doesn't exist.
17464         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
17465         `file-remote-p' (due to XEmacs compatibility).
17467         * lisp/net/trampver.el (locate-dominating-file)
17468         (tramp-compat-replace-regexp-in-string): Autoload.
17469         (tramp-repository-get-version): Do not dupe byte-compiler.
17471 2015-09-02  K. Handa  <handa@gnu.org>
17473         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
17475         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
17476         Adjusted for the change of type of elements in the array
17477         MFLTGlyphString.glyphs.
17479 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
17480             Michael Heerdegen  <michael_heerdegen@web.de>
17482         shr: fix too long lines in rendered buffers (Bug#21012)
17484         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
17485         Correct calculation of available width.
17486         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
17487         is nil.
17489 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
17491         Restore blank line before next section, erroneously erased
17492         in my previous commit
17494         * etc/compilation.txt (symbol ant): Add an additional trailing blank
17495         line to this section, so that there are two of them immediately before
17496         the next section.
17498 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
17500         Support MSW filename style for ant compilation error regexp
17502         * etc/compilation.txt (symbol ant):
17503         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
17504         Support MSW filename style.
17506 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
17508         * nt/INSTALL: Minor spelling and quote fixes.
17510         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
17512 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
17514         Maintain ordering of JSON object keys by default
17516         * lisp/json.el (json-object-type): Mention order handling in doc-string.
17517         (json--plist-reverse): New utility function.
17518         (json-read-object): Maintain ordering for alists and plists.
17519         (json-pretty-print): Ensure that ordering is maintained.
17521         * test/automated/json-tests.el (test-json-plist-reverse): New test for
17522         `json--plist-reverse'.
17523         (json-read-simple-alist): Update test to accommodate for changes in
17524         `json-read-object'.
17526         * etc/NEWS: Document the new behavior of the pretty printing functions.
17528 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
17530         * src/coding.c (complement_process_encoding_system): Revert last change.
17532 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
17534         * admin/MAINTAINERS: Add entry for Ulf Jasper.
17536 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
17538         Doc fix for `defmacro'
17540         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
17542 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
17544         More validatation of coding systems
17546         * src/fileio.c (Finsert_file_contents): Remove redundant
17547         coding-system check.
17548         (choose_write_coding_system): Likewise.
17549         * src/coding.c (complement_process_encoding_system): Check argument
17550         for valid coding system.
17552 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
17554         Avoid crashes in coding_inherit_eol_type
17556         * src/coding.c (coding_inherit_eol_type): Check the validity of
17557         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
17558         (Bug#21602)
17560 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
17562         More validatation of coding system in 'write-region'
17564         * src/coding.c (choose_write_coding_system): More validation of
17565         coding-system from various sources.  Suggested by Andreas Schwab
17566         <schwab@linux-m68k.org>.  (Bug#21602)
17568 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
17570         Avoid crashes due to invalid coding-system
17572         * src/fileio.c (choose_write_coding_system)
17573         (Finsert_file_contents): Check validity of coding-system-for-write
17574         and coding-system-for-read bound by the caller.  (Bug#21602)
17576 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
17578         Adapt to new prettify-symbols-unprettify-at-point default
17580         * etc/NEWS: Mention that unprettication of symbol at point is off
17581         by default.
17583 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
17585         Revert my two recent process.c changes
17587         Revert "Improve last commit to process.c" and "Remove callback-handled
17588         channels from Available set" because they did not fix bug#21313.
17590         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
17591         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
17593 2015-10-02  Markus Triska  <triska@metalevel.at>
17595         * lisp/progmodes/prolog.el: Update and extend operator table.
17596         (prolog-smie-grammar): Add multifile, public etc.
17598 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
17600         Allow autogen even when Git is not installed
17602         * autogen.sh: Test ‘git status’ before trying to use Git.
17604 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
17606         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
17607         Adjust lto/lfrom when we have uncommitted changes.
17609 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
17611         Fix problems found by clang 3.5.0
17613         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
17614         * src/font.c (font_parse_family_registry):
17615         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
17617 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
17619         * nt/INSTALL: Update instructions for running autogen.sh.
17621         * nt/INSTALL: Point to ezwinports for libXpm binaries.
17623 2015-10-02  Daniel Colascione  <dancol@dancol.org>
17625         Fix winner in cl-lib not loaded case
17627         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
17628         without requiring CL
17630 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
17632         Fix a few problems with directed quotes
17634         This is in response to a problem report by Kaushal Modi in:
17635         http://bugs.gnu.org/21588#25
17636         * lisp/cedet/mode-local.el (describe-mode-local-overload):
17637         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
17638         * lisp/info-xref.el (info-xref-check-all-custom):
17639         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
17640         Prefer directed to undirected single quotes in diagnostics.
17642 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
17644         Revert "Attempt to fix slow redisplay caused by last changes"
17646         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
17647         (try_cursor_movement): Don't relax requirements for redisplay
17648         optimizations for the selected frame.  (Bug#21597)
17650         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
17652 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
17654         Fix slow redisplay when daemon frame exists
17656         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
17657         when looking for frames that need to be redisplayed.  (Bug#21597)
17659 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
17661         Attempt to fix slow redisplay caused by last changes
17663         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
17664         (try_cursor_movement): Relax requirements for redisplay
17665         optimizations for the selected frame.  (Bug#21597)
17667 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
17669         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
17670         Improve doc string.
17672 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
17674         * lisp/minibuffer.el (minibuffer-completion-help):
17675         Set default base-size, in case completion table does not set it.
17677 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
17679         Fix GUD display of GDB output with non-ASCII text
17681         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
17682         (gdb-mi-decode): New function.
17683         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
17684         decode octal escapes in GDB output.  (Bug#21572)
17686 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
17688         * nt/INSTALL: Document where to find XPM support files.
17690 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
17692         Un- and re-prettification are not exclusive
17694         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
17695         Re-apply prettification to previous symbol also when unprettifying
17696         next one.
17698 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
17700         Don't unprettify symbol at point by default
17702         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
17703         Default to disabled (nil).
17705 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17707         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
17708         Support unprettifying when point is after a symbol.
17710         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
17712 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
17714         Avoid assertion violations in push_prefix_prop
17716         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
17717         a line that has a line-prefix defined starts with an image.  (Bug#21428)
17719 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
17721         Disable some display optimizations when frames need redisplay
17723         These optimizations were previously disabled by the
17724         windows_or_buffers_changed flag, which now is not set
17725         when only some frames need to be redrawn.
17726         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
17727         'redisplay' flag is set.
17728         (try_window_reusing_current_matrix, try_window_id)
17729         (try_cursor_movement): Disable these optimizations when the
17730         frame's 'redisplay' flag is set.
17732 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
17734         Don't modify buffer by unprettification
17736         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
17737         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
17738         modify buffer when setting/removing custom prettify-symbols-start/end
17739         text properties.  Add them to font-lock-extra-managed-props, too.
17741 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
17743         Try to avoid redisplaying all frames when creating a new one
17745         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
17746         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
17747         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
17748         * src/frame.c (x_set_screen_gamma): Set the specific frame's
17749         `redisplay' bit rather than windows_or_buffers_changed.
17751         * src/window.c (apply_window_adjustment): Remove redundant setting of
17752         windows_or_buffers_changed.
17754         * src/xdisp.c (redisplay_internal): Set the specific frame's
17755         `redisplay' bit rather than update_mode_lines in response to
17756         cursor_type_changed.
17757         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
17758         (AINC): Adjust accordingly.
17760 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
17762         Implement unprettification of symbol at point
17764         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
17765         symbol at point.
17766         (prettify-symbols--current-symbol-bounds): New variable.
17767         (prettify-symbols--post-command-hook): New function.
17768         (prettify-symbols-unprettify-at-point): New defcustom.
17769         (prettify-symbols-mode): Use it.
17770         (prettify-symbols--compose-symbol): Use them.
17772 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
17774         * src/macfont.m (mac_font_descriptor_supports_languages):
17775         Regard "zh" as synonym of "zh-Hans".
17777 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
17779         Work around crash when displaying etc/HELLO on OS X 10.11
17781         * src/macfont.m (mac_font_get_weight)
17782         (mac_font_descriptor_get_adjusted_weight): New functions.
17783         (macfont_store_descriptor_attributes): Adjust weight.
17785 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
17787         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
17789 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
17791         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
17792         of the columns.
17794 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
17796         Use unar and lsar to handle RAR archives in arc-mode
17798         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
17799         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
17801 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
17803         Clarify :create in auth-source's docs
17805         * lisp/gnus/auth-source.el (auth-source-search):
17806         Clarify :create's meaning.
17808 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
17810         Avoid empty -path arguments in rgrep
17812         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
17813         the list produced according to grep-find-ignored-directories,
17814         before passing it to Find/Grep invocation.  (Bug#21548)
17816 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
17818         Clarify documentation of pos-visible-in-window-p
17820         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
17821         t for POS.  See
17822         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
17823         for the original report.
17825         * doc/lispref/windows.texi (Window Start and End): Clarify the
17826         meaning of t for the POSITION argument of pos-visible-in-window-p.
17828 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
17830         * lisp/progmodes/prolog.el: Fix various indentation cases.
17831         (prolog-operator-chars): New const (add \\).
17832         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
17833         (prolog-smie-rules): Add rules according to bug#21526.
17835 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
17837         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
17838         (sh-indent-after-continuation): Add new value `always' (bug#17620)
17839         (sh-smie-sh-rules): Remove old handling of continued lines.
17840         (sh-smie--indent-continuation): New function.
17841         (sh-set-shell): Use it.
17843 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
17845         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
17846         Remove redundant :group keyword args.
17847         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
17848         Remove variables.
17849         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
17850         turn them into compile-time variables.
17851         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
17852         Add rules for break, continue, return, global, and persistent.
17853         Refine the rule for "until".
17854         (octave-smie--funcall-p, octave-smie--end-index-p)
17855         (octave-smie--in-parens-p): New functions.
17856         (octave-smie-backward-token, octave-smie-forward-token): Use them to
17857         distinguish the "enumeration" function and the "end" index from
17858         their corresponding keywords.
17859         (octave--block-offset-keywords): New constant.
17860         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
17861         parsing.
17862         (octave-reserved-words): Redefine using octave-smie-grammar.
17863         (octave-font-lock-keywords): Use octave-smie--funcall-p and
17864         octave-smie--end-index-p.
17866 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
17868         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
17870 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
17872         * nt/INSTALL: Remove references to GTK site.
17873         That site no longer offers Windows downloads.
17875 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
17877         * nt/INSTALL: Add instructions for installing Git.
17879 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
17881         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
17882         use colors.  Suggested by Eli Zaretskii.
17884 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
17886         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
17887         not supporting 256 above colors (bug#21557).
17889 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
17891         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
17893         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
17895 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
17897         Add documentation for seq.el
17899         * doc/lispref/sequences.texi: Add documentation regarding extending
17900         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
17901         seq-do and seq-map.
17903 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
17905         Better documentation for seq-some
17907         * doc/lispref/sequences.texi:
17908         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
17909         guarantee that the returned value is the first non-nil value that
17910         resulted from applying the predicate.
17912 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
17914         * lisp/arc-mode.el: Sharp-quote function arguments.
17916 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
17918         Avoid redisplay error in ediff-regions-wordwise
17920         * lisp/vc/ediff-util.el
17921         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
17922         set before activating it.  (Bug#21567)
17924 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
17926         Another attempt to fix crashes due to prematurely freed faces
17928         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
17929         faces for as long as we might have desired matrices that reference
17930         those faces.  (Bug#21428)
17932 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
17934         Add auctex development list email address
17936 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
17938         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
17940 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
17942         Improve wrapfig package support and caption parsing
17944         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
17945         Correct description string and add wraptable environment.
17946         (reftex-default-context-regexps): Improve caption regexp.
17948 2015-09-28  Anders Lindgren  <andlind@gmail.com>
17950         Respect value of frame_resize_pixelwise when handling fullscreen state
17952         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
17953         setting size increments.
17955 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
17957         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
17959 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
17961         Add prettify-symbols-alist for js-mode
17963         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
17964         (js-mode): Use it.
17966 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
17968         * nt/subdirs.el: File deleted (no longer used).
17970 2015-09-26  Alan Mackenzie  <acm@muc.de>
17972         Fix follow-scroll-up/down, making them replacements for scroll-up/down
17974         1. Allow point to move between follow windows in scroll operations.
17975         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
17976         when EOB was isolated in the last follow window.
17978         * lisp/follow.el (follow-fixed-window): New variable.
17979         (follow-get-scrolled-point): New function.
17980         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
17981         Reformulate the code.  Put `scroll-command' properties on the functions.
17982         Correct minor errors in ...-down's doc string and code.
17983         (follow-calc-win-end): Amend incomplete doc string.  Use
17984         `pos-visible-in-window-p' to check whether EOB is in the window.
17985         (follow-estimate-first-window-start): Correct an off-by-1 error.
17986         (follow-adjust-window): Add handling for explicit scrolling operations.
17988 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
17990         * admin/MAINTAINERS: Add self, plus list some more files
17991         sans maintaners.
17993 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
17995         New DWIM commands for changing letter-case
17997         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
17998         New functions.  (Bug#21501)
18000 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
18002         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
18004 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
18006         Make face realization be more frame-specific
18008         * src/frame.h (struct f): New flag face_change.
18009         * src/xfaces.c (Finternal_make_lisp_face)
18010         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
18011         (update_face_from_frame_parameter): Set the face_change flag only
18012         for the frame whose faces are affected.
18013         * src/xdisp.c (init_iterator): If a frame's face_change flag is
18014         set, free faces only on that frame.
18015         (redisplay_internal): Disable "display optimization 1" if the
18016         frame's face_change flag is set.
18017         (redisplay_window): Don't allow skipping a window's redisplay if
18018         its frame's face_change flag is set.
18019         * src/frame.c (x_set_screen_gamma): Instead of calling
18020         Fclear_face_cache, call clear_face_cache and set
18021         windows_or_buffers_changed to a non-zero value.  This avoids
18022         setting the global face_change flag that triggers face realization
18023         on all frames and thorough redisplay of all of them.
18025         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
18026         clear face cache if the selected frame is a GUI frame.
18028 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
18030         Remove font-latex specific check
18032         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
18033         Use syntax-ppss data to identify verbatim contents.
18035 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
18037         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
18038         Fix some false negatives.
18040 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
18042         Reorder Windows version in Emacs manifests
18044         * nt/emacs-x64.manifest:
18045         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
18046         highest.
18048 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
18050         Update Emacs manifest files for Windows 10
18052         * nt/emacs-x86.manifest:
18053         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
18055 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
18057         Avoid non-ASCII decoding errors in C src files
18059         * src/nsterm.m:
18060         * src/lisp.h:
18061         * src/editfns.c:
18062         * src/doprnt.c: Add 'coding' cookies -- these files include
18063         Unicode characters and should be decoded as UTF-8.
18065 2015-09-25  Alan Mackenzie  <acm@muc.de>
18067         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
18069         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
18070         amend to match current modes and functions.
18071         (edebug-set-initial-mode): Uncomment and change from setting a defun's
18072         `edebug-initial-mode''s property to setting the variable
18073         `edebug-initial-mode'.
18074         (top level): Create new binding C-x C-a C-m for
18075         `edebug-set-initial-mode'.
18077         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
18078         `edebug-set-initial-mode' and its new key binding.
18079         (Edebug Options): Mention the new command in the pertinent place.
18081         * etc/NEWS: Write entry for this change.
18083 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
18085         Avoid non-ASCII decoding errors in Texinfo files
18087         * doc/misc/tramp.texi:
18088         * doc/lispref/strings.texi:
18089         * doc/lispref/positions.texi:
18090         * doc/lispref/help.texi:
18091         * doc/lispref/functions.texi:
18092         * doc/lispintro/emacs-lisp-intro.texi:
18093         * doc/emacs/text.texi:
18094         * doc/emacs/modes.texi:
18095         * doc/emacs/mini.texi:
18096         * doc/emacs/display.texi:
18097         * doc/emacs/custom.texi:
18098         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
18099         Unicode characters and should be decoded as UTF-8.
18100         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
18101         apostrophe unnecessarily.
18103 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
18105         Merge from gnulib
18107         This incorporates:
18108         2015-09-25 c-ctype: rewrite to use inline functions
18109         2015-09-24 maint: add coding cookies to non-ASCII sources
18110         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
18111         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
18112         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
18113         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
18114         * lib/set-permissions.c:
18115         Copy from gnulib.
18117 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
18119         Update publicsuffix.txt from upstream
18121         * etc/publicsuffix.txt: Update from
18122         https://publicsuffix.org/list/effective_tld_names.dat
18123         dated 2015-09-24 17:29:21 UTC.
18125 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
18127         Prevent timers from messing up TTY menus
18129         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
18130         the TTY menu is open.  (Bug#21530)
18132 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
18134         No need to mention K&R C in c-mode intro
18136 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
18138         Fix recent bootstrap problems
18140         * src/syntax.c (parse_sexp_propertize): Fix last fix.
18141         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
18142         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
18144 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
18146         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
18148 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
18150         Properly quote nested xml comments (Bug#6267) (Bug#20001)
18152         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
18153         (nxml-mode): Set comment-quote-nested-function.
18155 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
18157         Allow major-modes full control over quoting nested comments
18159         * lisp/newcomment.el (comment-quote-nested-function): New variable.
18160         (comment-quote-nested-default): New function.
18161         (comment-quote-nested): Use `comment-quote-nested-function'.
18163 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
18165         Prefer CALLN in a few more places
18167         * src/macfont.m (macfont_set_family_cache):
18168         * src/nsterm.m (append2):
18169         * src/xterm.c (x_cr_export_frames):
18170         Prefer CALLN to allocating the arg arrays by hand.
18172 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
18174         Adapt file-notify-test02-events test case
18176         * test/automated/file-notify-tests.el (file-notify-test02-events):
18177         Create a new watch for every test.
18179 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
18181         Continue gfilenotify.c implementation of missing parts
18183         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
18184         `gfile-add-watch' call.
18185         (file-notify-rm-watch): Modify `file-notify-descriptors' only
18186         after calling the low level functions.
18188         * src/gfilenotify.c (dir_monitor_callback): Check, whether
18189         event_type is expected.
18190         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
18191         (Fgfile_rm_watch): Fix typo.
18192         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
18194 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
18196         * src/syntax.c (parse_sexp_propertize): Handle spurious
18197         e_property_truncated flag.
18198         (update_syntax_table_forward): Remove invalid assertion.
18200 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
18202         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
18203         space display spec on text-mode terminals, by calling
18204         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
18205         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
18206         test for a GUI frame.
18208 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
18210         Move let-when-compile to lisp-mode.el
18212         This fixes the bootstrapping problem of `let-when-compile' using
18213         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
18215 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18217         * lisp/url/url-http.el (url-http-parse-headers): Do not
18218         automatically include Authorization header in redirect.
18219         (Bug#21350)
18221 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
18223         Clarify documentation of ':relative-width'
18225         * doc/lispref/display.texi (Specified Space): Document that
18226         ':relative-width' is only supported on GUI frames.
18228 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
18230         Fix 'current-column' in presence of :relative-width
18232         * src/indent.c (check_display_width): Support ':relative-width'
18233         in a display spec that specifies a stretch glyph.  (Bug#21533)
18235 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
18237         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
18239         ... to conform better to CONTRIBUTE guidelines.
18241 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
18243         * lisp/progmodes/prolog.el: Fix indentation of empty line
18245         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
18246         `empty-line-token' element.
18247         (smie-indent-empty-line): New function.
18248         (smie-indent-functions): Add it.
18250         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
18251         behavior and use the new `empty-line-token' element (bug#21526).
18252         (prolog-mode-variables): Fix comment-start-skip setting to match
18253         comment-start.
18255         * test/indent/prolog.prolog: Add nested indentation tests.
18257         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
18258         comment-start-skip not to misuse submatch 1.
18260 2015-09-22  Alan Mackenzie  <acm@muc.de>
18262         Make description of `edebug-initial-mode' user friendly
18264         Fixes bug#21365.
18266         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
18267         description of `edebug-initial-mode' from that of its implementation
18268         to that of its visual effect and use.  Move the paragraph higher up.
18270 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
18272         lisp/progmodes/gud.el (gud-format-command): Fix last commit
18274         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
18275         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
18277 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
18279         Improve last commit to process.c
18281 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
18283         Implement gfile-valid-p
18285         * lisp/filenotify.el (file-notify-callback): Fix typo.
18286         (gfile-valid-p): Remove defalias.
18288         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
18289         the file or directory to be watched is deleted.
18290         (Fgfile_add_watch): Make watch_object a triple.
18291         (Fgfile_rm_watch): Check, whether watch is cancelled already.
18292         (Fgfile_valid_p): New defun.
18293         (syms_of_gfilenotify): Declare Sgfile_valid_p.
18295 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
18297         Remove callback-handled channels from Available set
18299         * src/process.c (wait_reading_process_output): Remove channel from
18300         Available set if it is handled by a callback, e.g., dbus or
18301         inotify (bug#21313).
18303 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
18305         Use lunate epsilon for TeX \epsilon
18307         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
18308         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
18309         \epsilon to use GREEK LUNATE EPSILON SYMBOL
18311 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
18313         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
18315         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
18316         rather than outermost paren (bug#21526).
18318 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
18320         Improve git diff hunk headers for .el, .texi
18322         Problem reported by Alan Mackenzie in:
18323         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
18324         * .gitattributes (*.el, *.texi): New patterns.
18325         * autogen.sh: Configure diff.elisp.xfuncname and
18326         diff.texinfo.xfuncname if using Git.
18328 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
18330         Don't rely on defaults in decoding UTF-8 encoded Lisp files
18332         * lisp/replace.el:
18333         * lisp/textmodes/rst.el:
18334         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
18336 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
18338         Clarify or replace a few \u escapes
18340         * doc/lispref/nonascii.texi (Character Properties)
18341         More-detailed commentary for \u escapes.
18342         * lisp/progmodes/python.el (python--prettify-symbols-alist):
18343         * lisp/replace.el (query-replace-from-to-separator):
18344         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
18345         (rst-mode-syntax-table):
18346         * lisp/whitespace.el (whitespace-display-mappings):
18347         Prefer actual character to \u escape when this makes the code
18348         easier to follow in the usual case where Unicode chars can be
18349         displayed.
18351 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
18353         Pacify GCC -Wmaybe-uninitialized in xdisp.c
18355         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
18356         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
18357         charpos.  The loop should always execute at least once anyway.
18359 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
18361         Signal error on invalid regexp
18363         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
18364         Signal an error when the user tries searching with a regexp
18365         matching the empty string.
18367 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
18369         Another fix of file-notify-tests for w32notify
18371         * test/automated/file-notify-tests.el (file-notify-test02-events):
18372         Further adaptation for w32notify: reduce the number of expected
18373         'changed' events.  (Bug#21435)
18375 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
18377         Adapt tests and manual for w32notify
18379         * doc/lispref/os.texi (File Notifications): w32notify does not
18380         send `attribute-changed' events.
18382         * test/automated/file-notify-tests.el (file-notify--test-with-events):
18383         Simplify parameters.  Adapt all callees.
18384         (file-notify-test02-events): w32notify does not send
18385         `attribute-changed' events.
18386         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
18387         Do not skip in case of w32notify.  Simply ignore this part of the test.
18389 2015-09-21  Dima Kogan  <dima@secretsauce.net>
18391         Fix setting breakpoints when remote-debugging
18393         * lisp/progmodes/gud.el (gud-format-command): Send localized file
18394         names to the debugger running on the remote.  (Bug#13304)
18396 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
18398         Better docstring and parameter name for seq-find
18400         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
18401         the parameter `sentinel' to `default'.
18403         * doc/lispref/sequences.texi (Sequence Functions): Update the
18404           documentation for `seq-find' accordingly.
18406 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
18408         Avoid infinite recursion while displaying box face
18410         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
18411         the previous string/buffer character position under bidi
18412         iteration.  (Bug#21428)
18414 2015-09-21  Anders Lindgren  <andlind@gmail.com>
18416         Keep upper edge unchanged when changing size of NS frame
18418         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
18419         (Bug#21415).
18421 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
18423         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
18424         (prolog-smie-rules): Accommodate standard if/then/else special
18425         indentation.
18426         (prolog-mode): Add . to electric-indent-chars.
18427         (prolog-electric--if-then-else): Re-indent the line before adding space
18428         after the new char (bug#21526).
18430 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
18432         Add prettify symbols to python-mode
18434         * lisp/progmodes/python.el (python-prettify-symbols-alist):
18435         New variable.
18436         (python-mode): Use it
18438 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
18440         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
18442 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
18444         (compilation-error-regexp-alist-alist): Tone down guile-file
18446         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
18447         Make guile-file a bit less enthusiastic (bug#21496).
18449 2015-09-20  Drew Csillag  <drew@thecsillags.com>
18451         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
18452         Fix m4_* highlighting.
18454         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
18455         of commands when they have a "m4_" prefix.
18457 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
18459         '.' -> `.' in doc string
18461         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
18462         individual chars with grave quotes instead of straight quotes, as
18463         this works better when they are translated to curved quotes.
18465 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
18467         Improve file notifications, especially for Tramp
18469         * doc/lispref/files.texi (Magic File Names):
18470         Mention `file-notify-valid-p'.
18472         * doc/lispref/os.texi (File Notifications):
18473         Describe `file-notify-valid-p'.
18475         * etc/NEWS: Add `file-notify-valid-p'.
18477         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
18478         Improve implementation.
18479         (tramp-gvfs-monitor-file-process-filter): Rename from
18480         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
18481         process if appropriate.
18483         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
18484         Improve implementation.
18485         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
18486         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
18487         if appropriate.
18488         (tramp-sh-inotifywait-process-filter): Rename from
18489         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
18490         appropriate.
18492         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
18493         Use `delete-process'.
18494         (tramp-handle-file-notify-valid-p): Check also, that file or
18495         directory to be watched still exists.
18497         * test/automated/file-notify-tests.el (file-notify--test-timeout):
18498         New defun.  Use it at all places a timeout is needed.
18499         (file-notify--test-cleanup): Delete directories recursively.
18500         Cleanup also Tramp connections.
18501         (file-notify-test02-events): Add tests for `attribute-change'.
18502         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
18503         Add tests for `file-notify-rm-watch'.
18505 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
18507         Use %s to format strings instead of splicing them
18509         If FOO might contain quotes that are part of a file or variable
18510         name, the quotes should not be translated when showing FOO’s name
18511         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
18512         is not quite right, as it would translate FOO’s quotes.
18513         Change it to (message "%s: bar" FOO) instead.
18514         * lisp/allout.el (allout-process-exposed):
18515         * lisp/calc/calc-ext.el (calc-do-prefix-help):
18516         * lisp/calc/calc-store.el (calc-store-into):
18517         * lisp/calendar/todo-mode.el (todo-category-completions):
18518         * lisp/cedet/semantic/complete.el (semantic-completion-message):
18519         * lisp/org/ob-latex.el (convert-pdf):
18520         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
18521         * lisp/org/ox-latex.el (org-latex-compile):
18522         * lisp/org/ox-man.el (org-man-compile):
18523         * lisp/org/ox-odt.el (org-odt--export-wrap):
18524         * lisp/org/ox-texinfo.el (org-texinfo-compile):
18525         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
18526         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
18527         (verilog-signals-combine-bus, verilog-read-defines)
18528         (verilog-getopt-file, verilog-expand-dirnames)
18529         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
18530         * lisp/term/ns-win.el (ns-spi-service-call):
18531         Use %s to avoid translating quotes of file names etc. in diagnostics.
18533 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
18535         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
18536         (js-mode): Don't set syntax-begin-function.
18538 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
18540         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
18541         syntax-begin-function is a symbol.
18543 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
18545         Improve documentation of 'run-at-time'
18546         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
18547         In particular, don't refer to 'diary-entry-time', because it is
18548         unavailable until diary-lib is loaded.  Also, refer to
18549         'timer-duration-words', not 'timer-duration', as the latter's doc
18550         string says nothing about the accepted strings.
18552 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
18554         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
18556 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
18558         Repair pdbtrack remote file tracking
18559         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
18560         Rectify pdbtrack so it follows transitions from one remote source
18561         file to the next.
18563 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
18565         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
18567 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
18569         Adapt vc-src to the old-new vc-checkin API
18570         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
18571         additional optional parameter.
18573 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
18575         Add overflow module to CSS property list
18576         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
18577         from CSS Overflow Module Level 3.
18579 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
18581         Fix documentation of "C-u C-x v v"
18582         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
18583         documentation of "C-u C-x v v" match what the code does.
18585         Resurrect the ability to specify a revision in vc-next-action
18586         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
18587         * lisp/vc/vc-dav.el (vc-dav-checkin):
18588         * lisp/vc/vc-git.el (vc-git-checkin):
18589         * lisp/vc/vc-hg.el (vc-hg-checkin):
18590         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
18591         an additional optional argument, the revision to checkin.
18592         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
18593         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
18594         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
18595         a revision to checkin.
18596         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
18597         revision when checking in files.
18598         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
18599         for the details.
18601 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
18603         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
18604         (verilog-decls-princ, verilog-modport-princ)
18605         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
18607 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
18609         Fix the routine for help on Calc's prefixes
18610         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
18611         (calc-do-prefix-help): Use `read-char' to determine the next Calc
18612         command.
18614 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
18616         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
18617         (font-lock-fontify-block): Don't let-bind it.
18618         (font-lock-compile-keywords): Don't use it.
18619         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
18620         start one slot earlier, instead.
18621         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
18622         Don't declare.
18623         (syntax-ppss): Don't use it either.
18624         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
18625         from docstring.
18626         * doc/emacs/display.texi (Font Lock): Don't mention
18627         font-lock-beginning-of-syntax-function.
18628         * doc/lispref/modes.texi (Font Lock Basics): Update description of
18629         font-lock-defaults.
18630         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
18631         * lisp/loadhist.el (unload-feature-special-hooks):
18632         Remove font-lock-beginning-of-syntax-function.
18633         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
18634         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
18635         font-lock-beginning-of-syntax-function.
18637 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
18639         Backslash cleanup in Elisp source files
18640         This patch should not change behavior.  It typically omits backslashes
18641         where they are redundant (e.g., in the string literal "^\$").
18642         In a few places, insert backslashes where they make regular
18643         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
18644         "^\\*", which has the same effect as a regular expression.
18645         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
18646         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
18647         RCS IDs, as that makes it clearer that the backslash is intended.
18649         Some more minor backslash fixes
18650         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
18651         * test/automated/info-xref.el (info-xref-test-write-file):
18652         Double backslashes in strings.
18654         Fix several backslash typos in Elisp strings
18655         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
18656         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
18657         (todo-reset-done-string, todo-reset-comment-string)
18658         (todo-reset-highlight-item):
18659         * lisp/erc/erc-networks.el (erc-networks-alist):
18660         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
18661         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
18662         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
18663         (nntp-telnet-shell-prompt):
18664         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
18665         * lisp/image-dired.el (image-dired-rotate-original):
18666         (image-dired-get-exif-file-name):
18667         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
18668         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
18669         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
18670         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
18671         * lisp/net/shr-color.el (shr-color->hexadecimal):
18672         * lisp/org/org-bibtex.el (org-bibtex-fields):
18673         * lisp/org/org-docview.el (org-docview-export):
18674         * lisp/org/org-entities.el (org-entities):
18675         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
18676         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
18677         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
18678         (ebnf-style-database):
18679         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
18680         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
18681         * lisp/progmodes/sql.el (sql-product-alist):
18682         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
18683         (verilog-error-font-lock-keywords)
18684         (verilog-assignment-operator-re):
18685         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
18686         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
18687         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
18688         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
18689         For example, to get the regular expression ‘\.’ use the string
18690         literal "\\.", not "\." (which is equivalent to ".").
18691         * lisp/emulation/viper-util.el (viper-glob-unix-files):
18692         Remove stray ‘\j’ from string.
18693         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
18694         (nntp-telnet-shell-prompt):
18695         Treat > like $ when matching a shell prompt.
18696         * lisp/progmodes/make-mode.el (makefile-browse):
18697         Properly quote a diagnostic.
18699         Fix minor quoting problems in diagnostics
18700         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
18701         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
18702         Follow text-quoting-style in diagnostic, and quote a file name.
18704 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
18706         * doc/lispref/frames.texi (Cursor Parameters):
18707         Document 'x-stretch-cursor'.
18709 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
18711         Omit unnecessary \ before paren in C docstrings
18712         Although \( is needed in docstrings in Elisp code, it is not needed in
18713         docstrings in C code, since C function definitiions do not start with
18714         a parenthesis.  The backslashes made the docstrings a bit harder to
18715         read and to format in columns.  Also, some C docstrings had ( in
18716         column 1 and this did not appear to be causing any problems.  So,
18717         simplify C docstrings by replacing \( with ( and \) with ).
18719         A few more minor quoting fixes in a script and a text file
18721         Minor quoting fixes in scripts and doc
18722         Prefer straight quotes in random script files, as they are not
18723         converted.  Prefer grave quotes in a couple of places in the manual
18724         that were missed earlier, as these quotes are converted.
18726         Minor backslash fixes in manuals and scripts
18727         * Makefile.in (install-arch-indep):
18728         * admin/charsets/compact.awk:
18729         * admin/charsets/gb180302.awk (gb_to_index):
18730         * admin/charsets/gb180304.awk (gb_to_index):
18731         Avoid undefined behavior in Awk regular expression backslashes.
18732         * doc/misc/efaq.texi (Matching parentheses):
18733         Omit unnecessary backslashes.
18734         * doc/misc/gnus-faq.texi (FAQ 5-8):
18735         Avoid undefined behavior in suggested sed backslash usage.
18737         Add -Wswitch to --enable-gcc-warnings
18738         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
18739         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
18740         * lib-src/etags.c (main, consider_token, C_entries):
18741         * src/coding.c (encode_invocation_designation):
18742         * src/data.c (Ftype_of):
18743         * src/eval.c (Fdefvaralias, default_toplevel_binding)
18744         (Fbacktrace__locals, mark_specpdl):
18745         * src/lisp.h (record_xmalloc):
18746         * src/syntax.c (scan_lists, scan_sexps_forward):
18747         * src/window.c (window_relative_x_coord):
18748         * src/xdisp.c (push_it, pop_it):
18749         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
18750         Error out or do nothing (as appropriate) if a switch statement
18751         with an enum value does not cover all of the enum.
18752         * src/dispextern.h (struct iterator_stack_entry.u.comp):
18753         Remove unused member discovered by using -Wswitch.
18754         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
18755         * src/vm-limit.c (check_memory_limits):
18756         Simplify warning-diagnostic computation by using a table.
18758         etags ‘fatal’ function is now printf-like
18759         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
18760         Also, now static; not clear why it needed to be extern.
18761         (verror): New function, with most of the old contents of ‘error’.
18762         (fatal, error): Use it.
18764 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
18766         More adaptations in file-notify-tests.el
18767         * test/automated/file-notify-tests.el
18768         (file-notify-test05-dir-validity): Skip for w32notify in
18769         batch-mode.  (Bug#21432)
18771 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
18773         Adapt test in file-notify-tests.el
18774         * test/automated/file-notify-tests.el
18775         (file-notify-test04-file-validity): Skip for w32notify in
18776         batch-mode.  Add test lost last commit.
18778 2015-09-16  Dima Kogan  <dima@secretsauce.net>
18780         winner no longer holds on to dead frames
18781         * lisp/winner.el (winner-change-fun): Cull dead frames.
18782         This prevents a potentially massive memory leak.  See:
18783         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
18785 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
18787         Use common report_file_notify_error function
18788         * src/fileio.c (report_file_notify_error): New function.
18789         * src/inotify.c (report_inotify_error): Remove function.
18790         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
18791         (Finotify_rm_watch): Use report_file_notify_error.
18792         * src/lisp.h (report_file_notify_error): Declare external function.
18793         * src/w32notify.c (report_w32notify_error): Remove function.
18794         (Fw32notify_add_watch, Fw32notify_rm_watch):
18795         Use report_file_notify_error.
18797 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
18799         Fix documentation.
18800         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
18801         the documentation of the root mean square.
18803 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
18805         Remove tool_bar_redisplayed_once and associated code.
18806         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
18807         * src/frame.c (make_frame, x_set_font): Remove initialization of
18808         f->tool_bar_redisplayed_once.
18809         * src/w32fns.c (x_change_tool_bar_height):
18810         * src/xfns.c (x_change_tool_bar_height): Don't check for
18811         f->tool_bar_redisplayed_once.
18812         * src/xdisp.c (redisplay_internal): Remove handling of
18813         f->tool_bar_redisplayed_once.
18815 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
18817         Restore some of the quoting in the manuals
18818         * doc/lispref/windows.texi (Coordinates and Windows)
18819         (Coordinates and Windows):
18820         * doc/lispref/variables.texi (Lexical Binding)
18821         (File Local Variables):
18822         * doc/lispref/text.texi (Format Properties):
18823         * doc/lispref/symbols.texi (Symbol Components):
18824         * doc/lispref/strings.texi (Creating Strings):
18825         * doc/lispref/sequences.texi (Sequence Functions):
18826         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
18827         (Search and Replace):
18828         * doc/lispref/processes.texi (Bindat Spec):
18829         * doc/lispref/os.texi (Idle Timers):
18830         * doc/lispref/objects.texi (Basic Char Syntax):
18831         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
18832         * doc/lispref/nonascii.texi (Character Properties):
18833         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
18834         (Mode Line Variables):
18835         * doc/lispref/minibuf.texi (Text from Minibuffer):
18836         * doc/lispref/loading.texi (Autoload):
18837         * doc/lispref/keymaps.texi (Controlling Active Maps):
18838         * doc/lispref/frames.texi (Frame Layout, Size and Position)
18839         (Size Parameters, Implied Frame Resizing):
18840         * doc/lispref/files.texi (Changing Files, Magic File Names):
18841         * doc/lispref/eval.texi (Self-Evaluating Forms):
18842         * doc/lispref/display.texi (Progress, Abstract Display)
18843         (Abstract Display Example, Bidirectional Display):
18844         * doc/lispref/commands.texi (Event Mod):
18845         * doc/emacs/windows.texi (Displaying Buffers):
18846         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
18847         * doc/emacs/text.texi (Enriched Text):
18848         * doc/emacs/programs.texi (MixedCase Words):
18849         * doc/emacs/picture-xtra.texi (Insert in Picture)
18850         (Tabs in Picture):
18851         * doc/emacs/misc.texi (Emacs Server, Printing):
18852         * doc/emacs/mini.texi (Minibuffer History):
18853         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
18854         (Pulling / Pushing):
18855         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
18856         * doc/emacs/help.texi (Help, Help Echo):
18857         * doc/emacs/glossary.texi (Glossary):
18858         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
18859         (Frame Commands):
18860         * doc/emacs/files.texi (Reverting, Saving, Directories):
18861         * doc/emacs/entering.texi (Exiting):
18862         * doc/emacs/emacs.texi (Top):
18863         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
18864         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
18865         appropriate or replace quoting with @dfn.
18866         * doc/misc/ediff.texi (Window and Frame Configuration):
18867         * doc/lispref/processes.texi (Network Feature Testing):
18868         * doc/lispref/display.texi (Display Margins): Quote the phrase
18869         after "a.k.a." where appropriate.
18871 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
18873         Clarify reftex-extra-bindings docs
18874         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
18875         * doc/misc/reftex.texi (Key Bindings): Document that the variable
18876         only has an effect at load-time.
18878 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
18880         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
18881         search argument.  (Bug#21492) (Bug#21493)
18883 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
18885         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
18886         Add pretty symbols for \qquad and \varrho.
18888 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
18890         Add new functions for the root mean square of a (Calc) vector
18891         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
18892         New functions.
18893         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
18894         `calc-vector-rms', add autoloads for `calc-vector-rms' and
18895         `calcFunc-rms'.
18896         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
18897         `calcFunc-rms'.
18898         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
18899         `calc-vector-rms'.
18900         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
18901         command.
18903 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
18905         Add monotone EDE generic project
18906         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
18907         Add monotone generic project.
18909         Revert premature commit
18910         * doc/lispref/files.texi: Revert premature commit of change to
18911         file-name-all-completions.
18913         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
18914         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
18915         with cl-generic defaults.
18916         (elisp--xref-find-references): Add doc string.
18917         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
18918         tests to find bug.
18920         Fix bugs in eieio-oref-default related to class symbols
18921         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
18922         (eieio-oref-default): Handle class properly.
18924 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
18926         Quote “fullboth” when defining it
18927         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
18928         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
18930 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
18932         Minor doc fix in emacs/ack.texi
18933         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
18934         first argument.
18936 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
18938         Adapt tests in auto-revert-tests.el
18939         * test/automated/auto-revert-tests.el (auto-revert--timeout):
18940         Make it a defconst.
18941         (auto-revert--wait-for-revert): New defun.
18942         (auto-revert-test00-auto-revert-mode)
18943         (auto-revert-test01-auto-revert-tail-mode)
18944         (auto-revert-test02-auto-revert-mode-dired): Use it.
18946 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
18948         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
18949         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
18950         (cl-lib-fdefs): Add defgeneric.
18951         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
18952         (eieio-kw, cl-lib-kw, el-kw): Remove.
18954 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
18956         Quote less in manuals
18957         The manuals often used quotes ``...'' when it is better to use @dfn or
18958         @code or capitalized words or no quoting at all.  For example, there is
18959         no need for the `` and '' in “if a variable has one effect for
18960         @code{nil} values and another effect for ``non-@code{nil}'' values”.
18961         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
18962         unnecessary quoting like this, and to use @dfn etc. instead when called
18963         for (Bug#21472).
18965 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
18967         * lisp/custom.el (load-theme): Only compute hash when needed.
18969 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
18971         Pacify --enable-gcc-warnings
18972         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
18974 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
18976         Improve error reports in inotify.c
18977         * src/inotify.c (report_inotify_error): New function.  Clone of
18978         report_w32notify_error.
18979         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
18980         (Finotify_rm_watch): Use it.
18982 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
18984         Fix the file-notify tests for watch validation on w32
18985         * test/automated/file-notify-tests.el
18986         (file-notify-test04-file-validity): Move the directory deletion
18987         out of the file-notify--test-with-events macro.
18988         (file-notify-test04-file-validity)
18989         (file-notify-test05-dir-validity): Enlarge the timeout of
18990         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
18992 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
18994         Use OPEN BOX instead of space for \quad.
18995         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
18996         character for \quad instead of a space.
18998 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
19000         Add missing *.pbm images
19001         * etc/images/connect.pbm: New file.
19002         * etc/images/custom/down-pushed.pbm: New file.
19003         * etc/images/custom/down.pbm: New file.
19004         * etc/images/custom/right-pushed.pbm: New file.
19005         * etc/images/custom/right.pbm: New file.
19006         * etc/images/describe.pbm: New file.
19007         * etc/images/disconnect.pbm: New file.
19008         * etc/images/ezimage/bits.pbm: New file.
19009         * etc/images/ezimage/bitsbang.pbm: New file.
19010         * etc/images/ezimage/box-minus.pbm: New file.
19011         * etc/images/ezimage/box-plus.pbm: New file.
19012         * etc/images/ezimage/box.pbm: New file.
19013         * etc/images/ezimage/checkmark.pbm: New file.
19014         * etc/images/ezimage/dir-minus.pbm: New file.
19015         * etc/images/ezimage/dir-plus.pbm: New file.
19016         * etc/images/ezimage/dir.pbm: New file.
19017         * etc/images/ezimage/doc-minus.pbm: New file.
19018         * etc/images/ezimage/doc-plus.pbm: New file.
19019         * etc/images/ezimage/doc.pbm: New file.
19020         * etc/images/ezimage/info.pbm: New file.
19021         * etc/images/ezimage/key.pbm: New file.
19022         * etc/images/ezimage/label.pbm: New file.
19023         * etc/images/ezimage/lock.pbm: New file.
19024         * etc/images/ezimage/mail.pbm: New file.
19025         * etc/images/ezimage/page-minus.pbm: New file.
19026         * etc/images/ezimage/page-plus.pbm: New file.
19027         * etc/images/ezimage/page.pbm: New file.
19028         * etc/images/ezimage/tag-gt.pbm: New file.
19029         * etc/images/ezimage/tag-minus.pbm: New file.
19030         * etc/images/ezimage/tag-plus.pbm: New file.
19031         * etc/images/ezimage/tag-type.pbm: New file.
19032         * etc/images/ezimage/tag-v.pbm: New file.
19033         * etc/images/ezimage/tag.pbm: New file.
19034         * etc/images/ezimage/unlock.pbm: New file.
19035         * etc/images/gnus/important.pbm: New file.
19036         * etc/images/gnus/mail-send.pbm: New file.
19037         * etc/images/gnus/receipt.pbm: New file.
19038         * etc/images/gnus/toggle-subscription.pbm: New file.
19039         * etc/images/gnus/unimportant.pbm: New file.
19040         * etc/images/gud/all.pbm: New file.
19041         * etc/images/gud/rcont.pbm: New file.
19042         * etc/images/gud/recstart.pbm: New file.
19043         * etc/images/gud/recstop.pbm: New file.
19044         * etc/images/gud/rfinish.pbm: New file.
19045         * etc/images/gud/rnext.pbm: New file.
19046         * etc/images/gud/rnexti.pbm: New file.
19047         * etc/images/gud/rstep.pbm: New file.
19048         * etc/images/gud/rstepi.pbm: New file.
19049         * etc/images/gud/thread.pbm: New file.
19050         * etc/images/lock-broken.pbm: New file.
19051         * etc/images/lock-ok.pbm: New file.
19052         * etc/images/lock.pbm: New file.
19053         * etc/images/mail/copy.pbm: New file.
19054         * etc/images/mail/forward.pbm: New file.
19055         * etc/images/mail/not-spam.pbm: New file.
19056         * etc/images/mail/outbox.pbm: New file.
19057         * etc/images/mail/preview.pbm: New file.
19058         * etc/images/mail/save-draft.pbm: New file.
19059         * etc/images/mh-logo.pbm: New file.
19060         * etc/images/mpc/add.pbm: New file.
19061         * etc/images/mpc/ffwd.pbm: New file.
19062         * etc/images/mpc/next.pbm: New file.
19063         * etc/images/mpc/pause.pbm: New file.
19064         * etc/images/mpc/play.pbm: New file.
19065         * etc/images/mpc/prev.pbm: New file.
19066         * etc/images/mpc/rewind.pbm: New file.
19067         * etc/images/mpc/stop.pbm: New file.
19068         * etc/images/redo.pbm: New file.
19069         * etc/images/smilies/braindamaged.pbm: New file.
19070         * etc/images/smilies/cry.pbm: New file.
19071         * etc/images/smilies/dead.pbm: New file.
19072         * etc/images/smilies/evil.pbm: New file.
19073         * etc/images/smilies/forced.pbm: New file.
19074         * etc/images/smilies/grin.pbm: New file.
19075         * etc/images/smilies/indifferent.pbm: New file.
19076         * etc/images/sort-ascending.pbm: New file.
19077         * etc/images/sort-column-ascending.pbm: New file.
19078         * etc/images/sort-criteria.pbm: New file.
19079         * etc/images/sort-descending.pbm: New file.
19080         * etc/images/sort-row-ascending.pbm: New file.
19081         * etc/images/unchecked.pbm: New file.
19082         * etc/images/zoom-in.pbm: New file.
19083         * etc/images/README: Update instructions for PBM files.
19085         Add separator.pbm tool-bar image
19086         * etc/images/separator.pbm: New file.  Having it avoids the side
19087         effect of changing the tool-bar height when the default font's size
19088         changes and XPM image support is not available, due to the SPC
19089         characters that are left in the Lisp string used to display the tool
19090         bar, because there are no images to display instead of those SPC
19091         characters.
19093         Make show-paren-match face visible on mono-color displays
19094         * lisp/faces.el (show-paren-match): Use the underline face for
19095         mono-color displays.  (Bug#21481)
19097 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
19099         Don’t double-encode non-ASCII mail clipboard
19100         * lisp/mail/mailclient.el (mailclient-send-it):
19101         Also fix the case when mailclient-place-body-on-clipboard-flag
19102         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
19104 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
19106         Adapt file-notify-tests.el test cases
19107         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
19108         * src/inotify.c (Finotify_valid_p): Adapt docstring.
19109         * test/automated/file-notify-tests.el
19110         (file-notify-test03-autorevert)
19111         (file-notify-test04-file-validity)
19112         (file-notify-test04-file-validity-remote)
19113         (file-notify-test05-dir-validity)
19114         (file-notify-test05-dir-validity-remote): Adapt docstring.
19115         (file-notify-test04-file-validity): Let events arrive before
19116         calling final `file-notify-valid-p'.  Do not ignore errors.
19117         (file-notify-test05-dir-validity): Do not manipulate
19118         `temporary-file-directory', it isn't necessary.  Let events arrive
19119         before calling final `file-notify-valid-p'.  Do not ignore errors.
19121 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
19123         Don’t double-encode non-ASCII for mail client
19124         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
19125         Use RFC 6068’s list of unreserved characters.
19126         (mailclient-send-it): When encoding the body as a URL,
19127         first decode it as per Content-Type: and Content-Transfer-Encoding:,
19128         as URLs must use percent-encoded UTF-8 (Bug#21471).
19129         * doc/misc/url.texi (mailto): Update RFC number.
19131 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
19133         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
19135 2015-09-14  Alan Mackenzie  <acm@muc.de>
19137         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
19138         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
19139         `cadr/car'.
19141 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
19143         Clarify documentation of char-table extra slots
19144         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
19145         slot numbers are zero-based.  (Bug#21467)
19147 2015-09-14  Alan Mackenzie  <acm@muc.de>
19149         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
19150         Fixes bug#21449.
19151         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
19152         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
19153         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
19154         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
19155         Insert "\\|\\\\." into regexps which match symbols.
19157 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
19159         Improve the doc string of w32notify-valid-p
19160         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
19161         that removing a watch makes its object invalid.
19163 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
19165         Fix tests for file-notify-valid-p
19166         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
19167         Use delete-directory to delete file-notify--test-tmpfile if it is
19168         a directory.  Likewise for file-notify--test-tmpfile1.
19169         (file-notify-test04-file-validity)
19170         (file-notify-test05-dir-validity): Delete the parent directory of
19171         the test.  Ignore errors when cleaning up after the test.
19173 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
19175         Report file-notify-error in w32notify.c
19176         * src/w32notify.c (report_w32notify_error): New function.
19177         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
19178         errors, instead of calling report_file_error.  (Bug#21432)
19180         Implement w32notify-valid-p
19181         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
19182         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
19183         'identity'.
19185 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
19187         Test file-notify-valid-p
19188         * test/automated/file-notify-tests.el
19189         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
19190         New tests.
19192 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
19194         Fix markup in ELisp manual
19195         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
19196         of the 'alpha' parameter value.  (Bug#21470)
19198 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
19200         Introduce `file-notify-valid-p'
19201         * lisp/filenotify.el (file-notify-valid-p): New defun.
19202         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
19203         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
19204         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
19205         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
19206         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
19207         <file-notify-valid-p>: Add handler.
19208         * lisp/net/tramp.el (tramp-file-name-for-operation):
19209         Add `file-notify-valid-p'.
19210         (tramp-handle-file-notify-valid-p): New defun.
19211         * src/inotify.c (Finotify_valid_p): New defun.
19212         (syms_of_inotify): Declare Sinotify_valid_p.
19214 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
19216         Port Unicode char detection to FreeBSD+svgalib
19217         Problem reported by Ashish SHUKLA in:
19218         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
19219         * configure.ac: Check for struct unipair.unicode instead of for
19220         <linux/kd.h>, since that’s more specific to what the code
19221         actually needs.
19222         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
19224         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
19226 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
19228         Fix vertical cursor motion across overlay strings with newlines
19229         * src/indent.c (Fvertical_motion): Don't leave point in the middle
19230         of an overlay string with newlines, as that will position the
19231         cursor after the string at whatever column is there.  (Bug#21468)
19233 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
19235         Fix tests in file-notify-tests.el
19236         * test/automated/file-notify-tests.el: Remove Tramp declarations.
19237         (file-notify-test00-availability): Print remote command w/o Tramp
19238         internal functions.
19239         (file-notify-test02-events, file-notify-test02-events-remote):
19240         Adapt docstring.
19241         (file-notify-test03-autorevert): Use `format-message' when
19242         inspecting *Messages* buffer.
19244 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
19246         Bind inhibit-modification-hooks rather than a/b-c-f
19247         * lisp/wid-edit.el (widget-editable-list-insert-before)
19248         (widget-editable-list-delete-at):
19249         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
19250         (cperl-font-lock-unfontify-region-function):
19251         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
19252         * lisp/obsolete/longlines.el (longlines-mode):
19253         * lisp/obsolete/fast-lock.el (save-buffer-state):
19254         * lisp/mouse.el (mouse-save-then-kill-delete-region):
19255         * lisp/gnus/message.el (message-hide-headers):
19256         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
19257         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
19258         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
19259         than after/before-change-functions to nil.
19261 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
19263         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
19264         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
19265         the buffers, even if the forced redisplay is interrupted.
19267         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
19269         Merge syntax-propertize--done and parse-sexp-propertize-done
19270         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
19271         (syntax-propertize): Set syntax-propertize--done even if
19272         syntax-propertize-function is nil.  Avoid recursive invocations.
19273         (syntax-propertize-chunks): New var.
19274         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
19275         Simplify.
19276         (parse-sexp-propertize-function): Don't set any more.
19277         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
19278         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
19279         Call Qinternal__syntax_propertize instead of
19280         Vparse_sexp_propertize_function.  Truncate e_property if needed.
19281         (update_syntax_table_forward): Streamline.
19282         (syms_of_syntax): Define Qinternal__syntax_propertize.
19283         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
19285 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
19287         Prefer straight quoting in some text files
19288         Mostly this just changes ` to ' in static text.  Some exceptions:
19289         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
19290         typically does that now.
19291         * admin/quick-install-emacs (TRY, top level):
19292         Use straight quoting in diagnostics.
19293         * src/README: Fix working-directory confusion.
19295         * CONTRIBUTE: Move send-email here from git-workflow.
19297 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
19299         Improve file notifications in Tramp
19300         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
19301         Set proper events to watch for.
19302         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
19303         watched events.
19305 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
19307         Fix NS build with --enable-checking='glyphs'
19308         * src/nsfns.m (unwind_create_frame): Make the preprocessor
19309         conditionals for referencing 'dpyinfo' consistent throughout the
19310         function.  (Bug#21426)
19312 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
19314         Add seq-find
19315         This function is similar to `seq-some' but returns the found element.
19316         In the cases where nil can be the found element, a sentinel optional
19317         argument can be provided to avoid ambiguities.
19318         * lisp/emacs-lisp/seq.el (seq-find): New function.
19319         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
19320         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
19321         seq-find.
19323 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
19325         Document file-notify--test-with-events.
19326         * test/automated/file-notify-tests.el (file-notify--test-with-events):
19327         Add docstring.
19329 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
19331         Report used native library in file-notify-tests.el
19332         * test/automated/file-notify-tests.el
19333         (tramp-get-remote-gvfs-monitor-dir)
19334         (tramp-get-remote-inotifywait): Declare them.
19335         (file-notify-test00-availability): Print used native library.
19337 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
19339         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
19340         (mpc-file-local-copy): Check for absolute path.  Check more config
19341         locations.
19343 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
19345         Improve documentation of categories
19346         * doc/lispref/syntax.texi (Categories): Clarify the example of
19347         using define-category and modify-category-entry.  (Bug#21448)
19349 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
19351         Revert some stray curved quotes I missed earlier
19352         Problem reported by David Kastrup in:
19353         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
19354         * lisp/international/mule-cmds.el (leim-list-header):
19355         Use format-message with an ASCII-only format.
19357         Prefer NUMBERP to spelling it out
19358         * src/editfns.c (styled_format):
19359         * src/frame.h (NUMVAL):
19360         * src/image.c (parse_image_spec):
19361         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
19362         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
19363         * src/process.c (Fsignal_process):
19364         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
19365         * src/xfaces.c (check_lface_attrs):
19366         * src/xselect.c (x_fill_property_data, x_send_client_event):
19367         Use NUMBERP rather than INTEGERP || FLOATP.
19369 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
19371         Improve file-notify-tests
19372         * test/automated/file-notify-tests.el: Use lexical-binding.
19373         (file-notify--test-cleanup): New function.
19374         (file-notify-test00-availability, file-notify-test01-add-watch)
19375         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
19376         (file-notify--test-with-events): New macro.
19377         (file-notify-test02-events): Use it.
19379 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
19381         Add patch-sending instructions to git-workflow
19382         From a suggestion by Mitchel Humpherys in:
19383         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
19384         * admin/notes/git-workflow (Sending patches): New section.
19386         Port to GIFLIB 5.0.6 and later
19387         Problem reported by Mitchel Humpherys in:
19388         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
19389         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
19390         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
19391         (gif_load) [HAVE_GIF]: Use it.
19393 2015-09-10  Glenn Morris  <rgm@gnu.org>
19395         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
19397 2015-09-09  Glenn Morris  <rgm@gnu.org>
19399         * test/automated/file-notify-tests.el (file-notify-test02-events):
19400         Fix recent change.
19402 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
19404         Refix movemail GCC pacification
19405         Problem reported by Ken Brown in:
19406         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
19407         * lib-src/movemail.c (main): Fix previous change.
19409 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
19411         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
19412         Mark unused vars with underscore.
19414         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
19415         (parse_sexp_propertize): ...from here.
19417         * lisp/filenotify.el: Use lexical-binding
19418         (file-notify-add-watch): Avoid add-to-list.
19420 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
19422         Start checking event types in file-notify tests
19423         * test/automated/file-notify-tests.el (file-notify--test-events):
19424         New variable.
19425         (file-notify--test-event-handler): Append received event to
19426         file-notify--test-events for later analysis.
19427         (file-notify-test02-events): Assert that the expected notifications have
19428         arrived in the expected order.
19430 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
19432         Merge from gnulib and texinfo
19433         This incorporates:
19434         2015-08-03 Improve port of stdalign to C++11
19435         * lib/stdalign.in.h: Copy from gnulib.
19436         * doc/misc/texinfo.tex: Copy from texinfo.
19438 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
19440         Make syntax.c call syntax-propertize on demand
19441         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
19442         (parse-sexp-propertize-function): Use it.
19443         (syntax-propertize): Disable parse-sexp-propertize-function.
19444         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
19445         New functions.
19446         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
19447         `parse-sexp-propertize-function'.
19448         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
19449         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
19450         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
19451         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
19452         Don't assume `point' is set.
19454 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
19456         Fix indentation of an @example in ELisp manual
19457         * doc/lispref/syntax.texi (Categories): Untabify the example.
19458         (Bug#21448)
19460 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
19462         Define internal-char-font even if --without-x
19463         The function is used now even in non-graphical environments.
19464         Problem reported by Glenn Morris in:
19465         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
19466         * src/font.c (Finternal_char_font): Move here ...
19467         * src/fontset.c (Finternal_char_font): ... from here.
19469 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
19471         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
19472         Remove warning.
19474 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
19476         Fix display of complex local data types in GDB-MI
19477         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
19478         variable has no value, display "<complex data type>" as a
19479         placeholder, instead of a confusing "nil".  (Bug#21438)
19481 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
19483         Remove redundant redefinition of seq-drop-while from seq.el
19484         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
19486 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
19488         * lisp/emacs-lisp/package.el (package--ensure-init-file):
19489         More robust check for `package-initialize' calls in init file.
19490         This function accepts an optional argument, but calls passing
19491         an argument would not have been detected.
19493 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
19495         Port movemail to RHEL 6 with --enable-gcc-warnings
19496         * lib-src/movemail.c (main): Declare local only if needed.
19498         Port recent Linux console changes to RHEL 6
19499         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
19501         Improvements for curved quotes on Linux consule
19502         This should help Emacs work better out-of-the-box on Linux consoles,
19503         which have only limited support for displaying Unicode characters.
19504         Also, undo the recent change that caused text-quoting-style to
19505         affect quote display on terminals, so that the two features are
19506         independent.  See Alan Mackenzie in:
19507         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
19508         Finally, add a style parameter to startup--setup-quote-display,
19509         so that this function can also be invoked after startup, with
19510         different styles depending on user preference at the time.
19511         * configure.ac: Check for linux/kd.h header.
19512         * doc/emacs/display.texi (Text Display): Document quote display.
19513         * doc/lispref/display.texi (Active Display Table):
19514         * etc/NEWS:
19515         * lisp/startup.el (startup--setup-quote-display, command-line):
19516         text-quoting-style no longer affects quote display.
19517         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
19518         * lisp/international/mule-util.el (char-displayable-p):
19519         * lisp/startup.el (startup--setup-quote-display):
19520         On a text terminal supporting glyph codes, use the reported
19521         glyph codes instead of the terminal coding system, as this
19522         is more accurate on the Linux console.
19523         * lisp/startup.el (startup--setup-quote-display):
19524         New optional arg STYLE.
19525         * src/fontset.c (Finternal_char_font):
19526         Report glyph codes for a text terminal, if they are available.
19527         Currently this is supported only for the Linux console.
19528         * src/termhooks.h (struct terminal): New member glyph-code-table.
19529         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
19530         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
19531         (terminal_glyph_code): New function.
19533 2015-09-08  Juri Linkov  <juri@linkov.net>
19535         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
19536         underline.  (Bug#21433)
19538 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
19540         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
19542 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
19544         Fix double-reporting of rename events with inotify
19545         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
19546         of rename events with inotify (bug#21435).
19548 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
19550         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
19551         (tetris-mode-map): Use it.
19553 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
19555         Remove a few simple cases of global redisplay
19556         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
19557         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
19558         rather than returning a "resized_p" boolean.
19559         (redisplay_internal): Adjust call accordingly.
19560         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
19561         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
19562         tracking of this undesirable situation.
19564         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
19565         * src/process.c (status_notify): Only set the update_mode_line on the
19566         relevant buffers rather than setting it globally.
19568 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
19570         * lisp/electric.el (electric-quote-post-self-insert-function):
19571         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
19572         (electric-quote-mode): Activate everywhere in message-mode.
19574 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
19576         Go back to grave quoting in source-code docstrings etc.
19577         This reverts almost all my recent changes to use curved quotes
19578         in docstrings and/or strings used for error diagnostics.
19579         There are a few exceptions, e.g., Bahá’í proper names.
19580         * admin/unidata/unidata-gen.el (unidata-gen-table):
19581         * lisp/abbrev.el (expand-region-abbrevs):
19582         * lisp/align.el (align-region):
19583         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
19584         (outlineify-sticky):
19585         * lisp/apropos.el (apropos-library):
19586         * lisp/bookmark.el (bookmark-default-annotation-text):
19587         * lisp/button.el (button-category-symbol, button-put)
19588         (make-text-button):
19589         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
19590         * lisp/calc/calc-embed.el (calc-do-embedded):
19591         * lisp/calc/calc-ext.el (calc-user-function-list):
19592         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
19593         * lisp/calc/calc-help.el (calc-describe-key)
19594         (calc-describe-thing, calc-full-help):
19595         * lisp/calc/calc-lang.el (calc-c-language)
19596         (math-parse-fortran-vector-end, math-parse-tex-sum)
19597         (math-parse-eqn-matrix, math-parse-eqn-prime)
19598         (calc-yacas-language, calc-maxima-language, calc-giac-language)
19599         (math-read-giac-subscr, math-read-math-subscr)
19600         (math-read-big-rec, math-read-big-balance):
19601         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
19602         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
19603         (calc-auto-recompute):
19604         * lisp/calc/calc-prog.el (calc-fix-token-name)
19605         (calc-read-parse-table-part, calc-user-define-invocation)
19606         (math-do-arg-check):
19607         * lisp/calc/calc-store.el (calc-edit-variable):
19608         * lisp/calc/calc-units.el (math-build-units-table-buffer):
19609         * lisp/calc/calc-vec.el (math-read-brackets):
19610         * lisp/calc/calc-yank.el (calc-edit-mode):
19611         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
19612         * lisp/calendar/appt.el (appt-display-message):
19613         * lisp/calendar/diary-lib.el (diary-check-diary-file)
19614         (diary-mail-entries, diary-from-outlook):
19615         * lisp/calendar/icalendar.el (icalendar-export-region)
19616         (icalendar--convert-float-to-ical)
19617         (icalendar--convert-date-to-ical)
19618         (icalendar--convert-ical-to-diary)
19619         (icalendar--convert-recurring-to-diary)
19620         (icalendar--add-diary-entry):
19621         * lisp/calendar/time-date.el (format-seconds):
19622         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
19623         (timeclock-make-hours-explicit, timeclock-log-data):
19624         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
19625         (todo-item-mark, todo-check-format)
19626         (todo-insert-item--next-param, todo-edit-item--next-key)
19627         (todo-mode):
19628         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
19629         * lisp/cedet/mode-local.el (describe-mode-local-overload)
19630         (mode-local-print-binding, mode-local-describe-bindings-2):
19631         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
19632         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
19633         * lisp/cus-start.el (standard):
19634         * lisp/cus-theme.el (describe-theme-1):
19635         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
19636         (custom--sort-vars-1, load-theme):
19637         * lisp/descr-text.el (describe-text-properties-1, describe-char):
19638         * lisp/dired-x.el (dired-do-run-mail):
19639         * lisp/dired.el (dired-log):
19640         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
19641         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
19642         (ad-disable-advice, ad-remove-advice, ad-set-argument)
19643         (ad-set-arguments, ad--defalias-fset, ad-activate)
19644         (ad-deactivate):
19645         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
19646         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
19647         (byte-optimize-while, byte-optimize-apply):
19648         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
19649         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
19650         (byte-compile-log-file, byte-compile-format-warn)
19651         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
19652         (byte-compile-cl-warn)
19653         (byte-compile-warn-about-unresolved-functions)
19654         (byte-compile-file, byte-compile--declare-var)
19655         (byte-compile-file-form-defmumble, byte-compile-form)
19656         (byte-compile-normal-call, byte-compile-check-variable)
19657         (byte-compile-variable-ref, byte-compile-variable-set)
19658         (byte-compile-subr-wrong-args, byte-compile-setq-default)
19659         (byte-compile-negation-optimizer)
19660         (byte-compile-condition-case--old)
19661         (byte-compile-condition-case--new, byte-compile-save-excursion)
19662         (byte-compile-defvar, byte-compile-autoload)
19663         (byte-compile-lambda-form)
19664         (byte-compile-make-variable-buffer-local, display-call-tree)
19665         (batch-byte-compile):
19666         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
19667         * lisp/emacs-lisp/chart.el (chart-space-usage):
19668         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
19669         (check-declare-warn, check-declare-file)
19670         (check-declare-directory):
19671         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
19672         (checkdoc-message-text-engine):
19673         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
19674         (cl--describe-class):
19675         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
19676         (cl--generic-describe, cl-generic-generalizers):
19677         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
19678         (cl-symbol-macrolet):
19679         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
19680         * lisp/emacs-lisp/copyright.el (copyright)
19681         (copyright-update-directory):
19682         * lisp/emacs-lisp/edebug.el (edebug-read-list):
19683         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
19684         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
19685         (eieio-oref):
19686         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
19687         * lisp/emacs-lisp/eieio-speedbar.el:
19688         (eieio-speedbar-child-make-tag-lines)
19689         (eieio-speedbar-child-description):
19690         * lisp/emacs-lisp/eieio.el (defclass, change-class):
19691         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
19692         (elint-init-form, elint-check-defalias-form)
19693         (elint-check-let-form):
19694         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
19695         (ert-results-pop-to-backtrace-for-test-at-point)
19696         (ert-results-pop-to-messages-for-test-at-point)
19697         (ert-results-pop-to-should-forms-for-test-at-point)
19698         (ert-describe-test):
19699         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
19700         (find-function-library):
19701         * lisp/emacs-lisp/generator.el (iter-yield):
19702         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
19703         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
19704         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
19705         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
19706         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
19707         (advice--make, define-advice):
19708         * lisp/emacs-lisp/package-x.el (package-upload-file):
19709         * lisp/emacs-lisp/package.el (package-version-join)
19710         (package-disabled-p, package-activate-1, package-activate)
19711         (package--download-one-archive)
19712         (package--download-and-read-archives)
19713         (package-compute-transaction, package-install-from-archive)
19714         (package-install, package-install-selected-packages)
19715         (package-delete, package-autoremove, describe-package-1)
19716         (package-install-button-action, package-delete-button-action)
19717         (package-menu-hide-package, package-menu--list-to-prompt)
19718         (package-menu--perform-transaction)
19719         (package-menu--find-and-notify-upgrades):
19720         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
19721         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
19722         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
19723         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
19724         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
19725         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
19726         (rx-form):
19727         * lisp/emacs-lisp/smie.el (smie-config-save):
19728         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
19729         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
19730         * lisp/emacs-lisp/testcover.el (testcover-1value):
19731         * lisp/emacs-lisp/timer.el (timer-event-handler):
19732         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
19733         (viper-toggle-search-style, viper-kill-buffer)
19734         (viper-brac-function):
19735         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
19736         * lisp/env.el (setenv):
19737         * lisp/erc/erc-button.el (erc-nick-popup):
19738         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
19739         * lisp/eshell/em-dirs.el (eshell/cd):
19740         * lisp/eshell/em-glob.el (eshell-glob-regexp)
19741         (eshell-glob-entries):
19742         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
19743         * lisp/eshell/esh-opt.el (eshell-show-usage):
19744         * lisp/facemenu.el (facemenu-add-new-face)
19745         (facemenu-add-new-color):
19746         * lisp/faces.el (read-face-name, read-face-font, describe-face)
19747         (x-resolve-font-name):
19748         * lisp/files-x.el (modify-file-local-variable):
19749         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
19750         (set-auto-mode, hack-one-local-variable--obsolete)
19751         (dir-locals-set-directory-class, write-file, basic-save-buffer)
19752         (delete-directory, copy-directory, recover-session)
19753         (recover-session-finish, insert-directory)
19754         (file-modes-char-to-who, file-modes-symbolic-to-number)
19755         (move-file-to-trash):
19756         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
19757         * lisp/find-cmd.el (find-generic, find-to-string):
19758         * lisp/finder.el (finder-commentary):
19759         * lisp/font-lock.el (font-lock-fontify-buffer):
19760         * lisp/format.el (format-write-file, format-find-file)
19761         (format-insert-file):
19762         * lisp/frame.el (get-device-terminal, select-frame-by-name):
19763         * lisp/fringe.el (fringe--check-style):
19764         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
19765         * lisp/help-fns.el (help-fns--key-bindings)
19766         (help-fns--compiler-macro, help-fns--parent-mode)
19767         (help-fns--obsolete, help-fns--interactive-only)
19768         (describe-function-1, describe-variable):
19769         * lisp/help.el (describe-mode)
19770         (describe-minor-mode-from-indicator):
19771         * lisp/image.el (image-type):
19772         * lisp/international/ccl.el (ccl-dump):
19773         * lisp/international/fontset.el (x-must-resolve-font-name):
19774         * lisp/international/mule-cmds.el (prefer-coding-system)
19775         (select-safe-coding-system-interactively)
19776         (select-safe-coding-system, activate-input-method)
19777         (toggle-input-method, describe-current-input-method)
19778         (describe-language-environment):
19779         * lisp/international/mule-conf.el (code-offset):
19780         * lisp/international/mule-diag.el (describe-character-set)
19781         (list-input-methods-1):
19782         * lisp/mail/feedmail.el (feedmail-run-the-queue):
19783         * lisp/mouse.el (minor-mode-menu-from-indicator):
19784         * lisp/mpc.el (mpc-playlist-rename):
19785         * lisp/msb.el (msb--choose-menu):
19786         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
19787         * lisp/net/imap.el (imap-interactive-login):
19788         * lisp/net/mairix.el (mairix-widget-create-query):
19789         * lisp/net/newst-backend.el (newsticker--sentinel-work):
19790         * lisp/net/newst-treeview.el (newsticker--treeview-load):
19791         * lisp/net/rlogin.el (rlogin):
19792         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
19793         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
19794         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
19795         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
19796         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
19797         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
19798         (org-babel-goto-named-result):
19799         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
19800         * lisp/org/ob-ref.el (org-babel-ref-resolve):
19801         * lisp/org/org-agenda.el (org-agenda-prepare):
19802         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
19803         (org-clock-resolve):
19804         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
19805         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
19806         * lisp/org/org-habit.el (org-habit-parse-todo):
19807         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
19808         (org-mouse-context-menu):
19809         * lisp/org/org-table.el (org-table-edit-formulas):
19810         * lisp/org/ox.el (org-export-async-start):
19811         * lisp/proced.el (proced-log):
19812         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
19813         (ada-check-matching-start, ada-goto-matching-start):
19814         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
19815         * lisp/progmodes/ada-xref.el (ada-find-executable):
19816         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
19817         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
19818         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
19819         (flymake-start-syntax-check-process):
19820         * lisp/progmodes/python.el (python-shell-get-process-or-error)
19821         (python-define-auxiliary-skeleton):
19822         * lisp/progmodes/sql.el (sql-comint):
19823         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
19824         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
19825         * lisp/recentf.el (recentf-open-files):
19826         * lisp/replace.el (query-replace-read-from)
19827         (occur-after-change-function, occur-1):
19828         * lisp/scroll-bar.el (scroll-bar-columns):
19829         * lisp/server.el (server-get-auth-key):
19830         * lisp/simple.el (execute-extended-command)
19831         (undo-outer-limit-truncate, list-processes--refresh)
19832         (compose-mail, set-variable, choose-completion-string)
19833         (define-alternatives):
19834         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
19835         (command-line-1):
19836         * lisp/subr.el (noreturn, define-error, add-to-list)
19837         (read-char-choice, version-to-list):
19838         * lisp/term/common-win.el (x-handle-xrm-switch)
19839         (x-handle-name-switch, x-handle-args):
19840         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
19841         * lisp/textmodes/reftex-ref.el (reftex-label):
19842         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
19843         * lisp/textmodes/two-column.el (2C-split):
19844         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
19845         (tutorial--find-changed-keys):
19846         * lisp/type-break.el (type-break-noninteractive-query):
19847         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
19848         (wdired-do-perm-changes):
19849         * lisp/whitespace.el (whitespace-report-region):
19850         Prefer grave quoting in source-code strings used to generate help
19851         and diagnostics.
19852         * lisp/faces.el (face-documentation):
19853         No need to convert quotes, since the result is a docstring.
19854         * lisp/info.el (Info-virtual-index-find-node)
19855         (Info-virtual-index, info-apropos):
19856         Simplify by generating only curved quotes, since info files are
19857         typically that ways nowadays anyway.
19858         * lisp/international/mule-diag.el (list-input-methods):
19859         Don’t assume text quoting style is curved.
19860         * lisp/org/org-bibtex.el (org-bibtex-fields):
19861         Revert my recent changes, going back to the old quoting style.
19863 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
19865         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
19866         (package--autoloads-file-name)
19867         (package--activate-autoloads-and-load-path): New function.
19868         (package-activate-1): Delegate autoloading and load-path
19869         configuration to `package--activate-autoloads-and-load-path'.
19870         (package--compile): Before compilation, call
19871         `package--activate-autoloads-and-load-path' instead of
19872         `package-activate-1'.
19874 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
19876         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
19878 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
19880         Fix deletion of symlinks to directories on MS-Windows
19881         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
19882         symlink to a directory, try again with 'rmdir'.
19883         (is_symlink): If the argument is a symlink to a directory, set a
19884         bit in the return value to indicate that fact.
19886 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
19888         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
19889         When `package-initialize' is called as part of loading the init file,
19890         the user probably doesn't want it to be called again afterwards.
19891         In this situation, `package-initialize' now sets
19892         `package-enable-at-startup' to nil to prevent that.  The user can have
19893         the old behavior by setting this variable to t after the call to
19894         `package-initialize'.  (Bug#21423)
19895         * doc/emacs/package.texi (Package Installation): Document it.
19896         * doc/lispref/package.texi (Packaging Basics): Document it.
19897         * etc/NEWS: Document it.
19899 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19901         Bump version of ntlm.el to 2.00
19902         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
19903         Add comm keyword.
19905 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
19907         * doc/misc/gnus.texi (Mail Source Specifiers):
19908         Allow :mailbox to be a list.
19910 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
19912         * lisp/progmodes/etags.el (etags-tags-completion-table):
19913         Allow even one non-regular character before the implicit tag name.
19914         Reported at http://emacs.stackexchange.com/questions/15269/.
19916 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19918         Add support for NTLMv2 authentication
19919         * lisp/net/ntlm.el (ntlm): New customization group.
19920         (ntlm-compatibility-level): New defcustom.
19921         (ntlm-compute-timestamp): New function.
19922         (ntlm-generate-nonce): Likewise.
19923         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
19925 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
19927         * lisp/emacs-lisp/package.el: Rename custom faces.
19928         All of the recently introduced faces, like `package-name-face', have
19929         been renamed to no end in `-face' to comply with the convention
19930         described in (info "(elisp) Defining Faces").
19931         (package-name, package-description)
19932         (package-status-built-in, package-status-external)
19933         (package-status-available, package-status-new)
19934         (package-status-held, package-status-disabled)
19935         (package-status-installed, package-status-dependency)
19936         (package-status-unsigned, package-status-incompat)
19937         (package-status-avail-obso): New faces.
19938         (package-menu--print-info-simple): Use them.
19940 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
19942         mail-source.el: Make the imap mail-source's :mailbox handle a list
19943         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
19944         Allow :mailbox to be  a list.
19946 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
19948         nnimap.el: Handle nil arg to nnimap-request-group
19949         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
19950         This arg isn't always passed in, check it's not nil before making it
19951         into a list.  The active arg will also be nil if the group is new,
19952         check for that.
19954 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
19956         File notifications: Support renaming over directory boundaries
19957         * lisp/filenotify.el (file-notify-handle-event):
19958         (file-notify--pending-event): Adapt docstring.
19959         (file-notify--descriptor, file-notify-callback): Reimplement in
19960         order to support renaming over directory boundaries.
19961         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
19962         * doc/lispref/os.texi (File Notifications): Remove limitation of
19963         file renaming to the same directory.
19965 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
19967         Spelling fix (Bug#21420)
19969 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
19971         Improve the semantic of map-some
19972         Update map-some to return the returned by the predicate, similar to
19973         seq-some.
19974         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
19975           return value of the predicate.
19976         * test/automated/map-tests.el (test-map-some): Update the test to check
19977           for non-nil values only.
19979         Rename map-contains-key-p and map-some-p
19980         Remove the "-p" suffix from both function names.
19981         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
19982           Rename the functions.
19983         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
19984           Update both test functions.
19986         Improve the semantic of seq-some
19987         Update seq-some to return non-nil if the predicate returns non-nil for
19988         any element of the seq, in which case the returned value is the one
19989         returned by the predicate.
19990         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
19991           docstring.
19992         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
19993         * doc/lispref/sequences.texi (Sequence Functions): Update the
19994           documentation for seq-some.
19996         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
19997         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
19998           without the "-p" prefix.
19999         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
20000           the tests accordingly.
20001         * doc/lispref/sequences.texi (Sequence Functions): Update the
20002           documentation for seq.el.
20004 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
20006         text-quoting-style for usage of fn names with ‘’
20007         * lisp/help.el (help--docstring-quote): Don’t assume
20008         text-quoting-style is ‘curve’ when generating usage strings for
20009         functions whose names contain curved quotes.
20011 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
20013         Fix fix for describe-function keybinding confusion
20014         This fixes a bug introduced by the previous patch.
20015         * lisp/help-fns.el (help-fns--signature):
20016         Last arg of help-fns--signature is now a buffer, or nil if a
20017         raw signature is wanted.  All callers changed.
20018         (describe-function-1): Use this to do the right thing with signatures.
20020 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
20022         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
20024         Use PAT rather than UPAT in pcase macros
20025         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
20026         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
20027           than UPAT.
20029 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
20031         Fix describe-function keybinding confusion
20032         * lisp/help-fns.el (describe-function-1): Compute signature
20033         in the original buffer, not in standard-output, so that
20034         substitute-command-keys uses the proper keybindings.
20035         This fixes Bug#21412, introduced in commit
20036         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
20038 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
20040         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
20042 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
20044         Avoid read error messages from 'inotify'
20045         * src/process.c (wait_reading_process_output): Add a
20046         'tls_available' set and manipulate it instead of 'Available' when
20047         checking TLS inputs.  Assign the value to 'Available' only if we
20048         find any TLS data waiting to be read.  This avoids error messages
20049         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
20051 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
20053         Avoid errors in thing-at-point with 2nd argument non-nil
20054         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
20055         sequences.  (Bug#21391)
20057 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
20059         Fix segfaults due to using a stale face ID
20060         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
20061         (display_echo_area_1, redisplay_internal): Call it to avoid
20062         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
20063         faces, which could case a segfault if the frame's face cache was
20064         freed since the last redisplay.  (Bug#21394)
20065         * src/xfaces.c (free_realized_faces):
20066         Call forget_escape_and_glyphless_faces.
20067         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
20069 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
20071         Fix minor problems with " in manual
20073 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
20075         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
20076         multi-hop files.
20078 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
20080         Support automated ‘make check’ in non-C locale
20081         This lets the builder optionally test Emacs behavior in other locales.
20082         The C locale is still the default for tests.
20083         * test/automated/Makefile.in (TEST_LOCALE): New macro.
20084         (emacs): Use it.
20085         * test/automated/flymake-tests.el (flymake-tests--current-face):
20086         Use C locale for subprocesses so that tests behave as expected.
20087         * test/automated/python-tests.el:
20088         (python-shell-prompt-validate-regexps-1)
20089         (python-shell-prompt-validate-regexps-2)
20090         (python-shell-prompt-validate-regexps-3)
20091         (python-shell-prompt-validate-regexps-4)
20092         (python-shell-prompt-validate-regexps-5)
20093         (python-shell-prompt-validate-regexps-6)
20094         (python-shell-prompt-set-calculated-regexps-1):
20095         Adjust expected output to match locale.
20096         * test/automated/tildify-tests.el (tildify-test--test)
20097         (tildify-space-test--test, tildify-space-undo-test--test):
20098         This test assumes UTF-8 encoding.
20100 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
20102         Fix some more docstring etc. quoting problems
20103         Mostly these fixes prevent the transliteration of apostrophes
20104         that should stay apostrophes.  Also, prefer curved quotes in
20105         Bahá’í proper names, as that’s the preferred Bahá’í style and
20106         these names are chock-full of non-ASCII characters anyway.
20107         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
20108         (eieio-defclass-internal):
20109         * lisp/emacs-lisp/eieio.el (defclass):
20110         * lisp/hi-lock.el (hi-lock-mode):
20111         Don’t transliterate Lisp apostrophes when generating a
20112         doc string or diagnostic.
20113         * lisp/international/mule-diag.el (list-coding-systems-1):
20114         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
20115         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
20116         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
20117         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
20118         Substitute quotes before putting them in the help buffer.
20120 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
20122         Re-add the notion of echo_prompt lost in the translation
20123         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
20124         echo_prompt which contains the actual string.  Update all uses.
20125         * src/keyboard.c (kset_echo_prompt): New function.
20126         (echo_update): Add echo_prompt at the very beginning.
20127         (read_char): Remove workaround for bug#19875, not needed any more.
20128         (read_key_sequence): Set echo_prompt rather than echo_string
20129         (bug#21403).
20130         (mark_kboards): Mark echo_prompt.
20132         Fix disassembly of non-compiled lexical functions (bug#21377)
20133         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
20134         * lisp/emacs-lisp/disass.el: Use lexical-binding.
20135         (disassemble): Recognize `closure's as well.
20136         (disassemble-internal): Use indirect-function and
20137         help-function-arglist, and accept `closure's.
20138         (disassemble-internal): Use interactive-form.
20139         (disassemble-1): Use functionp.
20141         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
20142         Don't compose inside verbatim blocks!
20144 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
20146         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
20147         (bug#19441).
20149         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
20151 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
20153         vc-git-mode-line-string: Explicitly re-apply the face
20154         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
20155         the face (bug#21404).
20157 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
20159         Treat initial-scratch-message as a doc string
20160         * doc/emacs/building.texi (Lisp Interaction):
20161         * doc/lispref/os.texi (Startup Summary):
20162         * etc/NEWS: Document this.
20163         * lisp/startup.el (initial-scratch-message):
20164         Look up find-file’s key rather than hardcoding it.
20165         (command-line-1): Substitute the doc string.
20166         This also substitutes the quotes, which will help test display
20167         quoting at startup.
20169         Fix describe-char bug with glyphs on terminals
20170         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
20171         buffers too, so don’t treat them differently from graphic displays.
20172         Without this fix, describe-char would throw an error on a terminal
20173         if given a glyph with a non-default face.
20175         Follow text-quoting-style in display table init
20176         This attempts to fix a problem reported by Alan Mackenzie in:
20177         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
20178         * doc/lispref/display.texi (Active Display Table):
20179         Mention how text-quoting-style affects it.
20180         * doc/lispref/help.texi (Keys in Documentation):
20181         Say how to set text-quoting-style in ~/.emacs.
20182         * etc/NEWS: Document the change.
20183         * lisp/startup.el (startup--setup-quote-display):
20184         Follow user preference if text-quoting-style is set.
20185         (command-line): Setup quote display again if user expresses
20186         a preference in .emacs.
20188 2015-09-02  K. Handa  <handa@gnu.org>
20190         Fix typo
20191         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
20192         -> OTF_positioning_type_components_mask.
20194         Fix previous change
20195         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
20196         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
20198 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
20200         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
20201         Rename from vc-find-file-hook and make interactive.
20202         (vc-find-file-hook): Redefine as obsolete alias.
20204 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20206         Escape ` and ' in doc
20207         Escape apostrophes and grave accents in docstrings if they are
20208         are supposed to stand for themselves and are not quotes.  Remove
20209         apostrophes from docstring examples like ‘'(calendar-nth-named-day
20210         -1 0 10 year)’ that confuse source code with data.  Do some other
20211         minor docstring fixups as well, e.g., insert a missing close quote.
20213 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
20215         Generalize the prefix-command machinery of C-u
20216         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
20217         (prefix-command-preserve-state-hook): New hooks.
20218         (internal-echo-keystrokes-prefix): New function.
20219         (prefix-command--needs-update, prefix-command--last-echo): New vars.
20220         (prefix-command-update, prefix-command-preserve): New functions.
20221         (reset-this-command-lengths): New compatibility definition.
20222         (universal-argument--mode): Call prefix-command-update.
20223         (universal-argument, universal-argument-more, negative-argument)
20224         (digit-argument): Call prefix-command-preserve-state.
20225         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
20226         the "prefix argument" to echo.
20227         (this_command_key_count_reset, before_command_key_count)
20228         (before_command_echo_length): Delete variables.
20229         (echo_add_key): Always add a space.
20230         (echo_char): Remove.
20231         (echo_dash): Don't give up when this_command_key_count is 0, since that
20232         is now the case after a prefix command.
20233         (echo_update): New function, extracted from echo_now.
20234         (echo_now): Use it.
20235         (add_command_key, read_char, record_menu_key): Remove old disabled code.
20236         (command_loop_1): Don't refrain from pushing an undo boundary when
20237         prefix-arg is set.  Remove other prefix-arg special case, now handled
20238         directly in the prefix commands instead.  But call echo_now if there's
20239         a prefix state to echo.
20240         (read_char, record_menu_key): Use echo_update instead of echo_char.
20241         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
20242         (Freset_this_command_lengths): Delete function.
20243         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
20244         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
20245         * lisp/simple.el: Use those new hooks for C-u.
20246         (universal-argument--description): New function.
20247         (prefix-command-echo-keystrokes-functions): Use it.
20248         (universal-argument--preserve): New function.
20249         (prefix-command-preserve-state-hook): Use it.
20250         (command-execute): Call prefix-command-update if needed.
20251         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
20252         (kmacro-step-edit-prefix-index): Delete variables.
20253         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
20254         support for prefix arg commands.
20255         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
20256         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
20257         (cua--shift-control-prefix): Use prefix-command-preserve-state.
20258         Remove now unused arg `arg'.
20259         (cua--prefix-override-handler, cua--prefix-repeat-handler)
20260         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
20261         Update accordingly.
20262         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
20263         any more.
20264         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
20265         if the mark is not set.
20267 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20269         Rework quoting in Emacs Lisp Introduction
20270         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
20271         (if in more detail, type-of-animal in detail, else): Rework the
20272         early example to use " rather than ' so that we don’t burden
20273         complete novices with the low-priority detail of text quoting style.
20274         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
20275         (kill-new function, kill-ring-yank-pointer)
20276         (Complete forward-sentence, Loading Files)
20277         (Code for current-kill, Code for current-kill, yank):
20278         Resurrect the Emacs 22 versions of the code, which uses grave
20279         quoting style in doc strings.
20280         (Complete zap-to-char): Mention how quoting works in doc strings.
20282         Setup quote display only if interactive
20283         * lisp/startup.el (command-line):
20284         Skip call to startup--setup-quote-display if noninteractive.
20285         Without this change, python-shell-prompt-validate-regexps-1
20286         fails in test/automated/python-tests.el when run in an
20287         en_US.utf8 locale on Fedora.
20289 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
20291         Use defalias at the top level
20292         * lisp/gnus/gnus-util.el (gnus-format-message):
20293         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
20294         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
20296 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20298         terminal-init-w32console mimicks command-line
20299         Problem reported by Eli Zaretskii.
20300         * lisp/startup.el (startup--setup-quote-display):
20301         New function, refactored from a part of ‘command-line’.
20302         (command-line): Use it.
20303         * lisp/term/w32console.el (terminal-init-w32console):
20304         Use it, so that this function stays consistent with ‘command-line’.
20306         Display replacement quotes with shadow glyphs
20307         * lisp/startup.el (command-line): When displaying ASCII
20308         replacements for curved quotes, use a shadow glyph instead of a
20309         regular one, to avoid ambiguity.
20311 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
20313         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
20315 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20317         Docstring fixes re quotes in C code
20318         Fix some docstring quoting problems, mostly by escaping apostrophe.
20320 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
20322         Some Tramp password fixes
20323         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
20324         of the hops.
20325         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
20326         at the beginning of the command.  Otherwise, it could be
20327         interpreted as password prompt if the remote host echoes the
20328         command.
20329         (tramp-remote-coding-commands): Add "openssl enc -base64".
20331 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
20333         Make vc-git-working-revision always return the commit hash
20334         * lisp/vc/vc-git.el (vc-git-working-revision):
20335         Return the commit hash (bug#21383).
20336         (vc-git--symbolic-ref): New function, extracted from above.
20337         (vc-git-mode-line-string): Use it.
20339 2015-09-01  K. Handa  <handa@gnu.org>
20341         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
20342         * src/ftfont.c (MFLTGlyphFT): New type.
20343         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
20344         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
20345         elements in the array MFLTGlyphString.glyphs.
20347 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
20349         Improve comments in elisp-mode.el, elisp-mode-tests.el
20350         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
20352         Delete Emacs 25 test in mode-local.el
20353         * lisp/cedet/mode-local.el (describe-mode-local-overload):
20354         Fix missed an edit in previous commit.
20356         Show all known mode-local overrides in *Help*
20357         * lisp/cedet/mode-local.el (describe-mode-local-overload):
20358         Assume Emacs 25. Add all known mode-local overrides.
20360 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
20362         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
20363         Ensure that the article where the search word is found is displayed
20364         and pointed to in the summary buffer.
20366 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
20368         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
20369         When the region is active, but is empty (length 0), act as though
20370         the region was not active; that is, put a comment at the end of
20371         the line.  (Bug#21119)
20373 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
20375         Port tls.el to older Emacs
20376         * lisp/net/tls.el (tls-format-message):
20377         Alias to format-message, or format if not available.
20378         (open-tls-stream): Use it.
20380 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
20382         hideif.el: Recognize .h++ as C++ header
20383         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
20385         isearch: Document character folding mode
20386         * lisp/isearch.el (isearch-forward):
20387         Mention `isearch-toggle-character-fold' in doc string.
20389 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20391         Quoting fixes in ERC and Eshell
20392         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
20393         * lisp/erc/erc-backend.el (define-erc-response-handler):
20394         * lisp/erc/erc-fill.el (erc-fill-static-center):
20395         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
20396         * lisp/eshell/em-glob.el (eshell-glob-entries):
20397         * lisp/eshell/em-hist.el (eshell-save-some-history):
20398         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
20399         (eshell-shuffle-files):
20400         * lisp/eshell/esh-cmd.el (eshell-do-eval):
20401         * lisp/eshell/esh-proc.el (eshell-process-interact)
20402         (eshell-query-kill-processes):
20403         Respect ‘text-quoting-style’ in diagnostics and doc strings.
20405         Quoting fixes in Gnus
20406         * lisp/gnus/gnus-agent.el:
20407         (gnus-agent-possibly-synchronize-flags-server):
20408         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
20409         * lisp/gnus/gnus-eform.el (gnus-edit-form):
20410         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
20411         (gnus-group-nnimap-edit-acl):
20412         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
20413         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
20414         * lisp/gnus/message.el (message-strip-subject-encoded-words)
20415         (message-check-recipients, message-send-form-letter):
20416         * lisp/gnus/mm-decode.el (mm-display-part):
20417         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
20418         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
20419         (mml-smime-get-ldap-cert):
20420         * lisp/gnus/spam-report.el (spam-report-process-queue):
20421         Respect ‘text-quoting-style’ in diagnostics.
20422         * lisp/gnus/gnus-art.el (article-display-face)
20423         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
20424         Use straight quoting in email.
20425         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
20426         Escape apostrophes in doc strings.
20428         Quoting fixes in lisp mail, mh-e, net, url
20429         * lisp/mail/emacsbug.el (report-emacs-bug)
20430         (report-emacs-bug-hook): Use straight quotes in outgoing email,
20431         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
20432         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
20433         * lisp/mail/rmailout.el (rmail-output-read-file-name):
20434         * lisp/net/imap.el (imap-interactive-login):
20435         * lisp/net/tls.el (open-tls-stream):
20436         * lisp/url/url-auth.el (url-register-auth-scheme):
20437         Respect ‘text-quoting-style’ in diagnostics.
20438         * lisp/mh-e/mh-e.el (mh-sortm-args):
20439         Quote docstring example using text quotes, not as a Lisp quote.
20441 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
20443         Fix some byte-compiler warnings in EDE
20444         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
20445         existing autoloader list, rather than add to it.
20446         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
20447         argument to eieio class constructor.
20448         (ede-show-supported-projects): New.
20449         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
20450         with (oref ... name).
20451         (ede-auto-load-project): Use slot name, not initarg key.
20452         * lisp/cedet/ede/generic.el (ede-generic-load)
20453         (ede-generic-find-matching-target): Use slot name, not initarg key.
20454         (ede-find-target): Use oref-default on class name.
20455         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
20456         class constructor.
20457         (ede-enable-generic-projects): Make project type names unique.
20459 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
20461         Fix directory accessibility tests for w32 network volumes
20462         * src/w32.c (faccessat): Don't fail with network volumes without a
20463         share.
20464         (w32_accessible_directory_p): Handle network volumes without a
20465         share.
20467         Fix handling long file names in readdir on MS-Windows
20468         * src/w32.c (sys_readdir): Append "\*" to the directory after
20469         converting it to UTF-16/ANSI, not before, to avoid overflowing the
20470         260-character limit on file names in filename_to_utf16/ansi.
20472         Make file-accessible-directory-p reliable on MS-Windows
20473         * src/w32.c (w32_accessible_directory_p): New function.
20474         * src/w32.h (w32_accessible_directory_p): Add prototype.
20475         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
20476         w32_accessible_directory_p to test a directory for accessibility
20477         by the current user.  (Bug#21346)
20478         (Ffile_accessible_directory_p): Remove the w32 specific caveat
20479         from the doc string.
20481 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
20483         Don't call do_pending_window_change in signal handlers (Bug#21380)
20484         * src/gtkutil.c (xg_frame_resized):
20485         * src/xterm.c (x_set_window_size):
20486         * src/w32term.c (x_set_window_size): Don't call
20487         do_pending_window_change.
20489 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20491         Quoting fixes in lisp/org
20492         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
20493         (org-tags-view):
20494         * lisp/org/org-capture.el (org-capture-mode)
20495         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
20496         (org-ctags-ask-append-topic):
20497         * lisp/org/org.el (org-time-string-to-time)
20498         (org-time-string-to-absolute):
20499         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
20500         (org-ctags-ask-append-topic):
20501         * lisp/org/org.el (org-time-string-to-time)
20502         (org-time-string-to-absolute):
20503         Respect ‘text-quoting-style’ in diagnostics.
20504         * lisp/org/org-agenda.el (org-agenda-custom-commands)
20505         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
20506         * lisp/org/org-capture.el (org-capture-fill-template):
20507         Avoid contraction in output file that might be ASCII.
20508         * lisp/org/org-compat.el (format-message):
20509         Define if not already defined, for backward compatibility.
20510         * lisp/org/org-src.el (org-edit-src-save):
20511         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
20512         Escape apostrophes in diagnostics.
20514         Treat “instead” strings as docstrings
20515         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
20516         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
20517         Substitute quotes in instead strings.
20519 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
20521         Better documentation of seq-let
20522         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
20523         documentation of seq-let.
20525 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20527         * lisp/international/ccl.el: Fix quoting.
20529         Quoting fixes in lisp/international and lisp/leim
20530         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
20531         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
20532         * lisp/international/mule-cmds.el:
20533         (select-safe-coding-system-interactively, leim-list-file-name):
20534         * lisp/international/quail.el (quail-use-package, quail-help):
20535         * lisp/international/titdic-cnv.el (tit-process-header)
20536         (miscdic-convert):
20537         Respect text quoting style in doc strings and diagnostics.
20538         * lisp/international/quail.el (lisp/international/quail.el):
20539         * lisp/leim/quail/ethiopic.el ("ethiopic"):
20540         Escape apostrophes in doc strings.
20542         Make ‘text-quoting-style’ a plain defvar
20543         It doesn’t need customization, as it’s likely useful only by experts.
20544         Suggested by Stefan Monnier in:
20545         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
20546         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
20548         Quoting fixes in lisp/textmodes
20549         * lisp/textmodes/bibtex.el (bibtex-validate)
20550         (bibtex-validate-globally, bibtex-search-entries):
20551         * lisp/textmodes/ispell.el (ispell-command-loop):
20552         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
20553         * lisp/textmodes/texinfmt.el (texinfmt-version)
20554         (texinfo-format-region, texinfo-format-buffer-1):
20555         * lisp/textmodes/two-column.el (2C-split):
20556         Respect text quoting style in doc strings and diagnostics.
20557         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
20558         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
20559         Escape apostrophes in doc strings.
20561         Documentation fixes re quotes
20562         Prefer curved quotes in examples if users will typically see
20563         curved quotes when the examples run.
20564         Mention format-message when appropriate.
20565         Don’t use @code in examples.
20566         Quote an apostrophe with @kbd.
20568         Quoting fixes in lisp/progmodes
20569         * lisp/progmodes/cc-engine.el (c-bos-report-error):
20570         * lisp/progmodes/cpp.el (cpp-edit-reset):
20571         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
20572         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
20573         (etags-tags-apropos, list-tags, tags-apropos):
20574         * lisp/progmodes/executable.el (executable-set-magic):
20575         * lisp/progmodes/octave.el (octave-sync-function-file-names)
20576         (octave-help, octave-find-definition-default-filename)
20577         (octave-find-definition):
20578         Respect text quoting style in doc strings and diagnostics.
20579         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
20580         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
20581         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
20582         Escape apostrophes in doc strings.
20583         * lisp/progmodes/cmacexp.el (c-macro-expansion):
20584         Use straight quoting in ASCII comment.
20585         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
20586         (idlwave-pad-keyword):
20587         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
20588         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
20589         (vhdl-electric-semicolon, vhdl-electric-comma)
20590         (vhdl-electric-period, vhdl-electric-equal):
20591         Use directed quotes in diagnostics and doc strings.
20593 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
20595         Minor documentation and NEWS tweak
20596         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
20597         Add an index entry.
20598         * etc/NEWS: Fix a typo in character-fold-to-regexp.
20600 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
20602         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
20603         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
20604         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
20605         Adapt test.
20607 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
20609         Text quoting fixes in cedet, emulation, emacs-lisp
20610         * lisp/cedet/ede.el (ede-check-project-directory):
20611         * lisp/cedet/semantic/analyze/debug.el
20612         (semantic-analyzer-debug-insert-include-summary):
20613         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
20614         * lisp/cedet/semantic/decorate/include.el
20615         (semantic-decoration-unknown-include-describe)
20616         (semantic-decoration-all-include-summary):
20617         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
20618         * lisp/emulation/edt.el (edt-load-keys):
20619         * lisp/emulation/viper-cmd.el
20620         (viper-display-current-destructive-command)
20621         (viper-query-replace, viper-brac-function):
20622         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
20623         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
20624         Respect text quoting style in doc string or diagnostic.
20625         * lisp/cedet/mode-local.el (describe-mode-local-overload):
20626         Use format-message to avoid overtranslating quotes.
20627         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
20628         Escape an apostrophe in a docstring.
20629         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
20631 2015-08-29  Daniel Colascione  <dancol@dancol.org>
20633         Fix which-func for curly quotes: look for symbol, not message
20634         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
20635         imenu-unavailable error symbol instead of trying to match message
20636         exactly.
20637         * lisp/imenu.el (imenu-unavailable): New error.
20638         (imenu-unavailable-error): New function.
20640 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
20642         Fix Python tests on MS-Windows
20643         * test/automated/python-tests.el
20644         (python-shell-calculate-command-1): Run python-shell-interpreter
20645         through shell-quote-argument before comparing with what
20646         python-shell-calculate-command returns.
20647         (python-shell-calculate-pythonpath-1)
20648         (python-shell-calculate-pythonpath-2)
20649         (python-shell-calculate-process-environment-2): Use path-separator
20650         instead of a literal ':'.
20651         (python-shell-calculate-exec-path-2)
20652         (python-shell-calculate-exec-path-3)
20653         (python-shell-calculate-exec-path-4)
20654         (python-shell-with-environment-1)
20655         (python-shell-with-environment-2): Run "/env/bin" through
20656         expand-file-name before comparing with exec-path.  (Bug#21375)
20658 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
20660         Use Core Text types/functions/variables/enumerators directly
20661         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
20662         (CharacterCollection): Remove typedefs.  All uses replaced with
20663         definitions.
20664         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
20665         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
20666         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
20667         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
20668         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
20669         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
20670         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
20671         definitions.
20672         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
20673         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
20674         (MAC_FONT_FORMAT_BITMAP)
20675         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
20676         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
20677         All uses replaced with definitions.
20678         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
20679         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
20680         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
20681         Add compatibility enumerators for older versions.
20682         (mac_font_descriptor_create_with_attributes)
20683         (mac_font_descriptor_create_matching_font_descriptors)
20684         (mac_font_descriptor_create_matching_font_descriptor)
20685         (mac_font_descriptor_copy_attribute)
20686         (mac_font_descriptor_supports_languages)
20687         (mac_font_create_with_name, mac_font_get_size)
20688         (mac_font_copy_family_name, mac_font_copy_character_set)
20689         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
20690         (mac_font_get_descent, mac_font_get_leading)
20691         (mac_font_get_underline_position)
20692         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
20693         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
20694         replaced with definitions.
20695         (mac_font_create_preferred_family_for_attributes)
20696         (mac_font_get_advance_width_for_glyph)
20697         (mac_font_get_bounding_rect_for_glyph)
20698         (mac_font_create_available_families, mac_font_shape):
20699         Remove macros for renamed functions.
20700         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
20701         * src/macfont.m (mac_font_descriptor_supports_languages):
20702         Rename from mac_ctfont_descriptor_supports_languages.
20703         (mac_font_create_preferred_family_for_attributes): Rename from
20704         mac_ctfont_create_preferred_family_for_attributes.
20705         (mac_font_get_advance_width_for_glyph): Rename from
20706         mac_ctfont_get_advance_width_for_glyph.
20707         Use kCTFontOrientationDefault also for older versions.
20708         (mac_font_get_bounding_rect_for_glyph): Rename from
20709         mac_ctfont_get_bounding_rect_for_glyph.
20710         Use kCTFontOrientationDefault also for older versions.
20711         (mac_font_create_available_families): Rename from
20712         mac_ctfont_create_available_families.
20713         (mac_font_equal_in_postscript_name): Rename from
20714         mac_ctfont_equal_in_postscript_name.  All uses changed.
20715         (mac_font_create_line_with_string_and_font): Rename from
20716         mac_ctfont_create_line_with_string_and_font.  All uses changed.
20717         (mac_font_shape): Rename from mac_ctfont_shape.
20718         (mac_font_family_compare): Remove unused declaration.
20720 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
20722         Fix minor text quoting in calc, calendar, vc
20723         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
20724         * lisp/calc/calc-help.el (calc-j-prefix-help):
20725         * lisp/calc/calc-misc.el (calc-help):
20726         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
20727         Escape an apostrophe in a docstring.
20728         * lisp/calc/calc-forms.el (calc-hms-notation):
20729         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
20730         Escape an apostrophe in a diagnostic.
20731         * lisp/calc/calc-misc.el (calc-help):
20732         * lisp/calendar/diary-lib.el (diary-include-files):
20733         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
20734         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
20735         * lisp/vc/ediff-diff.el (ediff-same-contents):
20736         * lisp/vc/ediff-merg.el (ediff-re-merge):
20737         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
20738         * lisp/vc/ediff-util.el (ediff-test-save-region)
20739         (ediff-status-info):
20740         * lisp/vc/ediff.el (ediff-merge-revisions)
20741         (ediff-merge-revisions-with-ancestor):
20742         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
20743         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
20744         Respect text quoting style in doc string or diagnostic.
20745         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
20746         * lisp/vc/add-log.el (change-log-goto-source):
20747         Avoid double-formatting.
20748         * lisp/vc/ediff-init.el (format-message):
20749         New backward-compatibility alias.
20751 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
20753         Fix minor text quoting problems in lisp top level
20754         * lisp/apropos.el (apropos-describe-plist):
20755         * lisp/cus-theme.el (customize-themes):
20756         * lisp/dired.el (dired-log):
20757         * lisp/help-fns.el (describe-variable):
20758         * lisp/hexl.el (hexl-insert-multibyte-char):
20759         * lisp/info.el (Info-finder-find-node):
20760         * lisp/json.el (json-read-string):
20761         * lisp/novice.el (disabled-command-function)
20762         (disabled-command-function):
20763         * lisp/startup.el (normal-mouse-startup-screen):
20764         * lisp/woman.el (WoMan-log, WoMan-warn):
20765         Respect text quoting style in doc string or diagnostic.
20766         * lisp/replace.el (replace-character-fold):
20767         * src/syntax.c (Fmodify_syntax_entry):
20768         Escape an apostrophe in a docstring.
20769         * lisp/tempo.el (tempo-define-template):
20770         Remove confusing apostrophe from docstring.
20771         * lisp/whitespace.el (whitespace-mark-x):
20772         Use directed quotes in docstring.
20774 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
20776         Fix indentation rule in css-mode
20777         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
20778         brackets in presence of pseudo-selectors.  (Bug#21328)
20780 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
20782         Fix a bug in recording a macro while flyspell-mode is active
20783         * lisp/subr.el (sit-for): Don't call read-event when recording a
20784         macro.  (Bug#21329)
20786 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
20788         Tweak startup screen quoting
20789         * lisp/startup.el (normal-splash-screen): Use standard
20790         "M-" abbrevation rather than a confusingly-different one.
20791         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
20793 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
20795         Add test case for ‘format’ bug and refactor
20796         * src/editfns.c (styled_format): Refactor internally, mostly by
20797         moving declarations closer to uses.  This should not affect behavior.
20798         * test/automated/textprop-tests.el (textprop-tests-format): New test.
20800         Fix ‘format’ bug with property offsets
20801         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
20802         bug in calculating string property offsets (Bug#21351).
20804         Use straight quotes in lib-src diagnostics
20805         These auxiliary programs can’t use Emacs’s text-quoting-style,
20806         and it’s too much trouble to redo that mechanism by hand.
20807         So just use straight quotes for now.
20808         * lib-src/ebrowse.c (main):
20809         * lib-src/emacsclient.c (decode_options, main):
20810         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
20811         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
20812         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
20813         (none_help, print_language_names, print_help, add_regex)
20814         (suggest_asking_for_help):
20815         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
20816         Use straight quotes in diagnostics.
20818         ‘text-quoting-style’ fixes for admin
20819         * admin/admin.el (cusver-scan, cusver-check):
20820         * admin/authors.el (authors-canonical-file-name):
20821         * admin/bzrmerge.el (bzrmerge-missing):
20822         Respect ‘text-quoting-style’ in diagnostics.
20824 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
20826         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
20827         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
20828         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
20829         * doc/lispref/internals.texi (Writing Emacs Primitives):
20830         * etc/NEWS:
20831         Document the change.
20832         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
20833         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
20834         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
20835         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
20836         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
20837         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
20838         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
20839         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
20840         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
20841         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
20842         Remove.  All uses removed.  The code now assumes
20843         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
20844         * src/bytecode.c (relocate_byte_stack):
20845         Rename from unmark_byte_stack, since it now only relocates.
20846         All callers changed.
20847         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
20848         with GCPROs removed.
20849         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
20850         * test/automated/finalizer-tests.el (finalizer-basic)
20851         (finalizer-circular-reference, finalizer-cross-reference)
20852         (finalizer-error):
20853         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
20854         Remove tests, as they depend on gc-precise.
20856 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
20858         Improve seq-concatenate for new sequence types
20859         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
20860         ensure that concatenation happens on sequences only.  This makes it
20861         possible to use `seq-concatenate' for new types of seqs.
20862         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
20863         New function used in `seq-concatenate'.
20864         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
20865         for seq-into-sequence.
20867 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
20869         Add mode local overrides to xref-find-definitions
20870         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
20871         (xref-mode-local-overload): New; add mode local overrides to
20872         xref-find-definitions.
20873         * test/automated/elisp-mode-tests.el: Add mode local override tests.
20874         (xref-elisp-test-run): Handle indented defuns.
20875         (xref-elisp-generic-*): Improve doc strings.
20876         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
20877         (elisp--xref-find-definitions): Use it.
20879         Add mode local overrides to describe-function
20880         * lisp/cedet/mode-local.el (describe-mode-local-overload):
20881         New; add mode local overrides to describe-function.
20882         * etc/NEWS: Document change.
20884 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
20886         Prefer straight quoting in some etc text files
20887         These files are plain text and might be used by non-Emacs apps.
20888         They’re mostly ASCII, so just use straight quotes.
20890         Fix quoting in ‘message_with_string’
20891         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
20892         should work now.
20893         * src/xdisp.c (message_to_stderr): New function, refactored from
20894         part of ‘message3_nolog’.
20895         (message3_nolog): Use it.
20896         (message_with_string): Use it.  Don’t mishandle NUL bytes when
20897         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
20898         Use ‘format-message’, not ‘format’, so that quotes are translated.
20900 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
20902         Mention false positives of file-accessible-directory on w32
20903         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
20904         (Bug#21346)
20906 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
20908         Treat error strings as help
20909         * src/print.c (print_error_message): Translate quotes and command
20910         keys in errmsg so that users see, e.g., "Symbol’s value as
20911         variable is void: foo" when text-quoting-style is curved.
20913 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
20915         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
20917 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
20919         Top-level elisp files respect ‘text-quoting-style’
20920         In top-level elisp files, use format-message in diagnostic formats,
20921         so that they follow user preference as per ‘text-quoting-style’
20922         rather than being hard-coded to quote `like this'.
20923         * lisp/allout.el (allout-get-configvar-values):
20924         * lisp/apropos.el (apropos-symbols-internal):
20925         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
20926         (dired-do-create-files-regexp, dired-create-files-non-directory):
20927         * lisp/dired-x.el (dired-do-run-mail):
20928         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
20929         * lisp/disp-table.el (standard-display-european):
20930         * lisp/find-dired.el (find-dired):
20931         * lisp/forms.el (forms-mode):
20932         * lisp/ido.el (ido-buffer-internal):
20933         * lisp/info.el (Info-index-next):
20934         * lisp/outline.el (outline-invent-heading):
20935         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
20936         * lisp/proced.el (proced-log):
20937         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
20938         * lisp/recentf.el (recentf-open-files, recentf-save-list):
20939         * lisp/savehist.el (savehist-save):
20940         * lisp/server.el (server-ensure-safe-dir):
20941         * lisp/ses.el (ses-rename-cell):
20942         * lisp/simple.el (list-processes--refresh):
20943         * lisp/startup.el (command-line):
20944         * lisp/strokes.el (strokes-unset-last-stroke)
20945         (strokes-execute-stroke):
20946         Use format-message so that quotes are restyled.
20947         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
20948         Don’t quote ‘raised’.
20949         * lisp/descr-text.el (describe-char):
20950         * lisp/dirtrack.el (dirtrack-debug-message):
20951         * lisp/hexl.el (hexl-insert-multibyte-char):
20952         Apply substitute-command-keys to help string.
20953         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
20954         (wdired-do-perm-changes):
20955         Let dired-log do the formatting.
20957 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20959         Go back to grave quoting in Tramp
20960         * lisp/net/tramp-adb.el:
20961         * lisp/net/tramp-cache.el:
20962         * lisp/net/tramp-compat.el:
20963         * lisp/net/tramp-gvfs.el:
20964         * lisp/net/tramp-gw.el:
20965         * lisp/net/tramp-sh.el:
20966         * lisp/net/tramp-smb.el:
20967         * lisp/net/tramp.el:
20968         Stick with grave quoting in diagnostics strings.  This is more
20969         portable to older Emacs, desirable for Tramp.
20970         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
20971         for diagnostic that needs requoting.
20972         * lisp/net/tramp-compat.el (format-message):
20973         Fall back on simple ‘format’, since that’s good enough now.
20975         Go back to grave quoting in Gnus
20976         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
20977         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
20978         (gnus-agent-fetch-headers):
20979         * lisp/gnus/gnus-int.el (gnus-start-news-server):
20980         * lisp/gnus/gnus-registry.el:
20981         (gnus-registry--split-fancy-with-parent-internal)
20982         (gnus-registry-post-process-groups):
20983         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
20984         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
20985         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
20986         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
20987         * lisp/gnus/spam.el (spam-check-blackholes):
20988         Stick with grave quoting in diagnostics strings.  This is more
20989         portable to older Emacs, desirable for Gnus.
20991         Fix customization of text-quoting-style
20992         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
20993         * lisp/wid-edit.el (widget-docstring):
20994         Get raw docstring here since it’s cooked later and should not be
20995         cooked twice.
20996         * lisp/cus-edit.el (custom-group-value-create):
20997         Cook the docstring before inserting it.
20998         * lisp/cus-start.el (text-quoting-style): Quote the customization
20999         docstrings according to the new rules.  Give curved examples.
21001         format-message now curves ` and '
21002         That way, the caller doesn’t have to use curved quotes to
21003         get diagnostics that match the text-quoting-style preferences.
21004         Suggested by Dmitry Gutov in:
21005         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
21006         This means we no longer need %qs, so remove that format.
21007         While we’re at it, fix an unlikely bug and lessen the pressure
21008         on the garbage collector by processing the string once rather
21009         than twice in the usual case.
21010         * doc/lispref/strings.texi (Formatting Strings):
21011         * etc/NEWS: Document this.
21012         * lisp/subr.el (format-message): Remove; now done in C.
21013         * src/callint.c (Fcall_interactively):
21014         * src/editfns.c (Fmessage, Fmessage_box):
21015         Use Fformat_message instead of Finternal__text_restyle
21016         followed by Fformat.
21017         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
21018         uLSQM and uRSQM.
21019         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
21020         when pure ASCII now suffices.  Fix unlikely bug when parsing
21021         unibyte string containing non-ASCII bytes.  Use inline code
21022         rather than memcpy, as it’s a tiny number of bytes.
21023         (Finternal__text_restyle): Remove; no longer used.
21024         (syms_of_doc): Don’t declare it.
21025         * src/editfns.c (Fformat): Rewrite in terms of new function
21026         ‘styled_format’.
21027         (Fformat_message): New function, moved here from subr.el.
21028         (styled_format): New function, with the old guts of Fformat,
21029         except it now optionally transliterates quotes, and it transliterates
21030         traditional grave accent and apostrophe quoting as well.
21031         Remove recently-added q flag; no longer needed or used.
21032         (syms_of_editfns): Define format-message.
21033         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
21034         Remove; no longer need to be global symbols.
21035         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
21036         so that callers can use `%s'.
21037         * src/image.c (image_size_error, xbm_load_image, xbm_load)
21038         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
21039         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
21040         (svg_load_image, gs_load, x_kill_gs_process):
21041         * src/lread.c (load_warn_old_style_backquotes):
21042         * src/xfaces.c (load_pixmap):
21043         * src/xselect.c (x_clipboard_manager_error_1):
21044         Use `%s' instead of %qs in formats.
21046 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
21048         Minor fixes in doc/emacs/search.texi
21049         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
21050         (Special Isearch): Use @w{} to generate several consecutive spaces
21051         with Texinfo 6.  (Bug#21345)
21053 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
21055         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
21056         (tramp-awk-coding-test): New defconsts.
21057         (tramp-remote-coding-commands): Use them.
21058         (tramp-find-inline-encoding): Check for Perl only if necessary.
21060 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
21062         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
21063         index entries for the special form `quote'.
21065 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
21067         Spelling fixes
21069         Gnus format-message typo fix
21070         * lisp/gnus/gnus-util.el (gnus-format-message):
21071         Fix typo when running in older Emacs.
21073         Prefer directed to neutral quotes in docstings and diagnostics.
21074         In docstrings, escape apostrophes that would otherwise be translated
21075         to curved quotes using the newer, simpler rules.
21076         * admin/unidata/unidata-gen.el (unidata-gen-table):
21077         * lisp/align.el (align-region):
21078         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
21079         * lisp/bookmark.el (bookmark-default-annotation-text):
21080         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
21081         * lisp/calc/calc-lang.el (math-read-giac-subscr)
21082         (math-read-math-subscr):
21083         * lisp/calc/calc-misc.el (report-calc-bug):
21084         * lisp/calc/calc-prog.el (calc-fix-token-name)
21085         (calc-read-parse-table-part):
21086         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
21087         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
21088         * lisp/dabbrev.el (dabbrev-expand):
21089         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
21090         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
21091         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
21092         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
21093         * lisp/erc/erc-button.el (erc-nick-popup):
21094         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
21095         * lisp/eshell/em-dirs.el (eshell/cd):
21096         * lisp/eshell/em-glob.el (eshell-glob-regexp):
21097         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
21098         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
21099         * lisp/eshell/esh-opt.el (eshell-show-usage):
21100         * lisp/files-x.el (modify-file-local-variable):
21101         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
21102         (filesets-update-pre010505):
21103         * lisp/find-cmd.el (find-generic, find-to-string):
21104         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
21105         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
21106         (gnus-agent-fetch-headers):
21107         * lisp/gnus/gnus-int.el (gnus-start-news-server):
21108         * lisp/gnus/gnus-registry.el:
21109         (gnus-registry--split-fancy-with-parent-internal):
21110         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
21111         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
21112         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
21113         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
21114         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
21115         * lisp/gnus/spam.el (spam-check-blackholes):
21116         * lisp/mail/feedmail.el (feedmail-run-the-queue):
21117         * lisp/mpc.el (mpc-playlist-rename):
21118         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
21119         * lisp/net/mairix.el (mairix-widget-create-query):
21120         * lisp/net/tramp-cache.el:
21121         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
21122         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
21123         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
21124         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
21125         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
21126         (org-babel-goto-named-result):
21127         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
21128         * lisp/org/ob-ref.el (org-babel-ref-resolve):
21129         * lisp/org/org-agenda.el (org-agenda-prepare):
21130         * lisp/org/org-bibtex.el (org-bibtex-fields):
21131         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
21132         (org-clock-resolve):
21133         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
21134         * lisp/org/org-habit.el (org-habit-parse-todo):
21135         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
21136         (org-mouse-context-menu):
21137         * lisp/org/org-table.el (org-table-edit-formulas):
21138         * lisp/org/ox.el (org-export-async-start):
21139         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
21140         (dun-rooms, dun-endgame-questions):
21141         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
21142         * lisp/progmodes/ada-xref.el (ada-find-executable):
21143         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
21144         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
21145         (flymake-start-syntax-check-process):
21146         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
21147         * lisp/progmodes/sql.el (sql-comint):
21148         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
21149         * lisp/server.el (server-get-auth-key):
21150         * lisp/subr.el (version-to-list):
21151         * lisp/textmodes/reftex-ref.el (reftex-label):
21152         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
21153         * lisp/vc/ediff-diff.el (ediff-same-contents):
21154         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
21155         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
21156         Use directed rather than neutral quotes in diagnostics.
21158         Treat ' like ’ even when not matching `
21159         This is simpler and easier to explain, and should encourage better
21160         typography.  Do this in Electric Quote mode and when translating
21161         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
21162         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
21163         * doc/emacs/text.texi (Quotation Marks):
21164         * doc/lispref/help.texi (Keys in Documentation):
21165         * etc/NEWS:
21166         Document this.
21167         * lisp/electric.el (electric-quote-post-self-insert-function):
21168         * src/doc.c (Fsubstitute_command_keys):
21169         Always treat ' like ’ even when not matched by an open quote.
21171 2015-08-25  Glenn Morris  <rgm@gnu.org>
21173         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
21174         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
21176 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21178         * src/macfont.m (macfont_create_family_with_symbol):
21179         Accept localized names.
21181 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
21183         Tramp diagnostics as per ‘text-quoting-style’
21184         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
21185         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
21186         (tramp-adb-handle-delete-directory)
21187         (tramp-adb-handle-delete-file)
21188         (tramp-adb-handle-file-local-copy)
21189         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
21190         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
21191         (tramp-adb-maybe-open-connection):
21192         * lisp/net/tramp-cache.el:
21193         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
21194         (tramp-compat-octal-to-decimal)
21195         (tramp-compat-coding-system-change-eol-conversion):
21196         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
21197         (tramp-gvfs-do-copy-or-rename-file)
21198         (tramp-gvfs-handle-delete-directory)
21199         (tramp-gvfs-handle-delete-file)
21200         (tramp-gvfs-handle-expand-file-name)
21201         (tramp-gvfs-handle-file-local-copy)
21202         (tramp-gvfs-handle-file-notify-add-watch)
21203         (tramp-gvfs-handle-make-directory)
21204         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
21205         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
21206         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
21207         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
21208         (tramp-sh-handle-set-visited-file-modtime)
21209         (tramp-sh-handle-set-file-modes)
21210         (tramp-sh-handle-file-name-all-completions)
21211         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
21212         (tramp-do-copy-or-rename-file-directly)
21213         (tramp-do-copy-or-rename-file-out-of-band)
21214         (tramp-sh-handle-make-directory)
21215         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
21216         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
21217         (tramp-sh-handle-start-file-process)
21218         (tramp-sh-handle-file-local-copy)
21219         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
21220         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
21221         (tramp-find-file-exists-command, tramp-open-shell)
21222         (tramp-find-shell)
21223         (tramp-open-connection-setup-interactive-shell)
21224         (tramp-find-inline-encoding, tramp-find-inline-compress)
21225         (tramp-compute-multi-hops, tramp-maybe-open-connection)
21226         (tramp-wait-for-output, tramp-send-command-and-check)
21227         (tramp-send-command-and-read, tramp-get-remote-path)
21228         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
21229         (tramp-get-ls-command-with-quoting-style)
21230         (tramp-get-test-command, tramp-get-remote-ln)
21231         (tramp-get-remote-perl, tramp-get-remote-stat)
21232         (tramp-get-remote-readlink, tramp-get-remote-trash)
21233         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
21234         (tramp-get-remote-inotifywait, tramp-get-remote-id)
21235         (tramp-get-remote-python):
21236         * lisp/net/tramp-smb.el (tramp-smb-errors)
21237         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
21238         (tramp-smb-handle-delete-directory)
21239         (tramp-smb-handle-delete-file)
21240         (tramp-smb-handle-file-local-copy)
21241         (tramp-smb-handle-make-directory)
21242         (tramp-smb-handle-make-directory-internal)
21243         (tramp-smb-handle-make-symbolic-link)
21244         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
21245         (tramp-smb-handle-set-file-modes)
21246         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
21247         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
21248         (tramp-process-actions):
21249         Generate diagnostics according to ‘text-quoting-style’, by
21250         using curved quotes in format strings and ‘format-message’
21251         when appropriate.
21252         * lisp/net/tramp-compat.el (format-message):
21253         Define a replacement, if it’s an older version of Emacs
21254         that doesn’t have it already.
21256         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
21258 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
21260         Fix documentation for `save-excursion'
21261         * doc/lispref/positions.texi (Excursions):
21262         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
21263         (Template for save-excursion, Point and mark): `save-excursion'
21264         does not save&restore the mark any more.
21266 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
21268         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
21269         New defconsts.
21270         (tramp-do-file-attributes-with-stat)
21271         (tramp-do-directory-files-and-attributes-with-stat): Use them.
21272         (tramp-convert-file-attributes): Remove double slashes in symlinks.
21273         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
21274         Handle symlinks with "//" in the file name.
21276         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
21278 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
21280         Fix cl-subseq and cl-concatenate
21281         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
21282         seq functions.
21283         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
21284         seq-concatenate.
21286 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
21288         Fix full-screen code when there is no window manager (Bug#21317)
21289         * src/xterm.h (x_wm_supports): Declare external.
21290         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
21291         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
21292         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
21293         `fullscreen' frame parameter.
21294         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
21295         without a window manager.
21297 2015-08-24  Glenn Morris  <rgm@gnu.org>
21299         * lisp/version.el (emacs-version): No longer include build host.
21300         * doc/lispref/intro.texi (Version Info): Update example.
21302 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
21304         * doc/lispref/elisp.texi: Fix typo in previous change.
21306         More-conservative ‘format’ quote restyling
21307         Instead of restyling curved quotes for every call to ‘format’,
21308         create a new function ‘format-message’ that does the restyling,
21309         and using the new function instead of ‘format’ only in contexts
21310         where this seems appropriate.
21311         Problem reported by Dmitry Gutov and Andreas Schwab in:
21312         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
21313         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
21314         * doc/lispref/commands.texi (Using Interactive):
21315         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
21316         * doc/lispref/display.texi (Displaying Messages, Progress):
21317         * doc/lispref/elisp.texi:
21318         * doc/lispref/help.texi (Keys in Documentation):
21319         * doc/lispref/minibuf.texi (Minibuffer Misc):
21320         * doc/lispref/strings.texi (Formatting Strings):
21321         * etc/NEWS:
21322         Document the changes.
21323         * lisp/abbrev.el (expand-region-abbrevs):
21324         * lisp/apropos.el (apropos-library):
21325         * lisp/calc/calc-ext.el (calc-record-message)
21326         (calc-user-function-list):
21327         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
21328         * lisp/calc/calc-lang.el (math-read-big-balance):
21329         * lisp/calc/calc-store.el (calc-edit-variable):
21330         * lisp/calc/calc-units.el (math-build-units-table-buffer):
21331         * lisp/calc/calc-yank.el (calc-edit-mode):
21332         * lisp/calendar/icalendar.el (icalendar-export-region)
21333         (icalendar--add-diary-entry):
21334         * lisp/cedet/mode-local.el (mode-local-print-binding)
21335         (mode-local-describe-bindings-2):
21336         * lisp/cedet/semantic/complete.el (semantic-completion-message):
21337         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
21338         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
21339         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
21340         * lisp/descr-text.el (describe-text-properties-1, describe-char):
21341         * lisp/dframe.el (dframe-message):
21342         * lisp/dired-aux.el (dired-query):
21343         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
21344         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
21345         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
21346         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
21347         (cconv-analyze-form):
21348         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
21349         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
21350         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
21351         * lisp/emacs-lisp/edebug.el (edebug-format):
21352         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
21353         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
21354         (eldoc-message):
21355         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
21356         * lisp/emacs-lisp/find-func.el (find-function-library):
21357         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
21358         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
21359         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
21360         * lisp/emacs-lisp/package.el (package-compute-transaction)
21361         (package-install-button-action, package-delete-button-action)
21362         (package-menu--list-to-prompt):
21363         * lisp/emacs-lisp/timer.el (timer-event-handler):
21364         * lisp/emacs-lisp/warnings.el (lwarn, warn):
21365         * lisp/emulation/viper-cmd.el:
21366         (viper-toggle-parse-sexp-ignore-comments)
21367         (viper-kill-buffer, viper-brac-function):
21368         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
21369         * lisp/facemenu.el (facemenu-add-new-face):
21370         * lisp/faces.el (face-documentation, read-face-name)
21371         (face-read-string, read-face-font, describe-face):
21372         * lisp/files.el (find-alternate-file, hack-local-variables)
21373         (hack-one-local-variable--obsolete, write-file)
21374         (basic-save-buffer, delete-directory):
21375         * lisp/format.el (format-write-file, format-find-file)
21376         (format-insert-file):
21377         * lisp/help-fns.el (help-fns--key-bindings)
21378         (help-fns--compiler-macro, help-fns--obsolete)
21379         (help-fns--interactive-only, describe-function-1)
21380         (describe-variable):
21381         * lisp/help.el (describe-mode):
21382         * lisp/info-xref.el (info-xref-output):
21383         * lisp/info.el (Info-virtual-index-find-node)
21384         (Info-virtual-index, info-apropos):
21385         * lisp/international/kkc.el (kkc-error):
21386         * lisp/international/mule-cmds.el:
21387         (select-safe-coding-system-interactively)
21388         (select-safe-coding-system, describe-input-method):
21389         * lisp/international/mule-conf.el (code-offset):
21390         * lisp/international/mule-diag.el (describe-character-set)
21391         (list-input-methods-1):
21392         * lisp/international/quail.el (quail-error):
21393         * lisp/minibuffer.el (minibuffer-message):
21394         * lisp/mpc.el (mpc--debug):
21395         * lisp/msb.el (msb--choose-menu):
21396         * lisp/net/ange-ftp.el (ange-ftp-message):
21397         * lisp/net/gnutls.el (gnutls-message-maybe):
21398         * lisp/net/newst-backend.el (newsticker--sentinel-work):
21399         * lisp/net/newst-treeview.el (newsticker--treeview-load):
21400         * lisp/net/nsm.el (nsm-query-user):
21401         * lisp/net/rlogin.el (rlogin):
21402         * lisp/net/soap-client.el (soap-warning):
21403         * lisp/net/tramp.el (tramp-debug-message):
21404         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
21405         * lisp/nxml/nxml-parse.el (nxml-parse-error):
21406         * lisp/nxml/rng-cmpct.el (rng-c-error):
21407         * lisp/nxml/rng-match.el (rng-compile-error):
21408         * lisp/nxml/rng-uri.el (rng-uri-error):
21409         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
21410         * lisp/org/org-ctags.el:
21411         (org-ctags-ask-rebuild-tags-file-then-find-tag):
21412         * lisp/proced.el (proced-log):
21413         * lisp/progmodes/ebnf2ps.el (ebnf-log):
21414         * lisp/progmodes/flymake.el (flymake-log):
21415         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
21416         * lisp/replace.el (occur-1):
21417         * lisp/simple.el (execute-extended-command)
21418         (undo-outer-limit-truncate, define-alternatives):
21419         * lisp/startup.el (command-line):
21420         * lisp/subr.el (error, user-error, add-to-list):
21421         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
21422         (tutorial--find-changed-keys):
21423         * src/callint.c (Fcall_interactively):
21424         * src/editfns.c (Fmessage, Fmessage_box):
21425         Restyle the quotes of format strings intended for use as a
21426         diagnostic, when restyling seems appropriate.
21427         * lisp/subr.el (format-message): New function.
21428         * src/doc.c (Finternal__text_restyle): New function.
21429         (syms_of_doc): Define it.
21431 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
21433         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
21435 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
21437         python.el: Fix python-shell-buffer-substring on indented code
21438         (Bug#21086)
21439         * lisp/progmodes/python.el (python-shell-buffer-substring):
21440         Respect current line indentation when calculating string.
21441         * test/automated/python-tests.el
21442         (python-shell-buffer-substring-10)
21443         (python-shell-buffer-substring-11)
21444         (python-shell-buffer-substring-12): New tests.
21446 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
21448         Fix minor glitches from ‘format’ reversion
21449         * doc/lispref/strings.texi (Formatting Strings):
21450         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
21451         Documentation’, not below.
21452         * src/syntax.c (Finternal_describe_syntax_value):
21453         Prefer AUTO_STRING to build_string where either will do, as
21454         AUTO_STRING is a bit faster.
21456 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
21458         python.el: Defer shell setup code until first interactive prompt
21459         * lisp/progmodes/python.el
21460         (python-shell-comint-watch-for-first-prompt-output-filter):
21461         New function.
21462         (inferior-python-mode): Use it.
21463         (python-shell-first-prompt-hook): New hook.
21464         (python-shell-send-setup-code)
21465         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
21466         this hook instead of inferior-python-hook.
21468 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
21470         Remove the calls to `seq-into` from `seq-concatenate`
21471         Since most new types of seq would have to be defined as sequences (cons
21472         cells or CL structs, mostly), there is no need to convert the seqs to
21473         sequences (which can be a fairly expensive operation).
21474         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
21475         sequences.
21477 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
21479         python.el: Fix completion for pdb interactions
21480         * lisp/progmodes/python.el (python-shell-completion-setup-code):
21481         Simplify.  Toggle print_mode for native wrapped completer.
21482         (python-shell-completion-native-setup): Ensure process buffer.
21483         Add print_mode attribute to completer wrapper to toggle returning
21484         or printing candidates.
21485         (python-shell-completion-native-get-completions): Cleanup.
21486         (python-shell-completion-get-completions): Cleanup.
21487         (python-shell-completion-at-point): Perform prompt checks.
21488         Force fallback completion in pdb interactions.
21490 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
21492         Make seq.el more extensible by using cl-defmethod
21493         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
21494         make it easier to extend seq.el with new "seq types".
21495         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
21496         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
21497         subseq in cl-extra.el, and use it in seq.el.
21499 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
21501         python.el: Fix prompt detection with user overridden interpreter
21502         * lisp/progmodes/python.el (python-shell-prompt-detect):
21503         Honor buffer local python-shell-interpreter and
21504         python-shell-interpreter-interactive-arg.
21506 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
21508         Support exec-directory with non-ASCII characters on Windows
21509         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
21510         in the system's ANSI codepage, when it is used for invoking
21511         cmdproxy.
21513 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
21515         Revert "Extend ‘format’ to translate curved quotes"
21516         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
21518         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
21519         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
21521 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
21523         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
21524         Clarify "invisible window".
21526 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
21528         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
21529         magic-fallback-mode-alist.
21531 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
21533         python.el: fallback completion, ffap and eldoc setup enhancements
21534         Setup codes are now sent continuously so that the current frame is
21535         always taken into account.  This allows working within debuggers
21536         and always keeping a fresh version of setup codes that will return
21537         proper results.
21538         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
21539         (python-shell-send-setup-code): Send code only when
21540         python-shell-setup-codes is non-nil.
21541         (python-shell-completion-string-code): Cleanup trailing newline.
21542         (python-shell-completion-get-completions): Always use
21543         python-shell-completion-setup-code.
21544         (python-ffap-setup-code): Work with any object, not only modules.
21545         (python-ffap-string-code): Cleanup trailing newline.
21546         (python-ffap-module-path): Always use python-ffap-setup-code.
21547         (python-eldoc-string-code): Cleanup trailing newline.
21548         (python-eldoc--get-doc-at-point): Always use
21549         python-eldoc-setup-code.  Return non-nil only if docstring is
21550         found.
21552         python.el: Increase native completion robustness
21553         * lisp/progmodes/python.el (python-shell-completion-native-setup):
21554         Make completer print real candidates and just return dummy ones to
21555         avoid input modification.
21556         (python-shell-completion-native-get-completions): Set
21557         comint-redirect-insert-matching-regexp to non-nil and make
21558         comint-redirect-finished-regexp match the last dummy candidate.
21559         Use python-shell-accept-process-output to wait for the full list
21560         of candidates.
21562 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
21564         Fix invocation of programs via cmdproxy.exe
21565         * src/w32proc.c (sys_spawnve): Use exec-directory, not
21566         invocation-directory, for finding cmdproxy.exe.  When Emacs is
21567         run from the source tree, look for cmdproxy.exe in the same source
21568         tree.  (Bug#21323)
21570 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
21572         Handle comments inside unquoted URIs in css-mode
21573         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
21574         (css-syntax-propertize-function): New defconst.
21575         (css--font-lock-keywords): Handle parens around unquoted URIs.
21576         (css-mode): Set `syntax-propertize-function'.
21578 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
21580         Support invocation of Hunspell with multiple dictionaries
21581         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
21582         Support lists of dictionaries of the form "DICT1,DICT2,...".
21583         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
21585         Minor formatting changes in ispell.el
21586         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
21587         (ispell-print-if-debug, ispell-aspell-find-dictionary)
21588         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
21589         (ispell-hunspell-dictionary-alist)
21590         (ispell-hunspell-fill-dictionary-entry)
21591         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
21592         (ispell-buffer-with-debug, ispell-complete-word)
21593         (ispell-current-dictionary, ispell-current-personal-dictionary)
21594         (ispell-accept-output, ispell-minor-mode)
21595         (ispell-personal-dictionary, ispell-dictionary-alist)
21596         (ispell-really-aspell, ispell-really-hunspell)
21597         (ispell-encoding8-command, ispell-aspell-supports-utf8)
21598         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
21599         Fix whitespace, inconsistent capitalization, and arguments in doc
21600         strings.
21602 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
21604         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
21605         function refused to resize a size-preserved window.
21607 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
21609         * doc/lispref/windows.texi (Selecting Windows): Improve
21610         documentation and indexing of 'window-use-time'.
21612 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
21614         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
21615         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
21616         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
21617         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
21618         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
21619         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
21620         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
21621         Fix up commenting style.
21623 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
21625         text-quoting-style in emacs-lisp diagnostics
21626         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
21627         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
21628         (ad-disable-advice, ad-remove-advice, ad-set-argument)
21629         (ad-set-arguments):
21630         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
21631         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
21632         (byte-optimize-while, byte-optimize-apply):
21633         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
21634         (byte-compile-log-file, byte-compile-format-warn)
21635         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
21636         (byte-compile-cl-warn)
21637         (byte-compile-warn-about-unresolved-functions)
21638         (byte-compile-file, byte-compile-fix-header)
21639         (byte-compile--declare-var, byte-compile-file-form-defmumble)
21640         (byte-compile-form, byte-compile-normal-call)
21641         (byte-compile-variable-ref, byte-compile-variable-set)
21642         (byte-compile-subr-wrong-args, byte-compile-setq-default)
21643         (byte-compile-negation-optimizer)
21644         (byte-compile-condition-case--old)
21645         (byte-compile-condition-case--new, byte-compile-save-excursion)
21646         (byte-compile-defvar, byte-compile-autoload)
21647         (byte-compile-lambda-form)
21648         (byte-compile-make-variable-buffer-local, display-call-tree)
21649         (batch-byte-compile):
21650         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
21651         (cconv-analyze-form):
21652         * lisp/emacs-lisp/chart.el (chart-space-usage):
21653         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
21654         (check-declare-warn, check-declare-file)
21655         (check-declare-directory):
21656         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
21657         (checkdoc-message-text-engine):
21658         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
21659         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
21660         (cl-symbol-macrolet):
21661         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
21662         * lisp/emacs-lisp/copyright.el (copyright)
21663         (copyright-update-directory):
21664         * lisp/emacs-lisp/edebug.el (edebug-read-list):
21665         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
21666         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
21667         (eieio-oref, eieio-oset-default):
21668         * lisp/emacs-lisp/eieio-speedbar.el:
21669         (eieio-speedbar-child-make-tag-lines)
21670         (eieio-speedbar-child-description):
21671         * lisp/emacs-lisp/eieio.el (defclass, change-class):
21672         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
21673         (elint-init-form, elint-check-defalias-form)
21674         (elint-check-let-form):
21675         * lisp/emacs-lisp/ert.el (ert-get-test):
21676         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
21677         (find-function-library):
21678         * lisp/emacs-lisp/generator.el (iter-yield):
21679         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
21680         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
21681         * lisp/emacs-lisp/package-x.el (package-upload-file):
21682         * lisp/emacs-lisp/package.el (package-version-join)
21683         (package-disabled-p, package-activate-1, package-activate)
21684         (package--download-one-archive)
21685         (package--download-and-read-archives)
21686         (package-compute-transaction, package-install-from-archive)
21687         (package-install, package-install-selected-packages)
21688         (package-delete, package-autoremove)
21689         (package-install-button-action, package-delete-button-action)
21690         (package-menu-hide-package, package-menu--list-to-prompt)
21691         (package-menu--perform-transaction)
21692         (package-menu--find-and-notify-upgrades):
21693         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
21694         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
21695         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
21696         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
21697         * lisp/emacs-lisp/smie.el (smie-config-save):
21698         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
21699         * lisp/emacs-lisp/testcover.el (testcover-1value):
21700         Use curved quotes in diagnostic format strings.
21702 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
21704         python.el: Ensure remote process-environment on non-interactive processes
21705         * lisp/progmodes/python.el
21706         (python-shell-tramp-refresh-process-environment): New function.
21707         (python-shell-with-environment): Use it.
21708         * test/automated/python-tests.el (python-shell-with-environment-2):
21709         Update.
21711         python.el: Enhancements to process environment setup.
21712         * lisp/progmodes/python.el (python-shell-process-environment)
21713         (python-shell-extra-pythonpaths, python-shell-exec-path)
21714         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
21715         (python-shell-setup-codes): Remove :safe.
21716         (python-shell-remote-exec-path): New defcustom.
21717         (python-shell--add-to-path-with-priority): New macro.
21718         (python-shell-calculate-pythonpath): Give priority to
21719         python-shell-extra-pythonpaths.  Update docstring.
21720         (python-shell-calculate-process-environment): Give priority to
21721         python-shell-process-environment.  Update docstring.
21722         (python-shell-calculate-exec-path): Give priority to
21723         python-shell-exec-path and calculated virtualenv bin directory.
21724         Update docstring.
21725         (python-shell-tramp-refresh-remote-path): New function.
21726         (python-shell-with-environment): Use it when working remotely and
21727         do not modify tramp-remote-path.  Allow nesting.
21728         (python-shell-calculate-command): Remove useless
21729         python-shell-with-environment call.
21730         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
21731         (python-shell-calculate-pythonpath-2)
21732         (python-shell-calculate-process-environment-6)
21733         (python-shell-calculate-process-environment-7)
21734         (python-shell-calculate-process-environment-8)
21735         (python-shell-calculate-exec-path-3)
21736         (python-shell-calculate-exec-path-4)
21737         (python-shell-calculate-exec-path-5)
21738         (python-shell-calculate-exec-path-6)
21739         (python-shell-with-environment-3): New tests.
21740         (python-shell-calculate-process-environment-2)
21741         (python-shell-calculate-process-environment-3)
21742         (python-shell-calculate-process-environment-4)
21743         (python-shell-calculate-process-environment-5)
21744         (python-shell-calculate-exec-path-1)
21745         (python-shell-calculate-exec-path-2)
21746         (python-shell-with-environment-1)
21747         (python-shell-with-environment-2): Update and simplify.
21749 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
21751         Avoid hard-coding "M-x command" in docstrings
21752         * lisp/calendar/todo-mode.el (todo-mode):
21753         * lisp/desktop.el (desktop-save-mode):
21754         * lisp/edmacro.el (edit-kbd-macro):
21755         * lisp/emacs-lisp/package.el (package-menu-execute):
21756         * lisp/emulation/viper-cmd.el (viper-ask-level):
21757         * lisp/emulation/viper-init.el (viper-expert-level):
21758         * lisp/filesets.el (filesets-add-buffer):
21759         * lisp/follow.el (follow-mode):
21760         * lisp/gnus/auth-source.el (auth-sources):
21761         * lisp/international/ogonek.el (ogonek-informacja)
21762         (ogonek-information):
21763         * lisp/net/tramp.el (tramp-process-actions):
21764         * lisp/org/org-gnus.el (org-gnus-no-new-news):
21765         * lisp/org/org.el (org-ellipsis):
21766         * lisp/progmodes/python.el (python-shell-get-process-or-error):
21767         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
21768         * lisp/server.el (server-start):
21769         * lisp/type-break.el (type-break-noninteractive-query):
21770         * lisp/userlock.el (ask-user-about-supersession-help):
21771         * lisp/whitespace.el (whitespace-report-region):
21772         Prefer (substitute-command-keys "`\\[foo-command]'")
21773         to "`M-x foo-command'" in docstrings and the like.
21775 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
21777         Use add-function for prettify-symbols-compose-predicate
21778         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
21779         prettify-symbols-compose-predicate in terms of add-function.
21780         * etc/NEWS: Mention prettify-symbols-compose-predicate and
21781         prettify-symbols-mode support in tex-mode.
21783 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
21785         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
21786         (smie-indent-exps, smie-indent-keyword): Use it.
21787         * test/indent/css-mode.css: Test alignment with leading comment.
21789 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
21791         Respect text-quoting-style in (*Finder*) menus
21792         * lisp/info.el (info--prettify-description):
21793         Treat description as a docstring, so that it's requoted as
21794         per text-quoting-style.
21796 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
21798         Document `window-use-time' in Elisp manual
21799         * doc/lispref/windows.texi (Selecting Windows): Document
21800         `window-use-time'.
21802 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
21804         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
21805         This is a cleaner fix for Bug#21260 than the previous change.
21807 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
21809         Respect text-quoting-style in calc
21810         In calc, tespect text-quoting-style preference in diagnostic
21811         formats and fix a few similar problems in docstrings.
21812         * lisp/calc/calc-aent.el (math-read-factor):
21813         * lisp/calc/calc-embed.el (calc-do-embedded):
21814         * lisp/calc/calc-ext.el (calc-user-function-list)
21815         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
21816         * lisp/calc/calc-help.el (calc-describe-key)
21817         (calc-describe-thing):
21818         * lisp/calc/calc-lang.el (calc-c-language)
21819         (math-parse-fortran-vector-end, math-parse-tex-sum)
21820         (math-parse-eqn-matrix, math-parse-eqn-prime)
21821         (calc-yacas-language, calc-maxima-language, calc-giac-language)
21822         (math-read-big-rec, math-read-big-balance):
21823         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
21824         (calc-auto-recompute):
21825         * lisp/calc/calc-prog.el (calc-user-define-invocation)
21826         (math-do-arg-check):
21827         * lisp/calc/calc-store.el (calc-edit-variable):
21828         * lisp/calc/calc-units.el (math-build-units-table-buffer):
21829         * lisp/calc/calc-vec.el (math-read-brackets):
21830         * lisp/calc/calc-yank.el (calc-edit-mode):
21831         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
21832         Use curved quotes in diagnostic format strings.
21833         * lisp/calc/calc-help.el (calc-describe-thing):
21834         Format docstrings with substitute-command-keys.
21835         * lisp/calc/calc-help.el (calc-j-prefix-help):
21836         * lisp/calc/calc-misc.el (calc-help):
21837         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
21838         Escape a docstring "`".
21840 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
21842         Fix documentation of 'menu-set-font' and 'set-frame-font'
21843         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
21844         * doc/lispref/frames.texi (Frame Font): Document that
21845         set-frame-font with the last argument 't' will also make the font
21846         the default for the future GUI frames.
21848         Document '--create-frame' option to emacsclient
21849         * doc/emacs/misc.texi (emacsclient Options): Document the
21850         '--create-frame' option.  (Bug#21308)
21852 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
21854         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
21856 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
21858         Document 'get-mru-window' in the ELisp manual
21859         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
21860         'get-mru-window'.  (Bug#21306)
21862         Clarify documentation of 'get-buffer-window-list'
21863         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
21864         current window, if relevant, will be the first in the list
21865         returned by 'get-buffer-window-list'.
21866         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
21868 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
21870         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
21871         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
21872         `switch-to-buffer'.
21874 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
21876         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
21877         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
21878         `display-buffer' instead of `switch-to-buffer'.
21880 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
21882         Follow user preference in calendar diagnostics
21883         Respect text-quoting-style preference in diagnostic formats by
21884         using curved quotes (which are translated as per text-quoting-style)
21885         instead of grave accent and apostrophe (which are not).
21886         * lisp/calendar/appt.el (appt-display-message):
21887         * lisp/calendar/diary-lib.el (diary-check-diary-file)
21888         (diary-mail-entries, diary-from-outlook):
21889         * lisp/calendar/icalendar.el (icalendar-export-region)
21890         (icalendar--convert-float-to-ical)
21891         (icalendar--convert-date-to-ical)
21892         (icalendar--convert-ical-to-diary)
21893         (icalendar--convert-recurring-to-diary)
21894         (icalendar--add-diary-entry):
21895         * lisp/calendar/time-date.el (format-seconds):
21896         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
21897         (timeclock-make-hours-explicit):
21898         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
21899         (todo-item-mark, todo-check-format)
21900         (todo-insert-item--next-param, todo-edit-item--next-key)
21901         (todo-mode):
21902         Use curved quotes in diagnostic format strings.
21903         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
21904         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
21905         Just use straight quoting for simple test case.
21907 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
21909         * src/gfilenotify.c (Fgfile_add_watch):
21910         Handle errors from g_file_monitor.
21912 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
21914         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
21915         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
21916         frame" instead of "non-minibuffer frame".
21918         Fix frame geometry related text
21919         * doc/lispref/frames.texi (Frame Layout):
21920         Rename `x-frame-geometry' to `frame-geometry'.
21921         * doc/lispref/frames.texi (Mouse Position):
21922         * doc/lispref/windows.texi (Coordinates and Windows):
21923         Use `set-mouse-absolute-pixel-position' instead of
21924         `x-set-mouse-absolute-pixel-position'.
21926         Sanitize frame geometry related functions
21927         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
21928         (Fx_frame_edges): Rename to Fns_frame_edges.
21929         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
21930         (Fx_frame_edges): Rename to Fw32_frame_edges.
21931         (Fx_mouse_absolute_pixel_position): Rename to
21932         Fw32_mouse_absolute_pixel_position.
21933         (Fx_set_mouse_absolute_pixel_position): Rename to
21934         Fw32_set_mouse_absolute_pixel_position.
21935         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
21936         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
21937         (ns-frame-edges, w32-mouse-absolute-pixel-position)
21938         (x-mouse-absolute-pixel-position)
21939         (w32-set-mouse-absolute-pixel-position)
21940         (x-set-mouse-absolute-pixel-position): Declare.
21941         (frame-geometry, mouse-absolute-pixel-position)
21942         (set-mouse-absolute-pixel-position): New functions.
21943         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
21945 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
21947         Fix MinGW64 build broken by latest w32uniscribe.c changes
21948         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
21949         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
21950         (Bug#21260)
21952 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
21954         Add TeX defaults for prettify-symbol-mode
21955         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
21956         Rename from tex-prettify-symbols-alist.
21957         (tex--prettify-symbols-compose-p): New function.
21958         (tex-common-initialization): Use them as prettify-symbols-alist
21959         and prettify-symbols-compose-predicate.
21961         Generalize prettify-symbols to arbitrary modes
21962         * lisp/progmodes/prog-mode.el
21963         (prettify-symbols-default-compose-p): New function.
21964         (prettify-symbols-compose-predicate): New variable.
21965         (prettify-symbols--compose-symbol): Use it.
21967 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
21969         Don't quote symbols 'like-this' in docstrings etc.
21970         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
21971         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
21972         * lisp/allout.el (allout-add-resumptions, allout-mode):
21973         * lisp/calculator.el (calculator-operators):
21974         * lisp/cedet/data-debug.el (dd-propertize):
21975         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
21976         * lisp/cedet/semantic/analyze/debug.el:
21977         (semantic-analyzer-debug-global-miss-text):
21978         * lisp/cedet/semantic/lex-spp.el:
21979         (semantic-lex-spp-replace-or-symbol-or-keyword):
21980         * lisp/cedet/semantic/symref.el:
21981         (semantic-symref-cleanup-recent-buffers-fcn):
21982         * lisp/cedet/semantic/tag.el (semantic-tag-class):
21983         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
21984         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
21985         * lisp/gnus/pop3.el (pop3-authentication-scheme):
21986         * lisp/help-fns.el (describe-function-orig-buffer):
21987         * lisp/imenu.el (imenu--history-list):
21988         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
21989         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
21990         (feedmail-queue-default-file-slug)
21991         (feedmail-queue-buffer-file-name):
21992         * lisp/net/mairix.el (mairix-searches-mode-map):
21993         * lisp/net/newst-backend.el (newsticker-retrieval-method)
21994         (newsticker-auto-mark-filter-list):
21995         * lisp/obsolete/vi.el (vi-mode):
21996         * lisp/progmodes/cc-engine.el (c-literal-type):
21997         * lisp/progmodes/cpp.el (cpp-face):
21998         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
21999         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
22000         * lisp/progmodes/pascal.el (pascal-auto-lineup):
22001         * lisp/progmodes/prog-mode.el (prog-widen):
22002         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
22003         (verilog-auto-lineup, verilog-auto-reset-widths)
22004         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
22005         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
22006         (flyspell-maybe-correct-doubling):
22007         * lisp/textmodes/table.el (table-justify, table-justify-cell)
22008         (table-justify-row, table-justify-column, table-insert-sequence)
22009         (table--justify-cell-contents):
22010         * lisp/url/url-auth.el (url-get-authentication):
22011         * lisp/window.el (display-buffer-record-window):
22012         * lisp/xml.el (xml-parse-file, xml-parse-region):
22013         * src/gfilenotify.c (Fgfile_add_watch):
22014         Don't quote symbols with apostrophes in doc strings.
22015         Use asymmetric quotes instead.
22016         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
22017         Likewise for symbol in diagnostic.
22018         * lisp/image.el (image-extension-data):
22019         * lisp/register.el (frame-configuration-to-register):
22020         * src/buffer.c (syms_of_buffer):
22021         Remove bogus apostrophes after symbols.
22022         * lisp/thumbs.el (thumbs-conversion-program):
22023         Quote Lisp string values using double-quotes, not apostrophes.
22025 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
22027         Describe frame geometry and related functions in Elisp manual
22028         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
22029         (Showing Images): Update references.
22030         * doc/lispref/elisp.texi (Top): Update node listing.
22031         * doc/lispref/frames.texi (Frame Geometry): New node.
22032         Move `Size and Position' section here.
22033         (Size Parameters): Update references.
22034         (Mouse Position): Update references and nomenclature.
22035         Describe new functions `x-mouse-absolute-pixel-position' and
22036         `x-set-mouse-absolute-pixel-position'.
22037         * doc/lispref/windows.texi (Window Sizes): Update references.
22038         (Resizing Windows): Update references.  Move description of
22039         `fit-frame-to-buffer' here.
22040         (Coordinates and Windows): Update nomenclature and references.
22041         Describe new arguments of `window-edges'.  Comment out
22042         descriptions of `window-left-column', `window-top-line',
22043         `window-pixel-left' and `window-pixel-top'.  Describe
22044         `window-absolute-pixel-position'.
22046 2015-08-20  Alan Mackenzie  <acm@muc.de>
22048         Handling of `c-parse-state'.  Fix low level bug.
22049         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
22050         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
22052 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
22054         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
22055         window instead of deleting it.
22057 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
22059         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
22060         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
22061         determine whether frame has a titlebar.
22062         Suggested by Eli Zaretskii <eliz@gnu.org>
22064 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
22066         Add a prettify-symbols-alist for (La)TeX
22067         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
22068         New variable holding an alist suitable as prettify-symbols-alist in
22069         (La)TeX modes.
22071 2015-08-19  Alan Mackenzie  <acm@muc.de>
22073         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
22074         Fixes debbugs#21275.
22075         In Emacs >= 25, let electric-pair-mode take precedence over
22076         delete-selection-mode.
22077         * lisp/delsel.el (delete-selection-uses-region-p): New function,
22078         previously a lambda expression in a property value for
22079         `self-insert-command'.
22080         (top-level): Set the `delete-selection' property of
22081         `self-insert-command' to `delete-selection-uses-region-p'.
22082         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
22083         property for c-electric-\(brace\|paren\) the value
22084         `delete-selection-uses-region-p' when the latter function exists.
22086 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
22088         Fix key binding quoting in tutorial *Help*
22089         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
22090         When generating help for custom key bindings, use the user-preferred
22091         quoting style rather than hardcoding the grave style.
22093 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
22095         Improve and future-proof OTF fonts support in w32uniscribe.c
22096         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
22097         about the expected results and why the new Uniscribe APIs are not
22098         used in this function.
22099         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
22100         (ScriptGetFontFeatureTags_Proc): New function typedefs.
22101         (uniscribe_new_apis): New static variable.
22102         (uniscribe_check_features): New function, implements OTF features
22103         verification while correctly accounting for features in the list
22104         after the nil member, if any.
22105         (uniscribe_check_otf_1): New function, retrieves the features
22106         supported by the font for the requested script and language using
22107         the Uniscribe APIs available from Windows Vista onwards.
22108         (uniscribe_check_otf): If the new Uniscribe APIs are available,
22109         use them in preference to reading the font data directly.  Call
22110         uniscribe_check_features to verify that the requested features are
22111         supported, replacing the original incomplete code.
22112         (syms_of_w32uniscribe): Initialize function pointers for the new
22113         Uniscribe APIs.  (Bug#21260)
22114         (otf_features): Scan the script, langsys, and feature arrays back
22115         to front, so that the result we return has them in alphabetical
22116         order, like ftfont.c does.
22117         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
22118         New variable for debugging w32uniscribe.c code.
22120 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
22122         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
22123         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
22124         clause of `isearch-search-fun-default'.  That lax variable does not
22125         refer to lax-whitespacing.  Related to (bug#21777).
22126         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
22127         * lisp/character-fold.el (character-fold-search): Set to nil.
22128         Default to nil for now, until someone implements proper
22129         lax-whitespacing with char-fold searching.
22131 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
22133         Fix doc-string of `help-mode-finish'.
22134         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
22136         In nsimage.m include coding.h (Bug#21292)
22137         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
22139         Move window edge functions to Elisp.
22140         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
22141         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
22142         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
22143         Move to window.el.
22144         (calc_absolute_offset): Remove.
22145         * lisp/frame.el (frame-edges): New function.
22146         * lisp/window.el (window-edges, window-pixel-edges)
22147         (window-absolute-pixel-edges): Move here from window.c.
22148         (window-body-edges, window-body-pixel-edges)
22149         (window-absolute-body-pixel-edges): Move here from window.c and
22150         rename "inside" to "body".  Keep old names as aliases.
22151         (window-absolute-pixel-position): New function.
22153 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
22155         [Gnus]: Use overlay functions directly
22156         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
22157         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
22158         (gnus-article-highlight-signature, gnus-article-extend-url-button)
22159         (gnus-article-add-button, gnus-insert-prev-page-button)
22160         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
22161         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
22162         (gnus-cite-add-face):
22163         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
22164         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
22165         (gnus-tree-recenter, gnus-highlight-selected-tree):
22166         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
22167         (gnus-summary-show-thread, gnus-summary-hide-thread)
22168         (gnus-highlight-selected-summary):
22169         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
22170         * lisp/gnus/message.el (message-fix-before-sending)
22171         (message-toggle-image-thumbnails):
22172         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
22173         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
22174         Use overlay functions directly instead of using gnus-overlay-*,
22175         message-overlay-*, and sieve-overlay-*.
22176         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
22177         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
22178         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
22179         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
22180         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
22181         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
22182         (message-overlay-get, message-overlay-put, message-overlays-in):
22183         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
22184         (sieve-overlays-at): Remove.
22186 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
22188         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
22189         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
22190         builds can use the declaration from the system headers.
22191         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
22192         definition of TITLEBAR_INFO.
22193         Suggested by Eli Zaretskii  <eliz@gnu.org>
22195 2015-08-19  Glenn Morris  <rgm@gnu.org>
22197         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
22199 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
22201         Use new q ‘format’ flag when fixing quotes in C
22202         * src/image.c (image_size_error): New function.  All uses of
22203         image_error with "Invalid image size ..."  changed to use it.
22204         * src/image.c (image_size_error, xbm_load_image, xbm_load)
22205         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
22206         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
22207         (imagemagick_load, svg_load, svg_load_image, gs_load)
22208         (x_kill_gs_process):
22209         * src/lread.c (load_warn_old_style_backquotes):
22210         * src/xfaces.c (load_pixmap):
22211         * src/xselect.c (x_clipboard_manager_error_1):
22212         Use %qs, not uLSQM and uRSQM.
22213         * src/syntax.c (Finternal_describe_syntax_value):
22214         Prefer Fsubstitute_command_keys to Fformat, as this lets
22215         us use AUTO_STRING.
22216         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
22217         as it's now guaranteed to be ASCII.
22218         * src/xselect.c (x_clipboard_manager_error_2):
22219         Avoid grave accent in low-level stderr diagnostic.
22221 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
22223         New q flag for ‘format’
22224         * doc/lispref/processes.texi (Sentinels):
22225         Don't hardwire grave quoting style in example.
22226         * doc/lispref/strings.texi (Formatting Strings):
22227         * etc/NEWS:
22228         Document new q flag.
22229         * src/editfns.c (Fformat): Implement it.
22231 2015-08-18  Daiki Ueno  <ueno@gnu.org>
22233         pinentry.el: Add debugging support
22234         * lisp/net/pinentry.el (pinentry-debug): New variable.
22235         (pinentry-debug-buffer): New variable.
22236         (pinentry--process-filter): Send input to the debug buffer, if
22237         `pinentry-debug' is set.
22239         pinentry.el: Improve multiline prompt
22240         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
22241         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
22242         command.
22244 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
22246         Fix multibyte confusion in diagnostics
22247         * src/print.c (print_error_message):
22248         Don't assume that the caller's name is unibyte.
22249         * src/xdisp.c (vadd_to_log):
22250         Don't assume that the formatted diagnostic is unibyte.
22252         Fix file name encodings in diagnostics
22253         Also, close some minor races when opening image files, by opening
22254         them once instead of multiple times.
22255         * src/gtkutil.c (xg_get_image_for_pixmap):
22256         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
22257         (svg_load):
22258         * src/nsimage.m (allocInitFromFile:):
22259         * src/xfns.c (xg_set_icon):
22260         Encode file name, since x_find_image_file no longer does that.
22261         * src/image.c (x_find_image_fd): New function.
22262         (x_find_image_file): Use it.  Do not encode resulting file name,
22263         since callers sometimes need it decoded.
22264         (slurp_file): File arg is now a fd, not a file name.
22265         All callers changed.  This saves us having to open the file twice.
22266         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
22267         (svg_load):
22268         Use x_find_image_fd and fdopen to save a file-open.
22269         Report file name that failed.
22270         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
22272 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
22274         Allow blink-matching-paren to jump off screen
22275         * doc/emacs/programs.texi (Matching): Mention the
22276         `blink-matching-paren' value `jump-offscreen'.
22277         * lisp/simple.el (blink-matching-paren): New possible value.
22278         (blink-matching-paren-on-screen): Clarify the docstring.
22279         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
22281         Refine the previous change
22282         * lisp/simple.el (blink-matching-open): Use minibuffer-message
22283         outside of save-excursion (bug#21286).
22285 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
22287         Rewrite and add frame geometry related functions.
22288         * src/frame.c (Fframe_position): New function.
22289         (Fset_frame_position): Rename parameters and rewrite doc-string.
22290         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
22291         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
22292         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
22293         Qtitle_bar_size.
22294         * src/nsfns.m (frame_geometry): New function.
22295         (Fx_frame_geometry): Call frame_geometry.
22296         (Fx_frame_edges): New function.
22297         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
22298         (GetTitleBarInfo_Proc): Define these so we can use the
22299         GetTitleBarInfo API.
22300         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
22301         (Fx_frame_geometry): Rewrite.
22302         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
22303         (Fx_set_mouse_absolute_pixel_position): New functions.
22304         * src/xfns.c (frame_geometry): New function.
22305         (Fx_frame_geometry): Call frame_geometry.
22306         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
22307         (Fx_set_mouse_absolute_pixel_position): New functions.
22309 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
22311         Improve Tramp's compatibility
22312         * lisp/net/tramp.el (tramp-get-method-parameter):
22313         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
22314         (tramp-adb-get-device):
22315         * lisp/net/trampver.el (tramp-repository-get-version):
22316         Use `tramp-compat-replace-regexp-in-string'.
22318 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
22320         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
22321         Encode/decode string.
22323 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
22325         Clarify what happens to match data on failure
22326         Problem reported by Ernesto Alfonso (Bug#21279).
22327         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
22328         Document more carefully what happens to match data after a failed
22329         search.
22330         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
22331         the return value is undefined if the last search failed.
22332         (Fmatch_data): Simplify doc string line 1.
22334 2015-08-18  Daiki Ueno  <ueno@gnu.org>
22336         Revert "pinentry.el: Support external passphrase cache"
22337         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
22338         pinentry.el shouldn't directly interact with the secrets service,
22339         but ask the caller to cache the passphrase.
22341 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
22343         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
22344         Message mode hooks.
22346 2015-08-17  Daiki Ueno  <ueno@gnu.org>
22348         epg.el: Make gpgconf output parsing future proof
22349         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
22350         --list-options" output.
22352         pinentry.el: Support external passphrase cache
22353         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
22354         (pinentry--allow-external-password-cache): New local variable.
22355         (pinentry--key-info): New local variable.
22356         (secrets-enabled, secrets-search-items, secrets-get-secret):
22357         Declare.
22358         (pinentry--send-passphrase): New function, split from
22359         `pinentry--process-filter'.
22360         (pinentry--process-filter): Use secrets.el to retrieve passphrase
22361         from login keyring.
22363         pinentry.el: Popup window for multiline prompt
22364         * lisp/net/pinentry.el (pinentry): New custom group.
22365         (pinentry-popup-prompt-window): New user option.
22366         (pinentry-prompt-window-height): New user option.
22367         (pinentry--prompt-buffer): New variable.
22368         (pinentry-prompt-mode-map): New variable.
22369         (pinentry-prompt-mode): New function.
22370         (pinentry--prompt): New function.
22371         (pinentry--process-filter): Use `pinentry--prompt' instead of
22372         `read-passwd' and `y-or-n-p'.
22374 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
22376         message.el: Silent the byte compiler
22377         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
22378         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
22379         (message-delete-overlay, message-window-inside-pixel-edges):
22380         Declare before using.
22382         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
22383         (message-window-inside-pixel-edges): XEmacs compatible functions.
22385 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
22387         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
22389 2015-08-17  Noah Friedman  <friedman@splode.com>
22391         * lisp/simple.el (blink-matching-open): Restore point before
22392         calling minibuffer-message.
22394 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
22396         * lisp/play/dunnet.el: Update version number in header (now
22397         matches help).
22399 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
22401         Curved quotes in --batch diagnostics in non-UTF-8
22402         When run with --batch, check that curved quotes are compatible with
22403         the system locale before outputting them in diagnostics.
22404         Problem reported by Eli Zaretskii in:
22405         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
22406         * lisp/startup.el (command-line): Set internal--text-quoting-flag
22407         after the standard display table is initialized.
22408         * src/doc.c (default_to_grave_quoting_style): New function.
22409         (text_quoting_style): Use it.
22410         (text_quoting_flag): New static var, visible to Lisp as
22411         internal--text-quoting-flag.
22412         * src/emacs.c: Include <wchar.h> if available.
22413         (using_utf8): New function.
22414         (main): Use it to initialize text_quoting_flag.
22415         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
22416         Don't define, as it's not needed and it clashes with wchar.h.
22418 2015-08-17  Glenn Morris  <rgm@gnu.org>
22420         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
22421         from makeinfo about spurious "Note:" cross-reference, and for grammar.
22423 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
22425         Minor change in variable initialization on MS-Windows
22426         * src/w32fns.c <after_dead_key>: Initialize to -1.
22427         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
22428         non-zero.
22430         Fix a bug with LWindow key remapping on MS-Windows
22431         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
22433 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
22435         Improve fontset support for latest OTF script tags
22436         * lisp/international/fontset.el (otf-script-alist): Add some
22437         missing script tags.
22438         (setup-default-fontset): Include settings for v2 versions of the
22439         script tags used by some modern OTF/TTF fonts.
22441 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
22443         Spelling fixes
22445 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
22447         Use curved quotes in core elisp diagnostics
22448         In the core elisp files, use curved quotes in diagnostic formats,
22449         so that they follow user preference as per ‘text-quoting-style’
22450         rather than being hard-coded to quote `like this'.
22451         * lisp/abbrev.el (expand-region-abbrevs):
22452         * lisp/button.el (button-category-symbol, button-put)
22453         (make-text-button):
22454         * lisp/cus-start.el:
22455         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
22456         (custom--sort-vars-1, load-theme):
22457         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
22458         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
22459         (cl-generic-generalizers):
22460         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
22461         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
22462         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
22463         (advice--make, define-advice):
22464         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
22465         * lisp/emacs-lisp/timer.el (timer-event-handler):
22466         * lisp/env.el (setenv):
22467         * lisp/facemenu.el (facemenu-add-new-face)
22468         (facemenu-add-new-color):
22469         * lisp/faces.el (face-documentation, read-face-name)
22470         (face-read-string, read-face-font, face-spec-set-match-display)
22471         (read-color, x-resolve-font-name):
22472         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
22473         (set-auto-mode, hack-local-variables)
22474         (hack-one-local-variable--obsolete)
22475         (dir-locals-set-directory-class, write-file)
22476         (basic-save-buffer, delete-directory, copy-directory)
22477         (recover-session, recover-session-finish, insert-directory)
22478         (file-modes-char-to-who, file-modes-symbolic-to-number)
22479         (move-file-to-trash):
22480         * lisp/font-lock.el (font-lock-fontify-buffer):
22481         * lisp/format.el (format-write-file, format-find-file)
22482         (format-insert-file):
22483         * lisp/frame.el (get-device-terminal, select-frame-by-name):
22484         * lisp/fringe.el (fringe--check-style):
22485         * lisp/help.el (describe-minor-mode-from-indicator):
22486         * lisp/image.el (image-type):
22487         * lisp/international/fontset.el (x-must-resolve-font-name):
22488         * lisp/international/mule-cmds.el (prefer-coding-system)
22489         (select-safe-coding-system-interactively)
22490         (select-safe-coding-system, activate-input-method)
22491         (toggle-input-method, describe-current-input-method):
22492         * lisp/international/mule-conf.el (code-offset):
22493         * lisp/mouse.el (minor-mode-menu-from-indicator):
22494         * lisp/replace.el (query-replace-read-from)
22495         (occur-after-change-function, occur-1):
22496         * lisp/scroll-bar.el (scroll-bar-columns):
22497         * lisp/simple.el (execute-extended-command)
22498         (undo-outer-limit-truncate, compose-mail, set-variable)
22499         (choose-completion-string, define-alternatives):
22500         * lisp/startup.el (site-run-file, tty-handle-args)
22501         (command-line, command-line-1):
22502         * lisp/subr.el (noreturn, define-error, add-to-list)
22503         (read-char-choice):
22504         * lisp/term/common-win.el (x-handle-xrm-switch)
22505         (x-handle-name-switch, x-handle-args):
22506         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
22507         Use curved quotes in diagnostics.
22508         * lisp/international/mule.el (find-auto-coding):
22509         Use " to quote in a diagnostic, to be consistent with the rest of
22510         this file.
22512         Convert lisp/term/x-win.el to UTF-8
22513         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
22514         runtime behavior, and the file is multilingual so compile-time
22515         appearance shouldn't be an issue.
22516         * admin/notes/unicode: Document this.
22518 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
22520         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
22521         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
22522         issues and comments, bug#943.
22523         (verilog-type-font-keywords): Cycle delay operators like ##1 and
22524         ##[0:$] are now highlighted in their entirety similarly to the #
22525         delay-control operator.  Likewise, the followed-by operators #-#
22526         and #=# are no longer partially highlighed.
22527         (verilog-backward-syntactic-ws-quick)
22528         (verilog-skip-backward-comments): Minor performance improvements
22529         to buffer traversal functions for reduced latency.
22530         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
22531         keyword 'final' follows 'assert/assume/cover', then it is part of
22532         a deferred immediate assertion item and should not be treated as a
22533         final construct for indentation.  Reported by Yuri Sugihara.
22534         (verilog-do-indent): Virtual task/function/class definition lines
22535         should not be considered as declarations.  Reported by Enzo Chi.
22536         (verilog-do-indent): Do not falsely indent to '=' of
22537         property/sequence operators on subsequent lines of a multi-line
22538         statement.
22539         (verilog-assignment-operator-re): Fix '!==' operator and add
22540         support for '<->', ':/', '#-#', and '#=#' operators.
22541         (verilog-calculate-indent, verilog-label-be): Enable
22542         case-sensitive regular expression parsing when looking for
22543         keywords.
22544         (verilog-calc-1): Detect 'pure virtual method' declarations which
22545         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
22546         (verilog-backward-ws&directives): When moving back to the start of
22547         a line and the preceeding line ended with an escaped-newline, then
22548         jump up one line.  This properly consumes a multi-line
22549         pre-processor directive.  Reported by Kaushal Modi.
22550         (verilog-dpi-import-export-re, verilog-extended-complete-re)
22551         (verilog-calc-1): Teach verilog-mode to properly indent after a
22552         DPI import/export statement that resides outside of a module.
22553         Reported by Kaushal Modi.
22554         (verilog-extended-complete-re): Update regexp to match both
22555         "DPI-C" and "DPI".  Reported by Kaushal Modi.
22557 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
22559         substitute-command-keys a few more doc strings
22560         * lisp/allout.el (outlineify-sticky):
22561         * lisp/files.el (hack-one-local-variable--obsolete):
22562         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
22563         Use substitute-command-keys on some doc strings so that
22564         they don't use hard-coded key bindings or quoting styles.
22566         Fix quoting in Fformat calls
22567         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
22568         (xpm_load, xpm_load_image, pbm_load, png_load_body)
22569         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
22570         (imagemagick_load, svg_load, svg_load_image, gs_load)
22571         (x_kill_gs_process):
22572         * src/lread.c (load_warn_old_style_backquotes):
22573         * src/xfaces.c (load_pixmap):
22574         * src/xselect.c (x_clipboard_manager_error_1):
22575         Quote diagnostics according to user preference when calling
22576         Fformat or its derivatives.
22578 2015-08-15  Glenn Morris  <rgm@gnu.org>
22580         * admin/admin.el (set-version, set-copyright): Remove deleted files.
22582 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
22584         Allow describe-function helpers to access buffer-local values
22585         This will be used by cedet/mode-local.el `describe-mode-local-override'
22586         on `help-fns-describe-function-functions' in upstream CEDET.
22587         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
22588         `describe-function'.
22589         (describe-function): Bind it, save it on the help xref stack.
22591         Handle pulse-background being nil
22592         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
22593         pulse-background, handle it being nil.
22595 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
22597         Fix "\`" confusion in Lisp strings
22598         * admin/authors.el (authors-canonical-author-name):
22599         Fix typo by using "\\`" not "\`" in string RE.
22600         * lisp/obsolete/complete.el (PC-complete-as-file-name):
22601         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
22602         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
22603         Use plain "`", not the equivalent-but-confusing "\`", in strings.
22604         * lisp/textmodes/texinfmt.el: Fix comment likewise.
22606 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
22608         * nt/zipdist.bat: Remove -- no longer used.
22610 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
22612         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
22613         rather than "getenforce".
22614         (tramp-sh-handle-set-file-selinux-context): Do not
22615         cache SELinux context if not all context components are given.
22617 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
22619         Add doc strings to 2 help-mode.el functions
22620         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
22621         strings.  (Bug#21263)
22623         Remove files used by the old MS-Windows specific build procedure
22624         * admin/unidata/makefile.w32-in:
22625         * doc/emacs/makefile.w32-in:
22626         * doc/lispintro/makefile.w32-in:
22627         * doc/lispref/makefile.w32-in:
22628         * doc/misc/makefile.w32-in:
22629         * leim/makefile.w32-in:
22630         * lib-src/makefile.w32-in:
22631         * lib/makefile.w32-in:
22632         * lisp/makefile.w32-in:
22633         * nt/INSTALL.OLD:
22634         * nt/config.nt:
22635         * nt/emacs-src.tags:
22636         * nt/envadd.bat:
22637         * nt/gmake.defs:
22638         * nt/makefile.w32-in:
22639         * nt/multi-install-info.bat:
22640         * nt/nmake.defs:
22641         * nt/paths.h:
22642         * src/makefile.w32-in: Files deleted.
22643         * nt/configure.bat: Remove everything except the blurb about the
22644         new build procedure.
22645         * make-dist: Remove references to makefile.w32-in in various
22646         directories, and to files in nt/ that were deleted.
22647         * etc/NEWS: Mention the fact that the files were dropped.
22649 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
22651         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
22652         (Bug#21248)
22654 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
22656         Default to inotify instead of gfile
22657         * configure.ac (with_file_notification): Fix typo that
22658         prevented suppression of file notification if HAVE_NS.
22659         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
22660         with_file_notification is 'yes' (Bug#21241).
22661         * etc/NEWS: Mention this.
22663         Fix broken URLs for ISO-IR
22664         * doc/emacs/mule.texi (Charsets):
22665         * lisp/international/mule-conf.el:
22666         Fix broken URL (Bug#21248).
22668         Low-level diagnostics now use ‘text-quoting-style’
22669         * src/doprnt.c (doprnt):
22670         Format ` and ' as per ‘text-quoting-style’.
22671         * src/xdisp.c (vmessage, message): Mention that the format should
22672         not contain ` or '.
22674         Prefer ‘format’ to ‘substitute-command-keys’
22675         * src/character.h (uLSQM, uRSQM): Move here ...
22676         * src/doc.c (uLSQM, uRSQM): ... from here.
22677         * src/doc.c (Fsubstitute_command_keys):
22678         * src/syntax.c (Finternal_describe_syntax_value):
22679         * lisp/cedet/mode-local.el (mode-local-print-binding)
22680         (mode-local-describe-bindings-2):
22681         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
22682         * lisp/cus-theme.el (describe-theme-1):
22683         * lisp/descr-text.el (describe-text-properties-1, describe-char):
22684         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
22685         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
22686         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
22687         * lisp/emacs-lisp/package.el (describe-package-1):
22688         * lisp/faces.el (describe-face):
22689         * lisp/help-fns.el (help-fns--key-bindings)
22690         (help-fns--compiler-macro, help-fns--parent-mode)
22691         (help-fns--obsolete, help-fns--interactive-only)
22692         (describe-function-1, describe-variable):
22693         * lisp/help.el (describe-mode):
22694         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
22695         to implement quoting style.  This generally makes the code simpler.
22697         Extend ‘format’ to translate curved quotes
22698         This is a followup to the recent doc string change, and deals with
22699         diagnostics and the like.  This patch is more conservative than
22700         the doc string change, in that the behavior of ‘format’ changes
22701         only if its first arg contains curved quotes and the user prefers
22702         straight or grave quotes.  (Come to think of it, perhaps we should
22703         be similarly conservative with doc strings too, but that can wait.)
22704         The upside of this conservatism is that existing usage is almost
22705         surely unaffected.  The downside is that we'll eventually have to
22706         change Emacs's format strings to use curved quotes in places where
22707         the user might want curved quotes, but that's a simple and
22708         mechanical translation that I'm willing to do later.  (Bug#21222)
22709         * doc/lispref/help.texi (Keys in Documentation):
22710         Move description of text-quoting-style from here ...
22711         * doc/lispref/strings.texi (Formatting Strings):
22712         ... to here, and describe new behavior of ‘format’.
22713         * etc/NEWS: Describe new behavior.
22714         * lisp/calc/calc-help.el (calc-describe-thing):
22715         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
22716         * lisp/info.el (Info-find-index-name):
22717         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
22718         of recently-added curved quotes.
22719         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
22720         Move from here ...
22721         * src/lisp.h: ... to here.
22722         * src/doc.c (text_quoting_style): New function.
22723         (Fsubstitute_command_keys): Use it.
22724         * src/editfns.c (Fformat): Implement new behavior.
22725         * src/lisp.h (enum text_quoting_style): New enum.
22727 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
22729         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
22730         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
22732 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
22734         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
22735         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
22737 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
22739         Flush file properties in Tramp
22740         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
22741         (tramp-sh-handle-set-file-times):
22742         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
22743         (tramp-adb-handle-set-file-times): Flush the file properties of
22744         the directory.
22746 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
22748         * doc/emacs/misc.texi (Amusements): Fixed typo.
22750 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
22752         Don't miss warnings about removing string text properties while dumping
22753         * src/alloc.c (purecopy): Warn about removing a string's text
22754         properties even when the same string was already pure-copied
22755         earlier.
22756         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
22757         (elisp--xref-format-extra): Fix the commentary.
22759 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
22761         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
22763 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
22765         * lisp/progmodes/compile.el: Use lexical-binding.
22766         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
22768 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
22770         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
22771         * lisp/uniquify.el: Remove redundant `:group's.
22773 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
22775         * lisp/net/tramp-adb.el
22776         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
22777         result to prevent modification of the tramp-cache by side effects.
22778         Use the correct cache key.
22780 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
22782         Make add_to_log varargs
22783         * src/alloc.c (run_finalizer_handler):
22784         * src/charset.c (load_charset_map_from_vector):
22785         * src/nsimage.m (ns_load_image):
22786         * src/xfaces.c (load_pixmap, load_color2):
22787         Simplify, now that add_to_log has a variable number of args.
22788         * src/image.c (image_error): Take a variable number of args.
22789         Callers simplified.
22790         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
22791         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
22792         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
22793         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
22795         Optional args for holiday-greek-orthodox-easter
22796         * etc/NEWS: Document this.
22797         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
22798         Add optional args N and STRING, mimicking the API and code of
22799         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
22801 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
22803         xref-find-definitions: Exclude more generic function items.
22804         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
22805         Add doc string.
22806         (cl--generic-find-defgeneric-regexp): New.
22807         (find-function-regexp-alist): Add it.
22808         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
22809         elisp-mode.el, change to search for ";;; Code:"
22810         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
22811         (find-function-regexp-alist): Add them.
22812         * lisp/progmodes/elisp-mode.el:
22813         (elisp--xref-format, elisp--xref-format-extra): Change back to
22814         defvar due to bug#21237.
22815         (elisp--xref-find-definitions): Exclude co-located default methods for
22816         generic functions.  Also exclude implicitly declared defgeneric.
22817         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
22818         mode variables defined by 'define-minor-mode'.
22819         * test/automated/elisp-mode-tests.el: Declare generic functions, add
22820         tests for them.
22821         (xref-elisp-test-run): Fix bug.
22822         (emacs-test-dir): Improve initial value.
22823         (find-defs-defun-defvar-el): Don't expect defvar.
22824         (find-defs-feature-el): Match change to find-feature-regexp.
22826 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
22828         Improve warning about purecopy of strings with properties
22829         * src/alloc.c (purecopy): Show the offending string with the
22830         warning about removing its text properties.
22832 2015-08-12  Alan Mackenzie  <acm@muc.de>
22834         Introduce new macros to cover Emacs's new names in cl-lib.el
22835         This also eliminates `mapcan' warnings in XEmacs.
22836         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
22837         characterise [X]Emacs versions.
22838         (top-level): Require either 'cl or 'cl-lib, depending on
22839         c--mapcan-status.
22840         Change this back to cc-external-require from an eval-when-compile
22841         require.
22842         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
22843         (c--delete-duplicates): New macros which expand into either old or new
22844         names.
22845         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
22846         rather than the old names.
22847         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
22848         rather than mapcan.
22849         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
22850         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
22851         depending on c--mapcan-status.
22852         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
22853         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
22854         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
22855         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
22856         (c-decl-block-key, c-keywords, c-keywords-obarray)
22857         (c-regular-keywords-regexp, c-primary-expr-regexp)
22858         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
22859         (c-known-type-key, c-nonlabel-token-key)
22860         (c-make-init-lang-vars-fun): Use the new macros rather than the old
22861         names.
22863 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
22865         loadhist.el (read-feature): Conform to completing-read
22866         * lisp/loadhist.el (read-feature): According to `completing-read'
22867         documentation, if collection is a list, then it must be a list of
22868         strings, not a list of symbols like before.
22870 2015-08-12  David Kastrup  <dak@gnu.org>
22872         Deal gracefully with up-events (Bug#19746)
22873         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
22874         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
22875         those may easily be injected by user-level Lisp code.
22876         (read_key_sequence): Discard unbound up-events like unbound
22877         down-events: they are even more likely only relevant for special
22878         purposes.
22879         While Emacs will not produce up-events on its own currently (those are
22880         converted to drag or click events before being converted to
22881         Lisp-readable structures), the input queue can be made to contain them
22882         by synthesizing events to `unread-command-events'.  Emacs should deal
22883         consistently with such events.
22885 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
22887         Fix display of thin lines whose newline has line-height property of t
22888         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
22889         and descent values of non-empty glyph rows, since they could have
22890         forced low values deliberately.  (Bug#21243)
22892 2015-08-12  Richard Stallman  <rms@gnu.org>
22894         Offer to combine multiple To or CC fields.
22895         * lisp/mail/sendmail.el (mail-combine-fields): New function.
22896         (mail-send): Call 'mail-combine-fields'.
22898         Don't decrypt encrypted files.
22899         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
22901         Handle encrypted mbox files.
22902         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
22903         the mbox file if necessary.
22905         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
22906         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
22907         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
22908         In a mime message, reenable Mime and show the parts that
22909         were shown before.
22910         Add keyword "decrypt" if anything decrypted.
22912         epa-inhibit inhibits auto-recognition of .gpg files
22913         * lisp/epa-file.el (epa-inhibit): New variable.
22914         (epa-file-handler): Check epa-inhibit.
22916 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
22918         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
22920 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22922         Respect python.el imenu when semantic-mode is off
22923         Fixes bug#21220
22924         * lisp/cedet/semantic/wisent/python.el: Do not force
22925         wisent-python-default-setup on python-mode-hook.
22927 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
22929         Give names to Unicode code points in C code
22930         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
22931         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
22932         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
22933         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
22934         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
22935         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
22936         (OBJECT_REPLACEMENT_CHARACTER):
22937         New named constants for Unicode code points.
22938         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
22939         * src/composite.c (char_composable_p):
22940         * src/lread.c (readevalloop, read1):
22941         * src/xdisp.c (get_next_display_element):
22942         Use them.
22943         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
22944         Remove; now in character.h.
22946 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
22948         elisp--xref-find-definitions handle cl-defstuct default constructor
22949         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
22950         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
22951         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
22952         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
22953         from xref-elisp-test for ease of debugging.
22954         (xref-elisp-deftest): Rename from xref-elisp-test.
22955         (find-defs-constructor): New test.
22956         (find-defs-defgeneric-el): Match batch test config.
22957         (compile): Required for find-defs compilation-minor-mode test.
22958         (find-defs-defvar-el): Match code change.
22959         (find-defs-face-el): Match code change.
22960         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
22961         Improve doc string.
22963 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
22965         * lisp/replace.el (perform-replace): Document `replacements'.
22966         (perform-replace): Move the description of the format of `replacements'
22967         from the body's comment to the doc string.
22969 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
22971         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
22972         sequence.  Recent adb version send initial escape sequences, even
22973         when terminal type is set to TERM=dumb.
22975 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
22977         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
22978         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
22979         Function deleted.
22980         (elisp--xref-format-cl-defmethod): New defconst.
22981         (find-feature-regexp, find-alias-regexp): New defcustoms.
22982         (elisp--xref-make-xref): New function.
22983         (elisp--xref-find-definitions): Rewrite using the above, handle many
22984         more cases.  Always output all available definitions.
22985         (xref-location-marker): No need for special cases.
22986         * test/automated/elisp-mode-tests.el: Add more tests of
22987         elisp--xref-find-definitions, improve current tests.
22989 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
22991         Fix recording of events pushed onto unread-command-events
22992         * src/keyboard.c (read_char): Make sure events read from
22993         unread-command-events and unread-post-input-method-events are
22994         always recorded by record_char.  Reported by David Kastrup
22995         <dak@gnu.org>, see
22996         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
22998 2015-08-10  Samer Masterson  <samer@samertm.com>
23000         Set file buffer as current for "--file"
23001         * lisp/startup.el (command-line-1): Set file buffer as current before
23002         it is displayed so it can be used with options like "--eval".
23003         (Bug#21095)
23005 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
23007         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
23008         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
23009         after setting LC_ALL to the desired locale, to avoid affecting how
23010         numbers are read and printed.  (Bug#21223)
23012 2015-08-10  Alan Mackenzie  <acm@muc.de>
23014         Fix "Invalid search bound (wrong side of point)" in fontification
23015         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
23016         an initialization expression, check point is not beyond the
23017         fontification limit.
23019 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23021         Fix DPI calculation when Xft/DPI is default
23022         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
23023         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
23024         Remove unnecessary cast while we're in the neighborhood.
23026 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
23028         Add project-vc-search-path and project-vc-ignores
23029         * lisp/progmodes/project.el (project-vc): New group.
23030         (project-vc-search-path, project-vc-ignores): New variables.
23031         (project--value-in-dir): Utility function.
23032         (project-search-path, project-ignores): Use them.
23033         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
23034         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
23036 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23038         Fix some minor quoting issues with grave accent
23039         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
23040         Remove redundant quotes.
23041         * src/doc.c (uLSQM, uRSQM): New macros.
23042         * src/doc.c (Fsubstitute_command_keys):
23043         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
23044         preference for quotes rather than hardcoding the ‘grave’ style.
23045         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
23046         (re_match_2_internal) [DEBUG]: In debugging output, quote C
23047         strings with "...", not `...'.
23049         ChangeLog.2 ignores remote-tracking merges
23050         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
23051         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
23052         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
23054 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
23056         Use kpsewhich in ffap-latex-mode, if available
23057         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
23058         (ffap-latex-mode): Use kpsewhich if available.
23060         ffap: disallow braces in filenames for tex modes
23061         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
23062         braces in tex-related modes.
23064         Remove useless backslashes from ffap-string-at-point-mode-alist
23065         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
23066         misleading backslashes from default value.
23068         Augment docstring of ffap-string-at-point-mode-alist
23069         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
23070         and END are handled.
23072 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23074         * lisp/org/org-src.el (org-edit-src-code)
23075         (org-edit-fixed-width-region):
23076         * lisp/simple.el (completion-setup-function):
23077         Remove calls to substitute-command-keys that always just return
23078         their argument.
23080 2015-08-09  Daiki Ueno  <ueno@gnu.org>
23082         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
23083         (Bug#21210)
23085 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
23087         Fix link to source code in help window
23088         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
23089         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
23090         'No longer include timestamp in header of .elc files'.  Add code
23091         that will return .el source file in load-path.
23093 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
23095         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
23096         Respect `isearch-lax-whitespace' when searching through
23097         `isearch-word'.
23099 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
23101         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
23103         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
23104         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
23105         (org-set-regexps-and-options, org-assign-fast-keys)
23106         (org-contextualize-keys, org-contextualize-validate-key)
23107         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
23108         (org-find-olp, org-find-exact-heading-in-directory)
23109         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
23110         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
23111         (org-replace-escapes): Use dolist.
23112         (org-mode): Optimize away XEmacs-only code.
23113         (org-refile-get-targets): Remove unused var `f'.
23114         (org-fast-todo-selection): Remove unused var `e'.
23115         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
23116         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
23117         (org-format-latex): Use dolist.  Remove unused var `e'.
23118         (org-toggle-heading): Access vars lexically rather than dynamically.
23119         (org-backward-sentence, org-forward-sentence, org-meta-return)
23120         (org-kill-line): Mark arg as unused.
23121         (org-submit-bug-report): Silence compiler warning.
23122         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
23123         (org-get-cursor-date): Remove unused var `tm'.
23124         (org-comment-or-uncomment-region): Use standard name `_'.
23125         (reftex-docstruct-symbol, reftex-cite-format): Declare to
23126         silence byte-compiler.
23127         (org-reftex-citation): Add `org--' prefix to dynamically scoped
23128         `rds' var.
23130 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
23132         Electric quote if coding is undecided or no conv
23133         * lisp/electric.el (electric--insertable-p): Also say that a
23134         string is insertable if the buffer file coding system is undecided
23135         or uses no conversion, as curved quotes will work in either case.
23137         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
23139 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
23141         Fix overlay string display regressions introduced in Emacs 24.5
23142         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
23143         buffer position, if we move the iterator to a new position as
23144         result of jumping over text covered by a "replacing" display
23145         property.
23146         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
23148         Support recovery from C stack overflow on MS-Windows
23149         * src/w32fns.c (w32_reset_stack_overflow_guard)
23150         (stack_overflow_handler): New functions for handling C stack
23151         overflow exceptions.
23152         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
23153         specially, and zero out except_addr if we do.
23154         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
23155         mode.
23156         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
23157         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
23158         the MinGW build, but the code guarded by that is for Posix hosts.
23159         * src/keyboard.c (command_loop) [WINDOWSNT]:
23160         Call w32_reset_stack_overflow_guard.
23161         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
23162         (sigsetjmp): New macro.
23163         (w32_reset_stack_overflow_guard): Declare the prototype.
23164         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
23166 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
23168         Improve error signalling for seq-subseq
23169         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
23170         when indexes are too large, but to silently ignore numbers which
23171         are too negative for lists.  String and vector handling errors in
23172         both cases.  This has been regularized.  Error signaling behavior
23173         has been explicitly added to the doc string.
23175         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
23176         therefore also impacted by this change.  Update the doc string
23177         to reflect this.
23179         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
23180         added for these exceptional cases, as well as one non exceptional
23181         base case.
23183 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
23185         Improve error checking in tramp-adb.el
23186         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
23187         Improve error checking.  "ls -l" on Android in Enforcing mode can
23188         print "lstat './FILENAME failed: Permission denied".
23190 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
23192         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
23193         non-struct vectors.
23195 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
23197         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
23198         * lisp/window.el: Fix typo that broke build.
23199         (display-buffer--action-function-custom-type):
23200         Add `display-buffer-use-some-frame'.
23201         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
23203         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
23204         * lisp/window.el (display-buffer-use-some-frame): Add support for
23205         'inhibit-same-window in alist.
23206         * doc/lispref/windows.texi (display-buffer-use-some-frame):
23207         Doc support for 'inhibit-same-window in alist.
23209 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
23211         Avoid infinite loop in display of invisible text in strings
23212         * src/xdisp.c (handle_invisible_prop): If the next change of
23213         invisibility spec does not mean the beginning of a visible text,
23214         update the string position from which to start the search for the
23215         next invisibility change.  This avoids an infinite loop when we
23216         have more than one invisibility spec that are made inactive by
23217         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
23218         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
23219         for the situation that caused bug #21200.
23221 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
23223         * lisp/emacs-lisp/package.el: Simplify describe-package-1
23224         (package-help-section-name-face): New face.
23225         (package--print-help-section): New function.
23226         (describe-package-1): Refactor section printing.
23227         (package-make-button): Use face instead of font-lock-face, which
23228         doesn't work on buttons.
23230         * lisp/emacs-lisp/package.el: Define custom faces
23231         (package-name-face, package-description-face)
23232         (package-status-built-in-face, package-status-external-face)
23233         (package-status-available-face, package-status-new-face)
23234         (package-status-held-face, package-status-disabled-face)
23235         (package-status-installed-face, package-status-dependency-face)
23236         (package-status-unsigned-face, package-status-incompat-face)
23237         (package-status-avail-obso-face): New faces.
23238         (package-menu--print-info-simple): Use them.
23240 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
23242         Fix some confusion with ‘format’
23243         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
23244         (allout-graphics-modification-handler):
23245         Protect arbitrary string in a format context with "%s" format.
23246         * lisp/avoid.el:
23247         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
23248         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
23249         * lisp/erc/erc-button.el (erc-button-beats-to-time):
23250         * lisp/gnus/message.el (message-send-form-letter):
23251         * lisp/org/ob-core.el (org-babel-check-evaluate)
23252         (org-babel-confirm-evaluate):
23253         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
23254         * lisp/org/ox-latex.el (org-latex-compile):
23255         * lisp/org/ox-man.el (org-man-compile):
23256         * lisp/org/ox-odt.el (org-odt-template):
23257         * lisp/org/ox-texinfo.el (org-texinfo-compile):
23258         * lisp/progmodes/prolog.el (prolog-help-info)
23259         (prolog-view-predspec):
23260         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
23261         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
23262         * lisp/textmodes/rst.el (rst-replace-lines):
23263         Change (message (format ...)) to (message ...), and likewise
23264         for ‘error’.  This lessens the probability of confusion when the
23265         output of ‘format’ contains ‘%’.
23267 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
23269         * lisp/replace.el (replace-character-fold): Default to nil.
23271         * lisp/character-fold.el: Fix lax whitespace.
23272         (character-fold-table): Don't make space match other whitespace chars.
23273         (character-fold-to-regexp): Simplify lax behavior.
23275 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
23277         Preserve window point in xref-find-definitions-other-window
23278         Fix the problem reported by Ingo Logmar in
23279         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
23280         * lisp/progmodes/xref.el (xref--goto-char): Extract from
23281         xref--goto-location.
23282         (xref--pop-to-location): Use it.  Replace xref--goto-location with
23283         a direct xref-location-marker call.
23284         (xref--show-location): Likewise.
23285         (xref--display-position): Use xref--goto-char.
23287         * lisp/progmodes/project.el: Add a paragraph to the front matter.
23289 2015-08-04  David Kastrup  <dak@gnu.org>
23291         * lisp/vc/emerge.el (emerge-show-file-name):
23292         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
23293         (vhdl-comment-insert, vhdl-hooked-abbrev):
23294         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
23295         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
23296         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
23297         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
23298         * lisp/obsolete/vip.el (vip-escape-to-emacs)
23299         (vip-prefix-arg-value, vip-prefix-arg-com):
23300         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
23301         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
23302         (quail-tibkey-update-translation):
23303         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
23304         * lisp/leim/quail/lao.el (quail-lao-update-translation):
23305         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
23306         (quail-japanese-self-insert-and-switch-to-alpha):
23307         * lisp/leim/quail/hangul.el (hangul2-input-method)
23308         (hangul3-input-method, hangul390-input-method):
23309         * lisp/language/hanja-util.el (hangul-to-hanja-char):
23310         * lisp/international/robin.el (robin-input-method):
23311         * lisp/international/quail.el (quail-start-translation)
23312         (quail-start-conversion):
23313         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
23314         (gnus-article-describe-key-briefly):
23315         * lisp/eshell/em-hist.el (eshell-list-history):
23316         * lisp/term.el (term-dynamic-list-input-ring)
23317         (term-dynamic-list-completions):
23318         * lisp/subr.el (momentary-string-display):
23319         * lisp/simple.el (read-quoted-char):
23320         * lisp/pcomplete.el (pcomplete-show-completions):
23321         * lisp/kmacro.el (kmacro-repeat-on-last-key):
23322         * lisp/info.el (Info-summary):
23323         * lisp/ehelp.el (electric-help-command-loop):
23324         * lisp/ebuff-menu.el (electric-buffer-list)
23325         (Electric-buffer-menu-exit):
23326         * lisp/double.el (double-translate-key):
23327         * lisp/comint.el (comint-dynamic-list-input-ring)
23328         (comint-dynamic-list-completions): Do not overwrite preexisting
23329         contents of `unread-command-events' when putting new events into it.
23331 2015-08-04  Daniel Colascione  <dancol@dancol.org>
23333         Improve ansi-color filtering of unrecognized escape sequences
23334         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
23335         escape sequences.
23336         (ansi-color-filter-apply, ansi-color-apply): Filter out
23337         unrecognized escape sequences.
23339 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
23341         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
23342         definitions to `easy-menu-define', improve a couple to account for
23343         async, and add a couple of new commands.
23345 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
23347         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
23349 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
23351         Add new 'calendar-weekend-days' option
23352         Make the days receiving the 'calendar-weekend-header' face freely
23353         customizable, as they differ by region/culture.
23354         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
23355         new variable.
23356         * lisp/calendar/calendar.el (calendar-generate-month): New variable
23357         calendar-weekend-days to customize day header fontification.
23359 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
23361         Redo text-quoting-style variable
23362         Rename help-quote-translation to text-quoting-style,
23363         and use symbols rather than characters as values.
23364         This follows suggestions along these lines by Alan Mackenzie in:
23365         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
23366         and by Drew Adams in:
23367         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
23368         * doc/lispref/help.texi (Keys in Documentation)
23369         * etc/NEWS:
23370         * lisp/cus-start.el (standard):
23371         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
23372         Document and/or implement the new behavior instead of the old.
23373         (syms_of_doc): New symbols 'grave' and 'straight'.
23375 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
23377         nnimap.el: Use IMAP MOVE extension if available
23378         * lisp/gnus/nnimap.el (nnimap-request-move-article)
23379         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
23380         Use MOVE extension if available.
23382         nnimap.el: Explicitly ask for server capabilities
23383         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
23384         capabilities will be returned in the login-result.
23386 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
23388         Treat help strings like other doc strings
23389         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
23390         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
23391         substitute-command-keys.
23392         * src/keyboard.c (show_help_echo, parse_menu_item): Call
23393         substitute-command-keys on the help string before displaying it.
23395         Also mention "curly quotes"
23396         See Drew Adams's email in:
23397         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
23398         * doc/lispref/help.texi (Keys in Documentation):
23399         Add index entry "curly quotes".
23400         * etc/NEWS: Use the phrase "curly quotes" too.
23402         ede-proj-target-makefile docstring tweaks
23403         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
23404         Consistently use "all:" to describe the all: target,
23405         replacing three different and confusingly-quoted usages.
23407 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
23409         Don't abort emacsclientw when -a was specified
23410         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
23411         out if we are in emacsclientw and -a was specified.
23413 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
23415         Fix handling of 1st keystroke on MS-Windows
23416         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
23417         This is needed to correctly handle the session's first keystroke,
23418         if it has any modifiers.  (Bug#19994)
23420 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
23422         Substitute some customization etc. doc strings
23423         These changes apply substitute-command-keys to some
23424         doc strings that were going through untranslated
23425         when creating customization or other widgets.
23426         * lisp/cus-edit.el (custom-group-value-create):
23427         * lisp/wid-edit.el (widget-default-create):
23428         (widget-push-button-value-create):
23429         Treat the widget tag as a doc string.
23430         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
23431         Treat the :documentation value as a doc string.
23432         * lisp/wid-edit.el (widget-choose):
23433         Treat the choice names as doc strings.
23434         (widget-default-create): Treat the :doc value as a doc string.
23435         (widget-toggle-value-create): Treat the :on and :off values
23436         as doc strings.
23437         (widget-documentation-string-value-create):
23438         Substitute the doc string.
23440 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
23442         Add a second argument to project-ignores
23443         * lisp/progmodes/project.el (project-ignores): Add a second
23444         argument DIR.
23445         * lisp/progmodes/project.el (project-ignores): Only include the VC
23446         ignores if DIR is the VC root.
23447         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
23449 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
23451         Prevent incorrect display when 'line-spacing' variable is set
23452         * src/xdisp.c (try_window_id): Give up this optimization if the
23453         buffer has its 'line-spacing' variable set non-nil.
23455 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
23457         Don't pass NOVISIT to find-file
23458         * lisp/progmodes/etags.el (next-file):
23459         Don't pass NOVISIT to find-file (bug#21175).
23461         Ignore buffer restriction for tags-loop-eval
23462         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
23463         restriction (bug#21167).
23465 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
23467         Fix a thinko in 'ffap-gopher-at-point'
23468         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
23470         Honor 'line-spacing' for empty lines
23471         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
23472         property and 'line-spacing' frame parameter or variable or
23473         property for empty lines, by doing the same processing as in
23474         x_produce_glyph for newline characters.  (Bug#21165)
23476 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
23478         Simplify by assuming C99 integer division
23479         * src/floatfns.c (ceiling2, floor2, truncate2):
23480         Assume C99 (i.e., Fortran) semantics for integer division.
23481         This simplifies the code.
23483 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
23485         Don't overflow if computing approximate percentage
23486         * lisp/align.el (align-region):
23487         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
23488         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
23489         * lisp/cus-edit.el (custom-buffer-create-internal):
23490         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
23491         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
23492         (checkdoc-next-message-error):
23493         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
23494         * lisp/epa.el (epa-progress-callback-function):
23495         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
23496         * lisp/ffap.el (ffap-menu-rescan):
23497         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
23498         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
23499         * lisp/gnus/nneething.el (nneething-retrieve-headers):
23500         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
23501         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
23502         * lisp/gnus/nnml.el (nnml-retrieve-headers):
23503         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
23504         * lisp/gnus/nntp.el (nntp-retrieve-headers)
23505         (nntp-retrieve-articles):
23506         * lisp/imenu.el (imenu--relative-position):
23507         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
23508         (skkdic-convert-okuri-nasi):
23509         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
23510         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
23511         * lisp/org/org-list.el (org-update-checkbox-count):
23512         * lisp/org/org.el (org-table-map-tables)
23513         (org-update-parent-todo-statistics):
23514         * lisp/play/decipher.el (decipher-insert-frequency-counts)
23515         (decipher-analyze-buffer):
23516         * lisp/profiler.el (profiler-format-percent):
23517         * lisp/progmodes/cc-cmds.el (c-progress-update):
23518         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
23519         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
23520         (idlwave-list-load-path-shadows):
23521         * lisp/progmodes/opascal.el (opascal-step-progress):
23522         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
23523         (vhdl-scan-directory-contents):
23524         * lisp/textmodes/bibtex.el (bibtex-progress-message):
23525         * lisp/textmodes/flyspell.el (flyspell-small-region)
23526         (flyspell-external-point-words):
23527         * lisp/textmodes/table.el (table-recognize):
23528         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
23529         progress-report percentages and the like.  This avoids problems
23530         if (* 100 NUMERATOR) would overflow.
23531         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
23532         * lisp/gnus/registry.el (registry-reindex):
23533         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
23534         * lisp/descr-text.el (describe-char):
23535         * lisp/org/org-colview.el (org-nofm-to-completion):
23536         * lisp/ps-print.el (ps-plot):
23537         * lisp/simple.el (what-cursor-position):
23538         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
23539         more-complicated and less-accurate approximation.
23541         Fix some int overflows in profiler.c
23542         * src/profiler.c (make_log): Make args EMACS_INT, not int,
23543         to avoid unwanted behavior on 'int' overflow.
23544         (make_log, evict_lower_half, record_backtrace):
23545         Use ptrdiff_t, not int, for object indexes.
23547         Port to pedantic memcpy
23548         * src/keyboard.c (menu_bar_items, tool_bar_items):
23549         * src/xrdb.c (magic_db):
23550         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
23552         Merge from gnulib
23553         This incorporates:
23554         2015-07-29 time_rz: port to pedantic memcpy
23555         * lib/time_rz.c: Copy from gnulib.
23557 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
23559         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
23560         When updating the very last entry, tabulated-list-print would
23561         erase it and then try to look at the next one (which obviously
23562         isn't there).
23564 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
23566         Allow to use the old key processing code on MS-Windows
23567         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
23568         New variable.
23569         (w32_wnd_proc): Use it to invoke the old code that processed
23570         character keys, as fallback, when this variable is non-nil.
23571         Fix typos in comments.  (Bug#19994)
23573 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
23575         Improve handling of Unicode keyboard input on MS-Windows
23576         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
23577         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
23578         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
23579         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
23580         successful, don't call TranslateMessage.  (Bug#19994)
23582 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
23584         Fix default-directory in changeset diffs after vc-print-log
23585         * lisp/vc/log-view.el (log-view-diff-common): Move the
23586         revision-granularity check back into log-view-diff-changeset.
23587         (log-view-diff-changeset): Bind default-directory to the current
23588         VC root.
23590         Rename project-directories to project-roots
23591         * lisp/progmodes/project.el (project-search-path-function)
23592         (project-search-path): Update the docstring.
23593         (project-directories): Rename to `project-roots', update all
23594         callers and implementations accordingly.
23595         (project-root): Remove.
23596         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
23597         as the default file mask.
23599 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
23601         Support long URLs in w32-shell-execute
23602         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
23603         and filename_to_ansi to convert the DOCUMENT argument, as it could
23604         be a URL that is not limited to MAX_PATH characters.  Instead, use
23605         MultiByteToWideChar directly, and allocate heap storage as
23606         required to accommodate the converted string.  Likewise with
23607         non-Unicode operation.  Ensure OPERATION is null-terminated, even
23608         if it is longer than 32K bytes.  (Bug#21158)
23610 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
23612         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
23614 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
23616         Add docs for display-buffer action display-buffer-use-some-frame
23617         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
23618         * doc/lispref/windows.texi (Display Action Functions):
23619         Add display-buffer-use-some-frame.
23620         * etc/NEWS: Mention display-buffer-use-some-frame.
23622         Add display-buffer action display-buffer-use-some-frame
23623         * lisp/window.el (display-buffer-use-some-frame): New.
23625         Handle vc-mtn error more gently
23626         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
23627         branch is nil.
23629 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
23631         Fix Tramp problems with multihops, and nc
23632         * lisp/net/tramp-cache.el (tramp-get-file-property)
23633         (tramp-set-file-property, tramp-flush-file-property)
23634         (tramp-get-connection-property, tramp-set-connection-property)
23635         (tramp-flush-connection-property): Remove hop from vector.
23636         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
23637         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
23638         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
23639         netstat to 60".
23640         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
23641         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
23642         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
23643         Keep hop in result.
23644         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
23645         Add hop tests.
23647 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
23649         Resurrect highlighting of repeated words by Flyspell Mode
23650         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
23651         characters between point and the doublon candidate, so that
23652         flyspell-word-search-backward finds it.  (Bug#21157)
23654         Fix redisplay of large images on expose events
23655         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
23656         between signed negative values and unsigned values.  This
23657         prevented redisplay on expose events when the window showed a very
23658         large image.
23660 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
23662         Remove unnecessary stack overflow dependency
23663         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
23664         Don't worry about $ac_cv_header_sys_resource_h and
23665         $ac_cv_func_getrlimit, as they're no longer needed for this.
23666         Problem reported by Eli Zaretskii in:
23667         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
23669 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
23671         Pacify compilation -Wincompatible-pointer-types warnings
23672         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
23673         warning.
23674         (CompareStringW_Proc): New typedef.
23675         (w32_compare_strings): Use it, to pacify compiler warnings under
23676         "-Wincompatible-pointer-types".
23677         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
23678         (GetDiskFreeSpaceExA_Proc): New typedefs.
23679         (Ffile_system_info): Use them, to pacify compiler warnings under
23680         "-Wincompatible-pointer-types".
23682 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
23684         Fix subscript error in calculate_direct_scrolling
23685         Use slightly-longer cost vectors.  Without this change,
23686         calculate_direct_scrolling can have a subscript violation when
23687         FRAME_LINES (frame) <= delta.
23688         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
23689         (line_ins_del, do_line_insertion_deletion_costs):
23690         Allocate and use slightly-larger cost vectors, ones based on
23691         FRAME_TOTAL_LINES instead of FRAME_LINES.
23693         Fix uninitalized value in encode_coding_object
23694         * src/coding.c (encode_coding_object): Also initialize
23695         coding->src_pos and coding->src_pos_byte when NILP (src_object).
23696         This avoids later use of uninitialized storage.
23698 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
23700         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
23701         (Bug#21141)
23703 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
23705         Merge from gnulib
23706         This incorporates:
23707         2015-07-27 time_rz: port better to MinGW
23708         2015-07-27 time: port __need_time_t to MinGW
23709         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
23710         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
23711         * lib/time-internal.h: New file, from gnulib.
23713 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
23715         Handle NULL pointers in w32heap.c allocation routines
23716         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
23717         freeable".
23718         (realloc_after_dump, realloc_before_dump, free_before_dump):
23719         Handle NULL pointers gracefully, as Emacs now seems to expect that.
23721         Fix Cairo build without PNG
23722         * src/image.c: Define PNG function when USE_CAIRO is defined, even
23723         if HAVE_PNG is not.  (Bug#21133)
23725         MS-Windows follow-up for recent TZ-related changes
23726         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
23727         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
23728         picking up 'struct timespec' from pthread.h, if it is installed on
23729         the user's system.  We want either the definitions from MinGW
23730         system headers, if available, or the Gnulib replacements if not.
23731         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
23732         lib/time.h.
23733         * lib/time.in.h: Don't let __need_* symbols affect what happens on
23734         MinGW.  These symbols are defined by MinGW system headers, but we
23735         don't want that to affect whether Gnulib portions of the header
23736         are or aren't used.
23738 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
23740         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
23742         New optional ZONE arg for format-time-string etc.
23743         This simplifies time conversions in other time zones.
23744         It also prevents display-time-world tampering with TZ (Bug#21020).
23745         * admin/admin.el (add-release-logs):
23746         Use improved add-log-time-format API.
23747         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
23748         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
23749         * configure.ac (tzalloc): Remove test for this, since
23750         Emacs no longer uses HAVE_TZALLOC directly.
23751         * doc/lispref/os.texi (Time of Day, Time Conversion)
23752         (Time Parsing):
23753         * etc/NEWS: Document the new behavior.
23754         Merge from gnulib, incorporating:
23755         2015-07-25 strftime: fix newly-introduced bug on Solaris
23756         2015-07-23 fprintftime, strftime: use timezone_t args
23757         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
23758         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
23759         * m4/time_h.m4:
23760         Update from gnulib.
23761         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
23762         New files from gnulib.
23763         * lisp/time-stamp.el (time-stamp-string):
23764         * lisp/time.el (display-time-world-list)
23765         (display-time-world-display):
23766         Use new API, with time zone arg.
23767         * lisp/time.el (display-time-world-display):
23768         Fix race when current-time advances while we're running.
23769         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
23770         (add-log-iso8601-time-string): Accept optional time zone arg.
23771         * lisp/vc/add-log.el (add-change-log-entry):
23772         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
23773         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
23774         Add rules for the time module, since they're now needed
23775         for tzalloc etc.
23776         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
23777         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
23778         * src/editfns.c: Include errno.h.
23779         (set_time_zone_rule): Omit unnecessary forward decl.
23780         (initial_tz): Remove, replacing with ...
23781         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
23782         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
23783         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
23784         (tzlookup): New static functions.
23785         (init_editfns): New arg DUMPING.  All uses changed.
23786         (init_editfns): Omit most initialization if dumping, not if
23787         !initialized.  Initialize wall_clock_tz and local_tz.
23788         (emacs_nmemftime, format_time_string): Time zone argument can now
23789         be any time zone, not just a boolean for UTC or local time.  All
23790         callers changed.
23791         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
23792         (Fcurrent_time_zone): New optional arg ZONE.
23793         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
23794         the same form as with the other new additions.
23795         (decode_time_zone): Remove; no longer needed.
23796         (tzvalbuf): Now file-scope.
23797         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
23798         (syms_of_editfns): Define Qwall.
23799         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
23800         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
23801         [!HAVE_TZALLOC]:
23802         Remove; now supplied by gnulib.
23803         * src/emacs.c (main):
23804         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
23806 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
23808         Fix infinite loop in delete-consecutive-dups
23809         * lisp/subr.el (delete-consecutive-dups): Work even if the last
23810         element is nil (Bug#20588).  Avoid rescan of a circular list in
23811         deletion of last element.
23813 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
23815         Have `x-frame-geometry' return nil for terminal and initial
23816         frames (Bug#21132)
23817         * src/nsfns.m (Fx_frame_geometry):
23818         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
23819         terminal frames.
23820         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
23821         (Fx_frame_geometry): Return nil for terminal frames
23823 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
23825         * etc/tutorials/TUTORIAL.ja: Improve translation.
23827 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
23829         Avoid crashes when w32 GUI functions are called in -batch
23830         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
23831         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
23832         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
23834         Fix flyspell-check-previous-highlighted-word
23835         * lisp/textmodes/flyspell.el
23836         (flyspell-check-previous-highlighted-word): Really accept a
23837         numeric argument, as the doc string describes.  Fix an off-by-one
23838         error in looking up overlays, so invocation with point immediately
23839         after a word would check that word.  Clarify the doc string as
23840         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
23842 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
23844         Minor cleanup in tramp-tests.el
23845         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
23846         Implement using the documented interface
23847         `tramp-connection-properties', rather than with internal functions.
23849 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
23851         Pass lambdas to `skeleton-read'
23852         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
23853         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
23854         lambdas to `skeleton-read' (bug#20386).
23856 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
23858         * INSTALL (DETAILED BUILDING AND INSTALLATION):
23859         Mention --without-imagemagick.
23861         Don't require GUI frames and mouse for Flyspell menus
23862         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
23863         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
23864         support, since pop-up menus work with text terminals and can be
23865         controlled via the keyboard.
23867         Improve documentation of Flyspell commands
23868         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
23869         can be invoked via the keyboard.  Mention those commands by name
23870         and add them to the fn index.  (Bug#21125)
23872 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
23874         Fix some Tramp problems with HP-UX
23875         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
23876         Add "tab0" to stty call.
23877         * test/automated/tramp-tests.el (tramp-persistency-file-name):
23878         Set to nil.
23879         (tramp--test-hpux-p): New defun.
23880         (tramp--test-utf8): Use it.
23882 2015-07-22  Glenn Morris  <rgm@gnu.org>
23884         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
23886 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
23888         Fix point positioning in ffap-next-guess
23889         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
23890         as our callers expect.  This was clobbered as part of fixing
23891         bug#5673.  (Bug#21107)
23892         (ffap-gopher-at-point): Set ffap-string-at-point-region.
23894 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
23896         * lisp/window.el (even-window-sizes): Fix customization type.
23898         Optionally even widths of `display-buffer' windows.  (Bug#21100)
23899         * lisp/window.el (quit-restore-window): Restore width if
23900         requested.
23901         (display-buffer-record-window): Record width when window is
23902         reused and horizontally combined.
23903         (even-window-sizes): New option to allow evening window widths.
23904         (even-window-heights): Defalias to `even-window-sizes'.
23905         (window--even-window-heights): Rename to
23906         `window--even-window-sizes'.  Handle side-by-side windows.
23907         (display-buffer-use-some-window): Call `window--even-window-sizes'
23908         instead of `window--even-window-heights'.
23909         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
23910         * doc/lispref/windows.texi (Choosing Window Options): Describe
23911         `even-window-sizes'.
23912         (Coordinates and Windows): Fix typo.
23914 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
23916         Add file name to autoload error messages
23917         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
23918         Add condition-case to add file name to error message.
23920 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
23922         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
23923         Use 0.0.0.1 as test host.
23925 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
23927         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
23928         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
23929         Fix inf-loop (bug#21083).
23931 2015-07-21  Glenn Morris  <rgm@gnu.org>
23933         * test/automated/package-test.el (package-test-signed):
23934         Update for recent changes.
23936         * test/automated/elisp-mode-tests.el
23937         (elisp-xref-finds-both-function-and-variable)
23938         (elisp-xref-finds-only-function-for-minor-mode):
23939         Update for recent xref name changes.
23941 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
23943         Make eldoc timer non-repeatable
23944         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
23945         non-repeatable.  Since it's on post-command hook, that just wasted
23946         CPU cycles.
23948 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
23950         Mention `tramp-connection-properties' in NEWS
23952         Sync with Tramp repository
23953         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
23954         required prior changing its configuration.
23955         (Connection caching, Predefined connection information)
23956         (Remote shell setup): Fix typos.
23957         (Predefined connection information): Describe, how to overwrite
23958         parameters of `tramp-methods'.
23959         (Remote programs, Remote processes, Traces and Profiles):
23960         Simplify example.
23961         (Remote programs): Remove superfluous comment.
23962         * doc/misc/trampver.texi: Update release number.
23963         * lisp/net/tramp-cache.el (tramp-connection-properties):
23964         Adapt docstring.
23965         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
23966         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
23967         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
23968         "gvfs-mkdir -p ..." does not work robust.
23969         (tramp-gvfs-maybe-open-connection):
23970         Adapt `tramp-get-method-parameter' call.
23971         * lisp/net/tramp-sh.el (tramp-methods):
23972         Add `tramp-remote-shell-login' parameter where it fits.
23973         (tramp-get-remote-path): Use it.
23974         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
23975         (all): Adapt `tramp-get-method-parameter' calls.
23976         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
23977         (tramp-get-method-parameter): Replace argument METHOD by VEC.
23978         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
23979         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
23980         (all): Adapt `tramp-get-method-parameter' calls.
23981         * lisp/net/trampver.el: Update release number.
23982         * test/automated/tramp-tests.el (tramp--instrument-test-case):
23983         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
23984         (tramp-test13-make-directory, tramp--test-adb-p)
23985         (tramp--test-smb-or-windows-nt-p): Simplify.
23986         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
23987         (tramp--test-special-characters): Fix docstring.  Add gvfs and
23988         ftp tests.
23989         (tramp--test-utf8): Fix docstring.
23991 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
23993         Add new xref-query-replace command
23994         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
23995         New function, extracted from xref-pulse-momentarily.
23996         (xref-query-replace): New command.
23997         (xref--query-replace-1): New helper function.
23998         (xref--xref-buffer-mode-map): Add `r' binding.
24000 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
24002         Simplify icalendar decoding of Z dates
24003         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
24004         Simplify calculation of time strings with trailing "Z".
24006 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
24008         Do not corrupt grep-find-ignored-files
24009         * lisp/progmodes/project.el (project-ignores): Change the order of
24010         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
24012         Add xref-match-item, and use it
24013         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
24014         (xref-file-location): Add reader for the column slot.
24015         (xref-match-item): New class.
24016         (xref-match-bounds): A method implementation for it.
24017         (xref-make-match): New constructor function.
24018         (xref--current-item): New private variable.
24019         (xref-pulse-momentarily): Use it.
24020         (xref--pop-to-location): Change the first argument to an xref
24021         item, instead of location, bind xref--current-item.
24022         Update all callers.
24023         (xref-next-line, xref-prev-line, xref--next-error-function)
24024         (xref--mouse-2): Look for the property `xref-item',
24025         instead of `xref-location'.
24026         (xref--item-at-point): Likewise.  This function replaces
24027         `xref-location-at-point'.  Update all callers.
24028         (xref--insert-xrefs): Add the `xref-item' text property, instead
24029         of `xref-location'.
24030         (xref--collect-match): Use xref-make-match.
24032         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
24033         Update all references.
24035         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
24036         slot to `summary'.
24038         vc-hg: Perform the print-log call asynchronously
24039         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
24040         asynchronously (bug#21067).
24042         Add xref-after-jump-hook and xref-after-return-hook
24043         * lisp/progmodes/xref.el (xref-after-jump-hook)
24044         (xref-after-return-hook): New hooks.
24045         (xref-pulse-on-jump): Remove, in favor of the above.
24046         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
24047         (xref--pop-to-location, xref--display-position)
24048         (xref-pop-marker-stack): Use the new hooks, as requested in
24049         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
24051 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
24053         * lisp/progmodes/js.el (js-mode): Correct the lighter.
24055 2015-07-19  Leo Liu  <sdl.web@gmail.com>
24057         Fix a bug in cfengine3-mode
24058         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
24059         eldoc-documentation-function.
24061 2015-07-18  Julien Danjou  <julien@danjou.info>
24063         sieve-mode: support "body" test command
24064         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
24065         Add missing "body" test command.
24067 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
24069         Fix info-apropos when the default encoding is Latin-N
24070         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
24071         'undecided', so that it is set to the encoding of the Info file we
24072         are about to insert.  Otherwise, 'info-apropos' will fail to find
24073         some index nodes in some UTF-8 encoded files, if the buffer's
24074         previous encoding is Latin-N or some such.
24076 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
24078         * lisp/epg.el (epg--start): Check that gpgconf can be found
24079         before calling it.
24081         Expose more file types to OS X that Emacs understands
24082         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
24083         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
24085 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
24087         Fix visual-order cursor movement when lines are truncated
24088         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
24089         simulate display in a window of infinite width, to allow move_it_*
24090         functions reach positions outside of normal window dimensions.
24091         Remove code that tried to handle a subset of these situations by
24092         manual iteration of buffer text.  (Bug#17777)
24094         Fix following Info cross-references to anchors
24095         * lisp/info.el (Info-read-subfile): Add to the returned value the
24096         length of subfile preamble, after converting it to file's byte
24097         offset, as expected by the caller.  Use bufferpos-to-filepos.
24098         (Info-find-node-2): If searching for a node with a
24099         1000-character slop fails, try again with a 10000-character slop,
24100         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
24101         * lisp/international/mule-util.el (bufferpos-to-filepos): New
24102         function.
24103         * etc/NEWS: Mention bufferpos-to-filepos.
24105         Fix scrolling backwards on TTY frames under scroll-conservatively
24106         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
24107         in moving backwards on TTY frames.  (Bug#21080)
24109 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
24111         Consider a jsdoc tag to be a beginning of a paragraph as well
24112         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
24113         consider a jsdoc tag to be a beginning of a paragraph as well.
24115 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
24117         * lisp/emacs-lisp/package.el: Fix warnings.
24119         * lisp/emacs-lisp/package.el (package-buffer-info):
24120         Add author and maintainers to `package-buffer-info'.
24122         * lisp/emacs-lisp/package.el: Many small changes.
24123         Replace all instances of 'face with 'font-lock-face.
24124         (describe-package-1): Improve some strings and move the summary
24125         up the list.
24126         (package-install-file): Update docstring.
24127         (package-menu-hide-package): Bind to `H'.
24129         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
24130         Fix error handling.
24132 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
24134         Fix hang with large yanks This should fix the bug fixed by Mike
24135         Crowe's patch in:
24136         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
24137         A problem in this area has been reported by several users; see
24138         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
24139         This fix differs from Mike Crowe's patch in that it should avoid a
24140         race condition that could lose SIGIO signals.  ignore_sigio dates
24141         back to the 1980s when some platforms couldn't block signals, and
24142         could only ignore them, which led to races when signals arrived
24143         while being ignored.  We shouldn't have to worry about those old
24144         platforms now.
24145         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
24146         * src/emacs.c (shut_down_emacs):
24147         Don't call ignore_sigio; unrequest_sigio should suffice.
24148         * src/keyboard.c (kbd_buffer_store_buffered_event):
24149         Use unrequest_sigio, not ignore_sigio.
24150         (kbd_buffer_get_event):
24151         Call request_sigio when getting the ball rolling again.
24153 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
24155         * lisp/obsolete/longlines.el (longlines-search-function):
24156         Fallback on `isearch-search-fun-default'.
24158 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
24160         Support @-mentions
24161         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
24162         of mentions/messages with @nick instead of just nick.
24164 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
24166         Fix bug#20943
24167         * lisp/autorevert.el (auto-revert-handler): Do not check for
24168         `buffer-modified-p'.
24169         * lisp/files.el (buffer-stale--default-function): Check for
24170         `buffer-modified-p'.
24171         * test/automated/auto-revert-tests.el
24172         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
24174 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
24176         Fix delete-dups bug on long lists
24177         * lisp/subr.el (delete-dups):
24178         Don't mistakenly keep some dups when applied to long lists.
24180 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
24182         Better heuristic for C stack overflow
24183         Improve the heuristic for distinguishing stack overflows from
24184         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
24185         the getrlimit method wasn't portable to Cygwin; see:
24186         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
24187         Corinna suggested pthread_getattr_np but this also has problems.
24188         Instead, replace the low-level system stuff with a simple
24189         heuristic based on known good stack addresses.
24190         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
24191         * src/sysdep.c: Don't include <sys/resource.h>.
24192         (stack_direction): Remove.  All uses removed.
24193         (stack_overflow): New function.
24194         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
24195         Make SEGV fatal in non-main threads.
24197 2015-07-16  Daiki Ueno  <ueno@gnu.org>
24199         epg: Automatically start pinentry server
24200         * lisp/epg-config.el (epg-gpgconf-program): New variable.
24201         * lisp/epg.el (epg--start): Call `pinentry-start' if
24202         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
24204 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
24206         * lisp/gnus/nnimap.el: Fix my last bogus change.
24207         Reinstall Stefan Monnier's change that was made in
24208         <83d824bc4041332f338ad7e5e830f443535aa300>.
24210 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
24212         Merge from gnulib
24213         This incorporates:
24214         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
24215         2015-07-05 acl-permissions: Fix on FreeBSD
24216         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
24217         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
24218         * lib/set-permissions.c: Copy from gnulib.
24220         Port to stricter C99
24221         * src/keyboard.h (kbd_buffer_store_event_hold):
24222         Don't return a void expression.
24224 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
24226         * doc/emacs/frames.texi (Creating Frames):
24227         Fix the command `C-x 5 m' runs.
24229 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
24231         New autorevert tests
24232         * test/automated/auto-revert-tests.el: New file.
24234 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
24236         Clear gcprolist etc. after stack overflow
24237         After stack overflow, command_loop calls init_eval, and this needs to
24238         clear gcprolist and byte_stack_list (Bug#20996).
24239         * src/alloc.c (init_alloc):
24240         Move gcprolist and byte_stack_list initialization from here ...
24241         * src/eval.c (init_eval): ... to here.
24243 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
24245         * doc/emacs/windows.texi (Pop Up Window): Fix the description
24246         of `C-x 4 m'.
24248 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24250         Avoid deprecated enums in mac-ct font backend driver
24251         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
24252         (mac_ctfont_get_advance_width_for_glyph)
24253         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
24255         Cache font family in mac-ct font backend driver
24256         * src/macfont.m (macfont_family_cache): New variable.
24257         (syms_of_macfont): Initialize it.
24258         (macfont_available_families_cache): New variable.
24259         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
24260         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
24261         (macfont_handle_font_change_notification)
24262         (macfont_init_font_change_handler)
24263         (macfont_copy_available_families_cache): New functions.
24264         (macfont_create_family_with_symbol): Use font family caches.
24265         (macfont_list, macfont_list_family):
24266         Use macfont_copy_available_families_cache instead of
24267         mac_font_create_available_families.
24269 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
24271         Show the default value in the prompt
24272         * lisp/progmodes/xref.el: Add `M-?' binding for
24273         xref-find-references.  Declare functions `grep-read-files' and
24274         `grep-expand-template'.
24275         (xref--read-identifier): Show the default value in the prompt.
24277         * lisp/progmodes/xref.el (xref-find-regexp): When called with
24278         prefix argument, ask for file patterns to search as well.  When
24279         prompting for the directory, require an existing one.
24280         (xref-collect-matches): Add a new argument, FILES.  Use it in the
24281         above function.
24283         Add `project-ignores'
24284         * lisp/progmodes/project.el (project-ignores): New generic
24285         function, and an implementation for the VC project type.
24286         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
24287         variant of rgrep-default-command that handles a generic list of
24288         ignores.
24289         (xref-collect-matches): Use it, and pass through to it the value
24290         of the newly added argument.
24291         (xref-find-regexp): Handle ignored paths within the project.
24292         Remove outdated comment.
24293         * lisp/vc/vc.el (vc-default-ignore-completion-table):
24294         Skip the comments and the empty lines.
24296 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
24298         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
24300 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
24302         gnus-registry.el: Correct function argument order
24303         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
24304         Reverse the order of function arguments.
24306 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
24308         Bind grep-highlight-matches to nil
24309         * lisp/progmodes/xref.el (xref-collect-matches):
24310         Bind grep-highlight-matches to nil (bug#20728).
24312 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
24314         nnimap.el: Fix IMAP message size parsing
24315         * lisp/gnus/nnimap.el (nnimap-transform-headers):
24316         Don't assume that UID comes before RFC822.SIZE.
24318 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
24320         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
24321         (auth-source-creation-prompts): Declare.
24322         (nnimap-retrieve-headers, nnimap-status-message)
24323         (nnimap-request-create-group, nnimap-request-delete-group)
24324         (nnimap-close-group, nnimap-request-move-article)
24325         (nnimap-request-accept-article, nnimap-request-newgroups)
24326         (nnimap-request-post, nnimap-dummy-active-number)
24327         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
24328         (nnimap-parse-flags): Remove unused var `p'.
24329         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
24330         (nnimap-flags-to-marks): Remove unused var `totalp'.
24332 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
24334         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
24336 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24338         * src/macfont.m (macfont_list): Ignore font families lacking
24339         font descriptors.
24341 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
24343         Don't check the exit status, it can be misleading
24344         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
24345         exit status, it can be misleading.
24347         Introduce a Project API
24348         * lisp/progmodes/project.el: New file.
24349         * lisp/cedet/ede.el (project-try-ede): New function.
24350         (project-root): New implementation.
24351         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
24352         Set project-search-path-function.
24353         (elisp--xref-find-references): Delegate some logic to
24354         project-search-path.
24355         (elisp-search-path): New function.
24356         (elisp-xref-find): Don't implement `matches' anymore.
24357         * lisp/progmodes/etags.el: Don't implement `matches'.
24358         Delegate some logic to project-search-path.
24359         (etags-search-path): New function.
24360         * lisp/progmodes/xref.el (xref-find-function):
24361         Remove `matches' from the API.
24362         (xref-find-regexp): Move whatever common logic was in elisp and
24363         etags implementations, and search the directories returned by
24364         project-directories and project-search-path.
24366 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
24368         * test/automated/map-tests.el (test-map-delete-return-value):
24369         Uncomment test.
24371         Add support for gv.el in map.el
24372         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
24373         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
24374         * test/automated/map-tests.el: Update tests to work with the new
24375         implementations of map-elt and map-put.
24377 2015-07-09  Glenn Morris  <rgm@gnu.org>
24379         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
24381 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
24383         Syntax-propertize until the end of the line first
24384         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
24385         until the end of the line first.
24387 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
24389         * doc/emacs/files.texi (File Archives): Add a cross reference.
24391 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
24393         nnimap.el: Handle plain value for nnimap-stream
24394         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
24395         capabilities, so that a 'plain value for the `nnimap-stream' server
24396         variable is handled correctly.
24397         * doc/misc/gnus.texi (Customizing the IMAP Connection):
24398         Document the 'plain option.
24400 2015-07-08  Leo Liu  <sdl.web@gmail.com>
24402         Fix bug in thing-at-point--bounds-of-well-formed-url
24403         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
24404         sure boundary contains current point.
24406 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
24408         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
24409         in the end.
24411         Declare whitespace-line-column a safe file-local
24412         * lisp/whitespace.el (whitespace-line-column): Declare to be a
24413         safe file-local when the value is an integer.
24415 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
24417         gnus-group.el: Check if group names are already strings
24418         * lisp/gnus/gnus-group.el (gnus-group-group-name):
24419         The group name may already be a string.
24420         Specifically, in the group list reached from the *Server* buffer,
24421         the 'gnus-group text property returns a string.  Everywhere else
24422         it returns a symbol.
24424         nnimap.el: Remove unused let variables
24425         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
24427 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
24429         Support "maximized" property of runemacs's shortcut
24430         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
24431         the '--maximized' switch to Emacs.
24433         Support "minimized" property of runemacs's shortcut
24434         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
24435         pass the '--iconic' switch to Emacs.  (Bug#20991)
24437 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
24439         Doc fixes
24440         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
24441         C-w' in Diff mode.
24442         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
24443         Add a cross reference.
24445 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
24447         * lisp/obsolete/landmark.el: Add Obsolete-since header.
24449 2015-07-07  Glenn Morris  <rgm@gnu.org>
24451         * test/automated/ert-tests.el (ert-test-deftest):
24452         Update for recent changes.
24454 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
24456         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
24457         * lisp/emacs-lisp/gv.el (gv-setter): New function.
24458         (gv-invalid-place): New error.
24459         (gv-get): Use them.
24460         (gv-synthetic-place, gv-delay-error): New places.
24461         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
24462         (cl-defgeneric, cl-defmethod): Use gv-setter.
24464 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
24466         Make vc-tests work with MSYS svn program
24467         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
24468         svn is an MSYS program.
24470 2015-07-07  Ken Brown  <kbrown@cornell.edu>
24472         Improve recent change to emacsclient on Cygwin
24473         * lisp/server.el (server-process-filter): Remove redundant check
24474         that 'cygwin-convert-file-name-from-windows' is defined as a
24475         function on Cygwin.  Don't call that function unless its argument
24476         starts with a drive letter.
24478 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
24480         * lisp/emacs-lisp/package.el (package-compute-transaction):
24481         Fix void variable due to `found-something' being in the wrong `let'.
24483 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
24485         * lisp/play/landmark.el: Move to lisp/obsolete/.
24487 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
24489         Have `x-show-tip' handle `right' and `bottom' frame parameters
24490         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
24491         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
24492         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
24493         tooltips also via `right' and `bottom' frame parameters.
24495 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
24497         Add online-help support to describe types
24498         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
24499         (describe-symbol): Improve the selection of default.
24500         * lisp/help-mode.el: Require cl-lib.
24501         (describe-symbol-backends): Move from help-fns.el.
24502         (help-make-xrefs): Use it.
24503         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
24504         for types.
24505         (cl--typedef-regexp): New const.
24506         (find-function-regexp-alist): Add entry for types.
24507         (cl-help-type, cl-type-definition): New buttons.
24508         (cl-find-class): New function.
24509         (cl-describe-type): New command.
24510         (cl--describe-class, cl--describe-class-slot)
24511         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
24512         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
24513         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
24514         New functions.  Moved from eieio-opt.el.
24515         (cl--generic-class-parents): New function, extracted from
24516         cl--generic-struct-specializers.
24517         (cl--generic-struct-specializers): Use it.
24518         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
24519         Improve constructor's docstrings.
24520         (cl-struct-unknown-slot): New error.
24521         (cl-struct-slot-offset): Use it.
24522         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
24523         definition in current-load-list.
24524         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
24525         (eieio--add-new-slot): Set it.
24526         (eieio-defclass-internal): Use new name for current-load-list.
24527         (eieio-oref): Add compiler-macro to warn about unknown slots.
24528         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
24529         as compile-time as well.  Improve constructor docstrings.
24530         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
24531         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
24532         (eieio-class-def): Remove button.
24533         (eieio-help-constructor): Use new name for load-history element.
24534         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
24535         (eieio-method-documentation): Move to cl-generic.el.
24536         (eieio-display-method-list): Use new names.
24537         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
24538         Add "define-linline".
24539         (lisp-fdefs): Remove "defsubst".
24540         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
24541         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
24542         (macroexp--warn-and-return): Use it to avoid inf-loops.
24543         Add `compile-only' argument.
24545 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
24547         python.el: Fix local/remote shell environment setup
24548         * lisp/progmodes/python.el (python-shell-with-environment):
24549         Fix remote/local environment setup.
24550         * test/automated/python-tests.el (python-shell-with-environment-1)
24551         (python-shell-with-environment-2): New tests.
24553 2015-07-06  Glenn Morris  <rgm@gnu.org>
24555         * lisp/simple.el (set-variable): Tweak recent doc fix.
24557 2015-07-06  Ken Brown  <kbrown@cornell.edu>
24559         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
24561 2015-07-06  Glenn Morris  <rgm@gnu.org>
24563         * lisp/simple.el (set-variable): Use user-error for type mismatch.
24565 2015-07-06  Ken Brown  <kbrown@cornell.edu>
24567         * src/emacs.c (main): Don't increase the stack size on Cygwin.
24569 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
24571         (describe-symbol): Rewrite describe-function-or-variable
24572         * lisp/help-fns.el (describe-symbol-backends): New var.
24573         (help-xref-stack-item): Declare.
24574         (describe-symbol): Rename from describe-function-or-variable.
24575         Rewrite using describe-symbol-backends instead of help-xref-interned.
24576         * lisp/help.el (help-map): Use it.
24577         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
24578         (help-xref-interned): Make it into an obsolete alias.
24580         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
24581         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
24582         and cl-letf.
24584 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
24586         Fix parsing glitches in dired-mark-sexp (bug#13575)
24587         * lisp/dired-x.el (dired-x--string-to-number): New function.
24588         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
24589         of directory-listing-before-filename-regexp.  Consider
24590         forward-word harmful and replace it.  Add more verbiage in
24591         comments and doc string.
24593 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
24595         python.el: Respect process environment for remote shells
24596         * lisp/progmodes/python.el
24597         (python-shell-calculate-process-environment): Calculate
24598         process-environment or tramp-remote-process-environment depending
24599         whether current file is remote.
24600         (python-shell-calculate-exec-path): Calculate exec-path or
24601         tramp-remote-path depending whether current file is remote.
24602         (python-shell-with-environment): New macro.
24603         (python-shell-prompt-detect, python-shell-calculate-command)
24604         (python-shell-make-comint, python-check): Use it.
24606         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
24607         * lisp/progmodes/python.el (python-shell--interpreter)
24608         (python-shell--interpreter-args): New vars.
24609         (inferior-python-mode, python-shell-make-comint): Use them.
24611         python.el: Fixes for IPython 3.x  (Bug#20580)
24612         * lisp/progmodes/python.el:
24613         (python-shell-completion-native-setup): Fix IPython 3.x setup.
24614         (python-shell-completion-native-get-completions): Fix timeout
24615         logic.
24617         python.el: Fix mark-defun behavior  (Bug#19665)
24618         * lisp/progmodes/python.el (python-mark-defun): New function.
24619         * test/automated/python-tests.el (python-mark-defun-1)
24620         (python-mark-defun-2, python-mark-defun-3): New tests.
24622 2015-07-05  Glenn Morris  <rgm@gnu.org>
24624         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
24625         such as "extends(parent), private".  (Bug#20969)
24626         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
24627         New tests.
24629 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
24631         Avoid duplicate calls to current_timespec
24632         * src/process.c (wait_reading_process_output):
24633         Cache current_timespec results as long as we're not waiting.
24635 2015-07-05  Ian Kelling  <ian@iankelling.org>
24637         Avoid returning early reading process output due to SIGIO
24638         * src/process.c (wait_reading_process_output): Extend the behavior of
24639         not breaking due to not finding output when a timer has lowered the
24640         timeout to include when SIGIO lowers the timeout.
24642         Don't return as fast reading any process output
24643         * src/process.c (wait_reading_process_output):
24644         The patch for Bug#17647 returns too fast sometimes when reading
24645         from any processes.  Revert part of it, and limit the timeout more
24646         sensibly (Bug#20978).
24648         Refactor timeouts in wait_reading_process_output
24649         * src/process.c (wait_reading_process_output):
24650         Simplify timeouts with an enum.  Remove a redundant condition.
24651         (Bug#20978)
24653         Remove ADAPTIVE_READ_BUFFERING ifdef
24654         * src/process.c (make-process, make-pipe-process, deactivate_process)
24655         (wait_reading_process_output, read_process_output, send_process)
24656         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
24657         added in case there was an operating system in which it was not
24658         useful.  That was 11 years ago and it hasn't happened.  Make
24659         development easier by not considering the effect of changes on a
24660         theoretical OS where this is disabled (Bug#20978).
24662 2015-07-05  Glenn Morris  <rgm@gnu.org>
24664         * lisp/simple.el (set-variable): Doc fix.
24666         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
24668 2015-07-05  Ian Kelling  <ian@iankelling.org>
24670         accept-process-output fix
24671         This is a followon to the fix for bug#17647 (Bug#20976).
24672         * src/process.c (status_notify): Fix too high return in some cases.
24674 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
24676         * lisp/character-fold.el (character-fold-table):
24677         Only fold decompositions if at least one character is non-spacing.
24678         (Bug#20975)
24680 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
24682         Merge from gnulib
24683         This incorporates:
24684         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
24685         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
24686         2015-07-02 update-copyright: fix test failure with perl >= 5.22
24687         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
24688         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
24689         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
24690         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
24692 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
24694         Respect `prog-indentation-context' in python.el
24695         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
24696         (python-indent-context, python-indent--calculate-indentation)
24697         (python-info-current-defun)
24698         (python-info-dedenter-opening-block-message)
24699         (python-info-line-ends-backslash-p)
24700         (python-info-beginning-of-backslash)
24701         (python-info-continuation-line-p): Use `prog-widen'.
24702         (python-indent--calculate-indentation)
24703         (python-indent--calculate-levels)
24704         (python-indent-calculate-indentation): Use `prog-first-column'.
24705         (python-indent--calculate-levels): Simplify.
24706         Ignore also initial empty lines for syntax calculation.
24707         * lisp/progmodes/python.el (python-indent-context): Return
24708         :no-indent for first non-empty line, not just in line 1.
24709         * test/automated/python-tests.el (python-indent-base-case)
24710         (python-indent-inside-paren-1, python-indent-inside-paren-2)
24711         (python-indent-inside-paren-3, python-indent-inside-paren-4)
24712         (python-indent-inside-paren-5, python-indent-inside-paren-6)
24713         (python-indent-after-backslash-1)
24714         (python-indent-after-backslash-2)
24715         (python-indent-after-backslash-3)
24716         (python-indent-after-backslash-4, python-indent-inside-string-1):
24717         Expect :no-indent for first non-empty line.
24719 2015-07-04  Daniel Colascione  <dancol@dancol.org>
24721         Factor isearch word description into new function
24722         * lisp/isearch.el (isearch--describe-word-mode): New function.
24723         (isearch-message-prefix, isearch-query-replace): Use it.
24725 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
24727         Fix mouse pointer on w32 when a menu is active
24728         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
24729         shape while a menu is in use.  This started happening since we now
24730         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
24732 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
24734         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
24735         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
24736         parameter.  (Bug#17344)
24738         Have `compilation-set-window' use right window for getting fringes
24739         (Bug#20829)
24740         * lisp/progmodes/compile.el (compilation-set-window):
24741         Take `window-fringes' from argument window.
24743 2015-07-03  Glenn Morris  <rgm@gnu.org>
24745         Update eieio tests for recent eieio-core change.
24746         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
24747         * test/automated/eieio-tests.el
24748         (eieio-test-32-slot-attribute-override-2):
24749         Replace the deleted eieio--class-v with cl--find-class.
24751 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
24753         Fix some issues with `window-divider-mode'
24754         * lisp/frame.el (window-divider-default-places): New option.
24755         (window-divider-mode): Remove option.
24756         (window-divider-mode): Make it a "regular" minor mode.
24757         (window-divider-width-valid-p): Drop frame- prefix.
24758         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
24759         prefix.  Handle `window-divider-default-places'.
24760         (frame--window-divider-mode-set-and-apply): Remove.
24761         (window-divider-default-bottom-width)
24762         (window-divider-default-right-width): Drop :group entries.
24763         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
24764         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
24765         (menu-bar-no-window-divider): Set `window-divider-default-places'
24766         and call `window-divider-mode'.
24767         * doc/emacs/frames.texi (Window Dividers): Document
24768         `window-divider-default-places'.
24770 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
24772         * doc/emacs/display.texi (Displaying Boundaries):
24773         * doc/emacs/search.texi (Word Search): Add cross references.
24775 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
24777         -batch should not affect ‘’ -> `' display
24778         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
24779         -batch (Bug#20926).
24781 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
24783         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
24784         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
24785         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
24786         Use cl--find-class instead.
24788         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
24790 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
24792         Some further fixes in Change Window node (Bug#20183)
24793         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
24794         by "resizing" in section title.  Add some concept indices.
24795         Suggested by N. Jackson (Bug#20183).
24797         * doc/emacs/windows.texi (Change Window): Reference window
24798         dividers.
24800         Document new `window-divider-mode'.
24801         * lisp/frame.el (window-divider-mode): Fix doc-string.
24802         * doc/emacs/frames.texi (Window Dividers): New section.
24804         Improve accessibility of window dividers (Bug#20183)
24805         * lisp/faces.el (window-divider)
24806         (window-divider-first-pixel, window-divider-last-pixel): Change
24807         membership from `frames' to `window-divider' customization group.
24808         * lisp/frame.el (window-divider): New customization group.
24809         (window-divider-mode): New minor mode.
24810         (window-divider-default-bottom-width)
24811         (window-divider-default-right-width): New options.
24812         (frame--window-divider-previous-mode): New variable.
24813         (frame-window-divider-width-valid-p)
24814         (frame--window-divider-mode-apply)
24815         (frame--window-divider-mode-set-and-apply): New functions.
24816         * lisp/menu-bar.el (menu-bar-options-save): Save
24817         window-divider-mode settings.
24818         (menu-bar-window-divider-customize)
24819         (menu-bar-bottom-and-right-window-divider)
24820         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
24821         (menu-bar-no-window-divider): New functions.
24822         (menu-bar-showhide-window-divider-menu): New variable.
24823         (menu-bar-showhide-menu): Show/hide window divider menu.
24824         * lisp/mouse.el (mouse-split-window-vertically)
24825         (mouse-split-window-horizontally): Replace `error' by
24826         `user-error'.  Bind `window-combination-resize' to nil.
24827         (top-level): Add/reorder mouse key bindings on mode- and
24828         vertical-line.
24830 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
24832         Don't display ‘’ as `' under X in en_GB
24833         The curved quote setup code invokes (char-displayable-p ?‘),
24834         but this isn’t reliable until after the X frame replaces the
24835         terminal frame (Bug#20926).
24836         * lisp/international/mule-cmds.el (set-locale-environment):
24837         Move curved quote setup code from here ...
24838         * lisp/startup.el (command-line): ... to here, after creating
24839         the X frame.
24841 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
24843         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
24845         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
24846         to reverse the meaning (Bug#15631).
24848 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
24850         Be more tolerant to fonts named "Foobar-12"
24851         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
24852         don't barf; instead, request a new fontset to be generated.  This
24853         avoids unnecessarily rejecting fonts named against XLFD rules.  See
24854         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
24855         for the description of the original problem.
24856         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
24857         by a hyphen in a font's name.
24859         Fix value of posn-at-pont in R2L lines
24860         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
24861         coordinate of -1, for a newline in a right-to-left line that
24862         overflowed into the left fringe.
24864 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
24866         (cl--copy-slot-descriptor): Copy the `props' alist as well
24867         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
24868         Rename from cl--copy-slot-descriptor.
24869         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
24871 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
24873         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
24874         (xterm-query-timeout): New var.
24875         (xterm--query): Use it.  Fallback on async method if we timeout before
24876         getting the first byte of the reply (bug#12354).
24878 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
24880         Spelling fixes
24881         * lisp/character-fold.el (character-fold-search):
24882         * lisp/emacs-lisp/package.el (package-hidden-regexps):
24883         Fix typos.
24885 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
24887         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
24889 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
24891         In strings, prefer plain ` and ' to \` and \'
24892         * lisp/allout.el (allout-insert-listified):
24893         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
24894         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
24895         (ls-lisp-string-lessp):
24896         * lisp/menu-bar.el (menu-bar-open):
24897         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
24898         * lisp/progmodes/compile.el (compile):
24899         * lisp/progmodes/etags.el (tags-loop-scan):
24900         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
24901         * lisp/subr.el (posn-actual-col-row):
24902         * lisp/term/pc-win.el (x-list-fonts):
24903         * lisp/textmodes/texinfmt.el (texinfmt-version):
24904         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
24905         * lisp/time.el (display-time-world-list):
24906         * lisp/tmm.el (tmm-menubar):
24907         * src/buffer.c (syms_of_buffer):
24908         * src/fileio.c (syms_of_fileio):
24909         Omit unnecessary and confusing backslash before quote.
24910         * lisp/erc/erc.el (erc-cmd-LASTLOG):
24911         * lisp/progmodes/flymake.el (flymake-fix-file-name):
24912         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
24913         Fix string that was intended to escape a backslash and not a quote.
24915 2015-06-30  Glenn Morris  <rgm@gnu.org>
24917         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
24919         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
24920         Replace hard-coded lists with wildcard + filter-out.
24922         * configure.ac (system-configuration-features): Add X11, NS.
24924         Improve reproducibility of generated loaddefs file
24925         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
24926         Make the return value the modtime of the input file (if no autoloads).
24927         (update-directory-autoloads): In the "no autoloads" section,
24928         use "most recent modtime" rather than "current time".
24930 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
24932         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
24933         (Bug#20930)
24935 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
24937         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
24939         Add seq-min and seq-max
24940         Bump version number.
24941         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
24942         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
24944 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
24946         Make sure sleep-for always delays for as long as it's told
24947         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
24948         a loop, to ensure we always wait exactly the required amount of
24949         time.  (Bug#15990)
24951 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
24953         Fix pointer signedness glitch
24954         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
24956 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
24958         Don't block changes in mouse pointer inside 'track-mouse'
24959         * etc/NEWS:
24960         * doc/lispref/frames.texi (Mouse Tracking): Document the special
24961         effect of setting 'track-mouse' to 'dragging'.
24962         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
24963         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
24964         * lisp/mouse-drag.el (mouse-drag-throw):
24965         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
24966         to avoid changes in the shape of the mouse pointer.
24967         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
24968         pointer shape when do_mouse_tracking has the value of 'dragging',
24969         not just any non-nil value.  (Bug#20934)
24970         (syms_of_xdisp): DEFSYM 'dragging'.
24972 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
24974         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
24976         * lisp/emacs-lisp/package.el (package-compute-transaction):
24977         Don't assume version sorting.
24979         * lisp/emacs-lisp/package.el (package--save-selected-packages):
24980         Don't save before init time, to avoid overwriting configurations.
24981         (Bug#20855)
24983 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
24985         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
24986         references.
24988 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
24990         Update for the upcoming CFEngine 3.7 release: support macros and
24991         quoted context strings; reformat JSON; indent promise attributes 2
24992         units by default; give function parameter descriptions in the eldoc
24993         glue.
24994         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
24995         Autoload `json-pretty-print'.  Support new features in 3.7.
24996         (cfengine-parameters-indent): Set default promise attribute indent to
24997         2 more than the promise itself.
24998         (cfengine3-macro-regex): New variable to match the new macro syntax.
24999         (cfengine3-font-lock-keywords): Use it to highlight macros.
25000         (cfengine3-indent-line): Use it to indent macros to column 0.
25001         (cfengine3-class-selector-regex): Update for the new quoted strings
25002         format.
25003         (cfengine3-reformat-json-string): New function to reformat a JSON
25004         string using `json-pretty-print'.
25005         (cfengine3-format-function-docstring): Use function parameter
25006         description if it's provided by the cf-promises syntax dump.
25008 2015-06-29  Michael R. Mauger  <michael@mauger.com>
25010         Cygwin emacsclient handles w32 file names
25011         * lisp/server.el (server-process-filter): Allow Cygwin's
25012         emacsclient to be used as a file handler on MS-Windows.
25014 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
25016         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
25017         (bug#20925).
25019 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
25021         * doc/lispref/text.texi (Sticky Properties): Improve wording.
25022         (Bug#20924)
25024         Allow font names that end in "-NN", where NN is a number
25025         * src/font.c (font_load_for_lface): If the font-spec didn't match
25026         any available fonts, try again without interpreting trailing "-NN"
25027         as the font size.  For the description of the original problem, see
25028         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
25030         .gdbinit followup to changes in !USE_LSB_TAG
25031         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
25032         !USE_LSB_TAG, as Emacs no longer does.
25034 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
25036         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
25037         Otherwise `s p' of f and F will stomp on each other's value.
25038         (Bug#20916)
25040 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
25042         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
25043         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
25045 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
25047         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
25048         as additional guess.
25050         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
25051         to a string.
25053 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
25055         apropos-library quoting fix
25056         * lisp/apropos.el (apropos-library): Quote library consistently
25057         with the rest of the quoting used by apropos.
25059         Clarify interpreter-mode-alist doc
25060         * lisp/files.el (interpreter-mode-alist):
25061         Reword to avoid confusing quoting that wasn't working anyway.
25063 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
25065         Sync with Tramp 2.2.12
25066         * doc/misc/trampver.texi:
25067         * lisp/net/trampver.el: Update release number.
25068         * test/automated/tramp-tests.el (tramp-test13-make-directory):
25069         Fix cleanup.
25071 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
25073         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
25075 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
25077         Bind grep-highlight-matches around the rgrep call
25078         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
25079         around the rgrep call (bug#20728).
25081         Put "--color" before the other options in grep-command
25082         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
25083         before the other options in grep-command (bug#20912).
25085         Add --color Grep option to the command dynamically
25086         * lisp/progmodes/grep.el (grep-template, grep-find-template):
25087         Update the description for <C>.  (Bug#20728)
25088         (grep-compute-defaults): Don't add the --color option to
25089         grep-options.  Only add it to grep-command.
25090         (grep-expand-keywords): Expand the env value opts into <C>.
25091         (grep-expand-template): Replace cf in the env with the opts list,
25092         that can include -i and --color.
25093         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
25094         "--color=always" from the template, because we don't have to.
25096 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
25098         cl-extra fixes for most-negative-fixnum
25099         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
25100         Don't mishandle an argument equal to most-negative-fixnum,
25101         whose absolute value equals itself.
25102         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
25104         Initialize cl--gensym-counter to 0
25105         Previously it was initialized to a random value, which made it
25106         harder to reproduce earlier Emacs runs.  The need for a random
25107         value went away when Emacs introduced and used the #: syntax for
25108         uninterned symbols (Bug#20862).
25109         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
25110         Document that cl--gensym-counter now starts with 0.
25111         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
25112         (cl--random-time): Move to near only remaining use.
25113         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
25115         Improve docstring for macroexp-let2
25116         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
25117         Improve as per suggestion by RMS in:
25118         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
25119         Also, rename args to match new doc string.
25121 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
25123         Fix VC test suite on MS-Windows
25124         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
25125         always starts with 3 slashes after the colon.
25126         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
25127         'w32-application-type' to invoke CVS on MS-Windows with properly
25128         formatted CVSROOT directory name.
25130         Add a new function w32-application-type
25131         * src/w32proc.c (Fw32_application_type): New function.
25133         Avoid error in TLS connections due to incorrect format
25134         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
25135         the call to 'error', instead of the unsupported %u.  Reported by
25136         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
25138 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
25140         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
25142 2015-06-26  Leo Liu  <sdl.web@gmail.com>
25144         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
25145         `with-output-to-string' in elisp.
25147         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
25148         with-output-to-string".
25149         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
25151 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
25153         Minor corrections in ELisp manual
25154         * doc/lispref/nonascii.texi (Character Properties): Correct
25155         inaccuracies in description of values of the Unicode properties.
25157         Fix invisible mouse pointers on Windows.
25158         * src/w32fns.c: Include windowsx.h.
25159         (w32_wnd_proc): If the mouse moved and the mouse pointer is
25160         invisible, make it visible again even when the main (Lisp)
25161         thread is busy.
25162         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
25163         garbaging the frame have the input thread call SetCursor.
25165 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
25167         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
25168         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
25169         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
25170         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
25171         (w32_toggle_invisible_pointer): New function.
25172         (w32_create_terminal): Add w32_toggle_invisible_pointer as
25173         toggle_invisible_pointer_hook for this terminal.
25175 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
25177         Doc fix for deletion commands
25178         'delete-char' does not respect the value of 'delete-active-region'.
25179         * doc/emacs/killing.texi (Deletion):
25180         Fix documentation for some single-char deletion commands.
25182         * doc/emacs/help.texi (Apropos):
25183         Improve documentation of 'apropos-do-all'.
25185         * doc/emacs/help.texi (Help Summary):
25186         Improve documentation of 'describe-mode'.
25188 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
25190         Fix submake dependency bug with .h files
25191         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
25192         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
25193         before the submake in $(libsrc) would spin off a subsubmake
25194         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
25196 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
25198         * lisp/character-fold.el (character-fold-table): Reuse `table'.
25200 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
25202         Translate undisplayable ‘ to `
25203         * doc/lispref/help.texi (Keys in Documentation):
25204         * lisp/international/mule-cmds.el (set-locale-environment):
25205         * lisp/term/w32console.el (terminal-init-w32console):
25206         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
25207         If ‘ is not displayable, transliterate it to `, not to '.  See:
25208         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
25210         Fix C99 incompatibilities in Cairo code
25211         * src/image.c (xpm_load) [USE_CAIRO]:
25212         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
25213         Fix pointer signedness problem.
25215 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
25217         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
25218         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
25219         `with-output-to-string' should have the same indent as `progn'.
25220         This is in line with the declaration of `with-output-to-string'.
25222 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
25224         Get ‘./configure; make -C src emacs’ to work
25225         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
25226         * lib-src/Makefile.in (../lib/libgnu.a):
25227         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
25229 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
25231         Fix GC bugs --with-wide-int and Qnil == 0
25232         Use the same alignment for the !USE_LSB_TAG case as for the
25233         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
25234         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
25235         once we changed the representation of symbols so that Qnil == 0.
25236         Problem reported by Eli Zaretskii (Bug#20862).
25237         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
25238         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
25239         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
25240         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
25241         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
25242         This optimization in the !USE_LSB_TAG case is no longer valid when
25243         symbols are represented via offsets.  Change the only use to
25244         assume that pointers might hide in objects.
25245         * src/lisp.h (alignas) [!USE_LSB_TAG]:
25246         Require support in this case, too.
25247         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
25248         This is OK, because the !USE_LSB_TAG case now applies only when
25249         Lisp_Object is wider than void *, so there's no longer any need
25250         to shift the offset.  Not shifting the offset means that
25251         symbol representations have the same alignment as pointers,
25252         which the GC assumes.
25254 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
25256         * doc/lispintro/emacs-lisp-intro.texi (Data types):
25257         Improve documentation of 'substring'.
25259 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
25261         * lisp/character-fold.el (character-fold-table): Fix table generation.
25263 2015-06-24  Glenn Morris  <rgm@gnu.org>
25265         * nextstep/Makefile.in (all): Make it the first target.
25266         (../src/emacs${EXEEXT}): Add rule for making it.
25268 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
25270         * etc/NEWS: Fix mention to old function name.
25272         * lisp/character-fold.el: New file (Bug#20887)
25273         (character-fold-to-regexp): New function.
25274         * lisp/replace.el (replace-search): Check value of
25275         `character-fold-search'.
25276         * lisp/isearch.el: Move character-folding code to
25277         character-fold.el
25278         (isearch-toggle-character-fold): New command.
25279         (isearch-mode-map): Bind it to "\M-sf".
25280         (isearch-mode): Check value of `character-fold-search'.
25282 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
25284         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
25285         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
25286         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
25288         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
25289         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
25291 2015-06-24  Glenn Morris  <rgm@gnu.org>
25293         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
25295 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
25297         lisp/gnus/nnmaildir.el: Silence lexical warnings
25298         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
25299         functional style.
25300         (nnmaildir--update-nov): Remove unused var `numdir'.
25301         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
25302         (nnmaildir-request-group, nnmaildir-request-create-group)
25303         (nnmaildir-request-post, nnmaildir-request-move-article)
25304         (nnmaildir-request-accept-article, nnmaildir-active-number):
25305         Mark unused args.
25306         (nnmaildir-get-new-mail, nnmaildir-group-alist)
25307         (nnmaildir-active-file): Declare.
25308         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
25309         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
25310         `mark', `end', `new-mark', and `mark-sym'.
25311         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
25312         `nlist2'.
25313         (nnmaildir-request-expire-articles):
25314         Remove unused vars `article', `stop' and `nlist2'.
25315         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
25316         `end'.  Use nnmaildir--article when dyn-binding is needed.
25317         Give the value directly in the `let' for `del-mark', `del-action',
25318         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
25319         (nnmaildir-close-server): Declare those local vars that need to be
25320         dyn-bound.
25322 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
25324         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
25326         Port selection info fix to clang
25327         * src/keyboard.h (kbd_buffer_store_event_hold):
25328         Don't assume C11 semantics for alignof (Bug#20756).
25330         Fix bug that munged selection info
25331         On some optimizing C compilers, copying a structure did not
25332         copy the padding bytes between elements, and the type punning
25333         between struct input_data and struct selection_input_data did
25334         not work.  Change the C code to use a proper union type instead.
25335         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
25336         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
25337         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
25338         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
25339         (mark_kboards):
25340         Use union buffered_input_event, not struct input_event.
25341         (clear_event, deliver_input_available_signal, process_special_events):
25342         Remove unnecessary forward decls.
25343         (kbd_buffer_store_buffered_event): New function, mostly just the
25344         old kbd_buffer_store_event_hold, except its argument is of type
25345         union buffered_input_event, not struct input_event.
25346         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
25347         not needed otherwise.  Argument is now of type
25348         struct selection_input_event *, not struct input_event *.
25349         All callers changed.
25350         (clear_event): Arg is now of type union buffered_input_event *,
25351         not struct input_event *.  All callers changed.
25352         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
25353         (union buffered_input_event): New type.
25354         (kbd_buffer_store_event_hold): Now an inline function,
25355         defined here.
25356         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
25357         (struct input_event): Use it.
25358         * src/xselect.c (struct selection_event_queue):
25359         Make elements be of type struct selection_input_event,
25360         not struct input_event.
25361         (selection_input_event_equal): New static function.
25362         (x_queue_event): Use it.
25363         (x_queue_event, x_decline_selection_request)
25364         (x_selection_current_request, x_reply_selection_request)
25365         (x_handle_selection_request, x_handle_selection_clear)
25366         (x_handle_selection_event): Use struct selection_input_event,
25367         not struct input_event.  All callers changed.
25368         (x_convert_selection): Omit unused first arg.  All callers changed.
25369         (Fx_disown_selection_internal): Omit unnecessary union.
25370         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
25371         rather than rolling our own equivalent.  Prefer sie.kind when
25372         setting up that kind of structure.
25373         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
25374         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
25375         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
25376         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
25377         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
25378         (SELECTION_EVENT_TIME, x_handle_selection_event):
25379         Arg is now of type struct selection_input_event *)
25380         not struct input_event *.  All callers changed.
25382 2015-06-23  Glenn Morris  <rgm@gnu.org>
25384         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
25386 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
25388         * lisp/isearch.el: Fold many unicode characters to ASCII.
25389         (isearch-character-fold-search, isearch--character-fold-extras)
25390         (isearch--character-fold-table): New variable.
25391         (isearch--character-folded-regexp): New function.
25392         (isearch-search-fun-default): Use them.
25393         * lisp/replace.el (replace-character-fold): New variable.
25394         (replace-search): Use it.
25395         * etc/NEWS: Document it.
25397 2015-06-23  Glenn Morris  <rgm@gnu.org>
25399         Check for an input event before showing a dialog box.  (Bug#20813)
25400         * lisp/subr.el (y-or-n-p):
25401         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
25402         as last-nonmenu-event.
25404 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
25406         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
25407         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
25408         (switch-to-prev-buffer, switch-to-next-buffer): Respect
25409         switch-to-visible-buffer independent of the windows history.
25411 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
25413         * src/keyboard.c (last_timer_event): Remove unused var.
25415 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
25417         * test/automated/package-test.el (package-test-update-listing):
25418         Fix test.
25420 2015-06-23  Glenn Morris  <rgm@gnu.org>
25422         Revert 2014-06-25 nextstep/Makefile change.
25423         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
25424         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
25425         not as an order-only prerequisite.
25427         * configure.ac (--with-ns): Enable by default on OS X.
25429 2015-06-23  Leo Liu  <sdl.web@gmail.com>
25431         Fix shell-for/backward-command to exclude spaces
25432         * lisp/shell.el (shell-forward-command, shell-backward-command):
25433           Handle the 'move case from re-search-forward/backward.
25434           fixes debbugs:20873
25436 2015-06-22  Juri Linkov  <juri@linkov.net>
25438         * lisp/replace.el (query-replace-read-from): Add separator to
25439         the local binding of text-property-default-nonsticky.  (Bug#20690)
25441         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
25442         (Bug#20785)
25444 2015-06-22  Ken Brown  <kbrown@cornell.edu>
25446         Enable CPU profiling on Cygwin
25447         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
25448         change that undefined this.
25449         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
25450         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
25451           Cygwin.
25453         Improve diagnostics of profiler-cpu-start
25454         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
25455         return -1 if the sampling interval is invalid.
25456         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
25457         fails.  (Bug#20843)
25459 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
25461         * lisp/emacs-lisp/package.el: Exclude packages by name.
25462         (package-hidden-regexps): New variable.
25463         (package-menu--refresh): Use it.
25464         (package-menu-hide-package): New command.
25466         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
25468 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
25470         Fix debug-timer-check on systems without HAVE_TIMERFD
25471         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
25472         the expired timers, since wait_reading_process_output doesn't.
25473         (debug_timer_callback): Enlarge the tolerance to 20 msec.
25475         Fix RCS crashes in vc-test
25476         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
25477         ports of 'ci' on MS-Windows by always passing the -t- switch.
25479 2015-06-22  Glenn Morris  <rgm@gnu.org>
25481         * doc/emacs/package.texi (Packages):
25482         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
25484         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
25486 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
25488         Port tests to help-quote-translation
25489         * test/automated/ert-x-tests.el (ert-test-describe-test):
25490         * test/automated/package-test.el (package-test-describe-package)
25491         (package-test-signed): Allow straight quotes, too.
25493 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
25495         Make find-function-on-key use the current window
25496         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
25497         Extract from `find-function-on-key', add a second argument.
25498         (find-function-on-key): Use it (bug#19679).
25499         (find-function-on-key-other-window)
25500         (find-function-on-key-other-frame): New commands.
25502 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
25504         Revert "Define `map-elt' as a generalized variable"
25505         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
25507 2015-06-21  Ken Brown  <kbrown@cornell.edu>
25509         Drop support for CPU profiling on Cygwin
25510         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
25511         (Bug#20843)
25513 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
25515         Fix some “nested” quoting confusion in doc strings
25516         * lisp/emacs-lisp/advice.el (ad-map-arglists):
25517         * lisp/kermit.el (kermit-clean-on):
25518         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
25519         * src/keyboard.c (Frecursive_edit):
25520         Use curved quotes when quoting text containing apostrophe,
25521         so that the apostrophe isn't curved in the output.
25523 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
25525         Define `map-elt' as a generalized variable
25526         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
25527         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
25528         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
25529         `setf' with `map-elt'.
25530         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
25532 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
25534         Improve error handling in tramp-adb.el
25535         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
25536         Improve error handling.
25538 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
25540         Reuse `alist-get' in map.el
25541         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
25542         elements.
25544 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
25546         Fix bytecomp-tests--warnings when $TMPDIR has a long name
25547         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
25548         Allow the warning to begin on the 3rd, not only 2nd line, which
25549         happens if temporary-file-directory has a very long name.
25551         Expect 2 icalendar tests to fail on MS-Windows
25552         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
25553         (icalendar-real-world): Make them expected failures on MS-Windows.
25555 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
25557         Improve port of settings UI to older displays
25558         * lisp/cus-start.el (standard): Don't assume curved quotes are
25559         easily distinguishable when users are tinkering with a setting
25560         that affects how curved quotes are generated.
25562         Fix quoting in electric-quote-mode doc string
25563         * lisp/electric.el (electric-quote-mode): Fix quoting.
25564         This is a fallout from the recent change introducing
25565         ‘help-quote-translation’.
25567         Spelling fix
25569         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
25571         * src/doc.c (syms_of_doc): Remove unused symbols.
25573 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
25575         * lisp/window.el (window-state-put): Undedicate target window
25576         before putting STATE into it.  (Bug#20848)
25578 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
25580         Merge from origin/emacs-24
25581         a5e6f33 Fixes: debbugs:20832
25582         b9f02cf Fixes: debbugs:20832
25584 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
25586         Fix file-in-directory-p when the directory is UNC
25587         * lisp/files.el (file-in-directory-p): Support files and
25588         directories that begin with "//".  (Bug#20844)
25590 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
25592         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
25593         in the minibuffer.  (Bug#20832)
25595 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
25597         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
25598         for adding new todo file is empty but modified.  (Bug#20832)
25600 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
25602         (filepos-to-bufferpos): Further tweaks to the utf-16 code
25603         * lisp/international/mule-util.el (filepos-to-bufferpos):
25604         Fix typo.  Move non-exact check to the utf-16 branch (the only one
25605         affected).  Don't use byte-to-position for the utf-16 case.
25607 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
25609         Minor fixes in filepos-to-bufferpos
25610         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
25611         test for utf-8-emacs.  Exempt single-byte encodings from the
25612         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
25613         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
25614         UTF-16 encoded files for CR-LF EOLs.
25616 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
25618         Improve the optional translation of quotes
25619         Fix several problems with the recently-added custom variable
25620         help-quote-translation where the code would quote inconsistently
25621         in help buffers.  Add support for quoting 'like this', which
25622         is common in other GNU programs in ASCII environments.  Change
25623         help-quote-translation to use more mnemonic values: values are now the
25624         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
25625         traditional Emacs help-buffer quoting style `like this'.  Change the
25626         default behavior of substitute-command-keys to match what's done in
25627         set-locale-environment, i.e., quote ‘like this’ if displayable,
25628         'like this' otherwise.
25629         * doc/lispref/help.texi (Keys in Documentation): Document
25630         new behavior of substitute-command-keys, and document
25631         help-quote-translation.
25632         * doc/lispref/tips.texi (Documentation Tips):
25633         Mention the effect of help-quote-translation.
25634         * etc/NEWS: Mention new behavior of substitute-command-keys,
25635         and merge help-quote-translation news into it.
25636         When talking about doc strings, mention new ways to type quotes.
25637         * lisp/cedet/mode-local.el (overload-docstring-extension):
25638         Revert my recent change to this function, which shouldn't be
25639         needed as the result is a doc string.
25640         * lisp/cedet/mode-local.el (mode-local-print-binding)
25641         (mode-local-describe-bindings-2):
25642         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
25643         * lisp/cus-theme.el (describe-theme-1):
25644         * lisp/descr-text.el (describe-text-properties-1, describe-char):
25645         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
25646         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
25647         (eieio-help-constructor):
25648         * lisp/emacs-lisp/package.el (describe-package-1):
25649         * lisp/faces.el (describe-face):
25650         * lisp/help-fns.el (help-fns--key-bindings)
25651         (help-fns--compiler-macro, help-fns--parent-mode)
25652         (help-fns--obsolete, help-fns--interactive-only)
25653         (describe-function-1, describe-variable):
25654         * lisp/help.el (describe-mode):
25655         Use substitute-command-keys to ensure a more-consistent quoting
25656         style in help buffers.
25657         * lisp/cus-start.el (standard):
25658         Document new help-quote-translation behavior.
25659         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
25660         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
25661         (help-xref-url-regexp):
25662         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
25663         * lisp/wid-edit.el (widget-documentation-link-regexp):
25664         Also match 'foo', in case we're in a help buffer generated when
25665         help-quote-translation is ?'.
25666         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
25667         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
25668         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
25669         (Fsubstitute_command_keys): Document and implement new behavior.
25670         (Vhelp_quote_translation): Document new behavior.
25672 2015-06-18  Glenn Morris  <rgm@gnu.org>
25674         * lisp/cus-start.el (help-quote-translation): Add :version.
25676         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
25678 2015-06-18  Alan Mackenzie  <acm@muc.de>
25680         Make translation of quotes to curly in doc strings optional.
25681         * src/doc.c (traditional, prefer-unicode): New symbols.
25682         (help-quote-translation): New variable.
25683         (Fsubstitute_command_keys): Make translation of quotes dependent on
25684         `help-quote-translation'; also translate curly quotes back to ASCII
25685         ones.
25686         * lisp/cus-start.el (top-level): Add a customization entry for
25687         `help-quote-translation'.
25689 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
25691         * lisp/emacs-lisp/package.el: Don't always propagate async errors
25692         (package--with-work-buffer-async): Only propagate the error if the
25693         callback returns non-nil.
25694         (package--download-one-archive): Return nil on the signature
25695         checking callback if we accept unsigned.
25696         (package--download-and-read-archives): Return non-nil on the
25697         archive download callback.
25699 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
25701         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
25702         * src/nsfns.m (Fx_create_frame):
25703         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
25704         image_cache_refcount before first x_default_parameter call.
25706 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
25708         Improve and extend filepos-to-bufferpos
25709         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
25710         Don't barf if F returns nil for some argument.
25711         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
25712         that every encoding of type 'charset' is single-byte.
25714 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
25716         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
25717         Properly delete packages.  (Bug#20836)
25719 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
25721         Update data files from just-released Unicode 8.0
25722         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
25723         status.
25724         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
25725         * admin/unidata/BidiMirroring.txt:
25726         * admin/unidata/BidiBrackets.txt:
25727         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
25729 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
25731         Document curved quotes a bit better
25732         * doc/emacs/basic.texi (Inserting Text):
25733         Mention C-x 8.  Change example to use curved quote rather
25734         than infinity, as this lets us give more ways to do it.
25735         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
25736         and quotation marks.
25737         * doc/emacs/text.texi (Quotation Marks):
25738         * doc/lispref/tips.texi (Documentation Tips):
25739         Add "curly quotes" and "curved quotes" to the index.
25740         * doc/emacs/text.texi (Quotation Marks):
25741         Give the C-x 8 shorthands for curved quotes.
25742         Cross-reference to "Quotation Marks".
25744 2015-06-17  Daiki Ueno  <ueno@gnu.org>
25746         Add pinentry.el for better GnuPG integration
25747         * lisp/pinentry.el: New file.
25748         * etc/NEWS: Add entry about pinentry.el.
25749         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
25750         (Bug#20550)
25752 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
25754         * lisp/emacs-lisp/package.el: Slightly better error reporting.
25756 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
25758         (define-minor-mode): Use setq-default for :global minor modes
25759         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
25760         Use setq-default for :global minor modes (bug#20712).
25762 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
25764         Avoid infloop in redisplay with tall images
25765         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
25766         down near ZV.  (Bug#20808)
25767         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
25768         instead of CHARPOS.
25770 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
25772         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
25773         Fix error reporting.
25775         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
25777         * lisp/emacs-lisp/package.el: Revert buffer after any operation
25778         Call `package-menu--post-refresh' after any operation that changes
25779         the package database (`package-install' and `package-delete').  To
25780         avoid performance issues in large transactions, these functions
25781         add `post-refresh' to `post-command-hook' instead of calling it
25782         immediately.
25783         (package-menu--mark-or-notify-upgrades): New function.
25784         (list-packages): Add it to `package--post-download-archives-hook'.
25785         (package-menu--post-refresh): Lose the upgrade-checking code, add
25786         code to remove itself from `post-command-hook'.
25787         (package-install, package-delete): Add it to `post-command-hook'.
25788         (package-menu-execute): Don't call `package-menu--post-refresh'.
25790 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
25792         Add missing function xref-location-group for elisp-mode.
25793         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
25795 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
25797         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
25798         The behavior now matches the description in the manual.  (Bug#20783)
25800 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
25802         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
25804 2015-06-17  Glenn Morris  <rgm@gnu.org>
25806         Generate char-script-table from Unicode source.  (Bug#20789)
25807         * admin/unidata/Makefile.in (AWK): New, set by configure.
25808         (all): Add charscript.el.
25809         (blocks): New variable.
25810         (charscript.el, ${unidir}/charscript.el): New targets.
25811         (extraclean): Also remove generated charscript.el.
25812         * admin/unidata/blocks.awk: New script.
25813         * admin/unidata/Blocks.txt: New data file, from unicode.org.
25814         * lisp/international/characters.el: Load charscript.
25815         * src/Makefile.in (charscript): New variable.
25816         (${charscript}): New target.
25817         (${lispintdir}/characters.elc): Depend on charscript.elc.
25818         (temacs$(EXEEXT)): Depend on charscript.
25820         * lisp/international/characters.el (char-script-table): Tweak
25821         some ranges to better match the source.  (Bug#20789#17)
25823         Remove "no-byte-compile: t" from a few files.
25824         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
25825         * lisp/obsolete/patcomp.el: No reason not to compile these.
25827 2015-06-16  Glenn Morris  <rgm@gnu.org>
25829         Fix some typos in copied Unicode data.  (Bug#20789)
25830         * lisp/international/characters.el (char-script-table):
25831         * lisp/international/fontset.el (script-representative-chars)
25832         (setup-default-fontset): Fix typos.
25834         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
25835         Don't print filename twice (it's in the prefix now).
25837         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
25838         No longer needed.
25840         Address a compilation warning.
25841         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
25842         Replace 't' with '_' in pcase.
25844         Address some check-declare warnings.
25845         * lisp/simple.el (tabulated-list-print):
25846         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
25847         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
25848         (ns-get-selection): Update declarations.
25850         Address some compilation warnings.
25851         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
25852         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
25853         Replace 't' with '_' in pcase.
25855         Address some compilation warnings.
25856         * lisp/face-remap.el (text-scale-adjust):
25857         * lisp/menu-bar.el (popup-menu-normalize-position):
25858         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
25859         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
25860         * lisp/emacs-lisp/generator.el (cps--transform-1):
25861         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
25862         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
25863         * lisp/progmodes/octave.el (octave-goto-function-definition)
25864         (octave-find-definition-default-filename):
25865         Replace 't' with '_' in pcase.
25867         * lisp/emacs-lisp/pcase.el (pcase--u1):
25868         Paper-over today's bootstrap failure.
25870 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
25872         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
25874         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
25876         Better confirmation message in `find-alternate-file' (Bug#20830)
25877         * lisp/files.el (find-alternate-file'): Improve the confirmation
25878         message to show the buffer name.
25880         Better docstring for null.  (Bug#20815)
25881         * src/data.c (null): Improves the docstring, saying what null returns
25882         when OBJECT is non-nil.
25884 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
25886         * lisp/net/newst-treeview.el: Use lexical-binding.
25888         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
25889         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
25890         New auxiliary function, extracted from filepos-to-bufferpos.
25891         Make sure it terminates.
25892         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
25893         Add support for the `exact' quality.
25895 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
25897         Identify feeds in newsticker treeview with :nt-feed property
25898         * lisp/net/newst-treeview.el:
25899         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
25901 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
25903         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
25904         (pcase--self-quoting-p): Floats aren't self-quoting.
25905         (pcase): Tweak docstring.
25906         (pcase--u1): Deprecate the t pattern.  Improve error detection for
25907         the nil pattern.
25908         (\`): Tweak docstring.  Signal an error for unrecognized cases.
25909         (bug#20784)
25911 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
25913         Fix infloop in filepos-to-bufferpos
25914         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
25915         offset calculation, and make it conditional on the eol-type of the
25916         file's encoding.  (Bug#20825)
25918 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
25920         Fix handling of image cache refcounts.  (Bug#20802)
25921         This backports Eli Zaretskii's solution of this problem for W32
25922         to X and NS.
25923         * src/nsfns.m (image_cache_refcount): Define unconditionally.
25924         (unwind_create_frame): If the image cache's reference count
25925         hasn't been updated yet, do that now.
25926         (Fx_create_frame): Set image_cache_refcount unconditionally.
25927         * src/xfns.c (image_cache_refcount): Define unconditionally.
25928         (unwind_create_frame): If the image cache's reference count
25929         hasn't been updated yet, do that now.
25930         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
25931         unconditionally.
25932         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
25933         X and NS.
25935 2015-06-16  Nils Ackermann  <nils@ackermath.info>
25937         Improve reftex-label-regexps default value
25938         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
25939         keyvals label regexp more strict to better cope with unbalanced
25940         brackets common in math documents.
25942 2015-06-16  Glenn Morris  <rgm@gnu.org>
25944         * doc/emacs/calendar.texi (Format of Diary File):
25945         Move "nonmarking" from here...
25946         (Displaying the Diary): ... to here.
25948         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
25949         Swap the order of these nodes.
25950         * doc/emacs/emacs.texi: Update detailed menu for the above change.
25952         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
25953         Update date of examples.
25954         (Diary, Format of Diary File): Move example from former to latter.
25955         Reduce duplication.
25957         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
25958         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
25959         Don't set no-byte-compile in the outputs.
25960         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
25962 2015-06-15  Glenn Morris  <rgm@gnu.org>
25964         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
25965         * doc/emacs/calendar.texi (Diary, Format of Diary File):
25966         Update for above diary-file change.
25968         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
25969         (apply-macro-to-region-lines): Use user-error.
25971         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
25972         (pages-directory-for-addresses): Doc fixes.
25974 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
25976         * lisp/info.el: Cleanup bytepos/charpos issues
25977         * lisp/international/mule-util.el: Use lexical-binding.
25978         (filepos-to-bufferpos): New function.
25979         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
25980         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
25981         (Info-read-subfile, Info-search): Use 0-based file positions.
25983         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
25984         (perl--syntax-exp-intro-keywords): New var.
25985         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
25986         (bug#20800).
25988 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
25990         Fix quoting when making derived mode docstring
25991         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
25992         Nest regexp-quote inside format, not the reverse.
25993         Problem reported by Artur Malabarba in:
25994         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
25996 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
25998         Fix current-iso639-language on MS-Windows
25999         * lisp/international/mule-cmds.el (set-locale-environment):
26000         Downcase the locale name before interning it.  This is so the
26001         'current-iso639-language' on MS-Windows matches the ':lang'
26002         property of font-spec objects.
26004         Limit Symbola usage some more
26005         * lisp/international/fontset.el (setup-default-fontset): Limit
26006         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
26007         (Bug#20727)
26009 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
26011         * lisp/emacs-lisp/map.el (map-let): Better docstring.
26013 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
26015         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
26016         (help-fns-test-funny-names): Spelling fixes.
26018 2015-06-14  Glenn Morris  <rgm@gnu.org>
26020         * lisp/version.el (emacs-repository-version-git): Demote errors.
26021         Check result is a hash.
26023 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
26025         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
26026         Catch errors that happen before going async.  (Bug#20809)
26028 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
26030         Another improvement of documentation of set-fontset-font
26031         * doc/lispref/display.texi (Fontsets): Say explicitly that
26032         CHARACTER can be a single codepoint.
26033         * src/fontset.c (Fset_fontset_font): Doc fix.
26035         Another improvement for symbol and punctuation characters
26036         * lisp/international/fontset.el (setup-default-fontset): Exclude
26037         from Symbola character ranges for symbols and punctuation covered
26038         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
26039         installed and where its coverage of symbols and punctuation is
26040         known to be good.  (Bug#20727)
26042 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
26044         Some generic support for multi-mode indentation.
26045         * lisp/progmodes/prog-mode.el (prog-indentation-context):
26046         New variable.
26047         (prog-first-column, prog-widen): New convenience functions.
26049 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
26051         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
26052         Don't assume that `tabulated-list-printer' will leave point at the
26053         end of the buffer.  (Bug#20810)
26055 2015-06-13  Glenn Morris  <rgm@gnu.org>
26057         Tweaks for getting repository version; a bit more like it was for bzr
26058         * lisp/version.el (emacs-repository-version-git)
26059         (emacs-repository--version-git-1): New functions,
26060         split from emacs-repository-get-version.
26061         (emacs-repository-get-version): Make the second argument meaningful.
26063         * lisp/startup.el (command-line-1): Inform if skipping relative
26064         file names due to deleted PWD.
26066         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
26067         when starup directory is missing.  (Bug#18851)
26068         (errno.h): Include it.
26070 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
26072         Better fix for documenting `X as "`X"
26073         Fix suggested by Stefan Monnier.
26074         * lisp/help-fns.el (help-fns--signature):
26075         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
26076         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
26077         Don't treat `X specially, as help-fns--signature now handles this.
26079 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
26081         Improve the default fontset when Symbola is not installed
26082         * lisp/international/fontset.el (setup-default-fontset): Only
26083         prepend Symbola and FreeMono font specs for symbols and
26084         punctuation; do not replace the default spec for them.  This
26085         should have better results when Symbola/FreeMono are not
26086         installed.  (Bug#20727)
26088         Improve documentation of ':lang' in font specs
26089         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
26090         use of the ':lang' property of the font spec.
26091         * doc/emacs/frames.texi (Fonts): Document the language names that
26092         can be in the STYLE part of XLFD.
26093         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
26094         property.
26096         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
26098         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
26100         Revert last change in fontset.el
26101         * lisp/international/fontset.el (setup-default-fontset): Revert
26102         the change "Configure Symbola font only if installed", since font
26103         search is evidently not yet set up when this function is called.
26104         (Bug#20727)
26106 2015-06-12  Glenn Morris  <rgm@gnu.org>
26108         Ensure early startup warnings are visible at the end.  (Bug#20792)
26109         * lisp/emacs-lisp/warnings.el (display-warning):
26110         If startup isn't complete, delay the warning.
26111         * lisp/startup.el (normal-top-level, command-line):
26112         Let display-warning automatically handle the needed delays.
26113         Run delayed-warnings-hook.
26115         * lisp/version.el (emacs-repository-get-version):
26116         Avoid calling external executable if possible.  (Bug#20799)
26118 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
26120         Document `X as "`X", not as "(` X)"
26121         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
26122         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
26124         * src/print.c (print_object): Minor simplification.
26126 2015-06-12  Glenn Morris  <rgm@gnu.org>
26128         * src/buffer.c (init_buffer): Add final newline to message.
26130 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
26132         Configure Symbola font only if installed
26133         * lisp/international/fontset.el (setup-default-fontset):
26134         Don't specify the Symbola font if it's not installed.
26135         Likewise for FreeMono.  (Bug#20727)
26137 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
26139         Configure Symbola font only for symbols and punctuation
26140         * lisp/international/fontset.el (setup-default-fontset): Leave
26141         only symbols and punctuation in the fontset setup for Symbola
26142         font; remove "Greek and Coptic" and "Cyrillic Supplement".
26143         (Bug#20798)
26145 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
26147         Fix crash in fontset-info
26148         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
26149         non-nil.
26151 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
26153         Port to Solaris 10 sparc + Sun C 5.13
26154         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
26155         Adjust to process.c change.
26156         * src/process.c (create_process): Declare volatile variables at
26157         top level of this function, so that they're less likely to be
26158         reused later in the function in the code executed by the vforked
26159         child.  Do not declare locals used only in the vforked child, as
26160         they might share memory with locals still live in the parent.
26161         Instead, use the same variables in the child as in the parent.
26162         This works around a subtle bug that causes a garbage collector
26163         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
26165 2015-06-12  Glenn Morris  <rgm@gnu.org>
26167         * lisp/startup.el (normal-top-level): Don't let *Messages* get
26168         a nil default-directory.
26170 2015-06-11  Glenn Morris  <rgm@gnu.org>
26172         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
26174         Some progress towards starting with PWD deleted.  (Bug#18851)
26175         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
26176         * lisp/startup.el (normal-top-level, command-line-1):
26177         * lisp/minibuffer.el (read-file-name-default):
26178         Handle default-directory being nil.
26180 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
26182         Fix "not a tty" bug on Solaris 10
26183         * configure.ac (PTY_OPEN): Define to plain 'open'
26184         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
26185         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
26186         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
26187         hosts that call grantpt which does its work via a setuid subcommand
26188         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
26189         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
26190         seems relevant in that case too.
26192 2015-06-11  Juri Linkov  <juri@linkov.net>
26194         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
26195         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
26196         (Bug#20785)
26198 2015-06-11  Glenn Morris  <rgm@gnu.org>
26200         * lisp/international/characters.el (char-script-table): Fix typo.
26202 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
26204         Fix quoting of help for functions with odd names
26205         While investigating Bug#20759, I discovered other quoting problems:
26206         C-h f mishandled characters like backslash and quote in function names.
26207         This fix changes the behavior so that 'C-h f pcase RET' now
26208         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
26209         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
26210         in src/lread.c's read1 function says that the backslash will be
26211         needed starting in Emacs 25, which implies that 'format' is
26212         correct and the old pcase documention was wrong to omit the backslash.
26213         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
26214         * lisp/help-fns.el (help-fns--signature):
26215         * lisp/help.el (help-add-fundoc-usage):
26216         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
26217         Use help--make-usage-docstring rather than formatting
26218         help-make-usage.
26219         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
26220         Return raw docstring.
26221         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
26222         raw docstring.  Take more care to distinguish raw from cooked dstrings.
26223         (describe-function-1): Let help-fns--signature substitute
26224         command keys.
26225         * lisp/help.el (help--docstring-quote): New function.
26226         (help-split-fundoc): Use it, to quote funny characters more
26227         systematically.
26228         (help--make-usage): Rename from help-make-usage, since this
26229         should be private.  Leave an obsolete alias for the old name.
26230         (help--make-usage-docstring): New function.
26231         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
26233 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
26235         * lisp/thingatpt.el (in-string-p): Revert last change,
26236         since in-string-p is not used in thingatpt.el but only from outside.
26237         Also, use lexical binding.
26239 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
26241         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
26242         * test/automated/let-alist.el (let-alist-cons): Test it.
26244 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
26246         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
26248 2015-06-10  Glenn Morris  <rgm@gnu.org>
26250         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
26252         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
26253         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
26254         * admin/gitmerge.el (gitmerge-commit-message):
26255         Exclude "skipped" messages from ChangeLog once again.
26257         Slight namespace cleanup for thingatpt.el.
26258         * lisp/thingatpt.el (thing-at-point--in-string-p)
26259         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
26260         (thing-at-point--read-from-whole-string): Rename from
26261         old versions without "thing-at-point--" prefix.
26262         Keep old versions as obsolete aliases.  Update all uses.
26264         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
26265         Move requiring of finder from here...
26266         (checkdoc-package-keywords): ... to here.
26268         Use 'user-error' in a few calendar files.
26269         * lisp/calendar/appt.el (appt-add):
26270         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
26271         (calendar-generate):
26272         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
26273         Replace 'error' with 'user-error'.
26275         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
26277         * lisp/files-x.el (add-file-local-variable):
26278         Special-case 'lexical-binding'.  (Bug#20641)
26280         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
26281         No longer autoload.
26282         * doc/misc/autotype.texi (Executables):
26283         Undocument executable-self-display.
26285         * lisp/progmodes/executable.el (executable-self-display):
26286         Use non-obsolete tail syntax.  (Bug#20779)
26287         (executable-self-display): Doc update.
26289 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
26291         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
26292         (finder-known-keywords): Silence byte-compiler.
26294 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
26296         * lisp/simple.el (eval-expression): Macroexpand before evaluating
26297         (bug#20730).
26299         * lisp/progmodes/sh-script.el: Better handle nested quotes.
26300         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
26301         (sh-font-lock-quoted-subshell): Make sure double quotes within single
26302         quotes don't mistakenly end prematurely the surrounding string.
26304         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
26306 2015-06-09  Glenn Morris  <rgm@gnu.org>
26308         * test/automated/Makefile.in (ELFILES): Sort.
26310         * Makefile.in (SUBDIR_MAKEFILES):
26311         * lwlib/Makefile.in (WARN_CFLAGS):
26312         Use built-in Make functions rather than echo+sed.
26314 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
26316         Update char-script-table
26317         * lisp/international/characters.el (char-script-table): Update
26318         from Unicode 8.0 Draft.
26320         Improve font selection for punctuation and other symbols
26321         * src/fontset.c (face_for_char): If the character's script is
26322         'symbol', and the font used for ASCII face has a glyph for it, use
26323         the font for the ASCII face instead of searching the fontsets.
26324         This comes instead of NS-specific code that used the current
26325         face's font instead, which is now disabled due to undesirable
26326         consequences.  (Bug#20727)
26328 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
26330         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
26331         Skip past `#' to find BEG (bug#20771).
26332         * test/automated/elisp-mode-tests.el
26333         (elisp-completes-functions-after-hash-quote): New test.
26335 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
26337         Fix compilation warning/error in --without-x builds
26338         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
26339         code on HAVE_WINDOW_SYSTEM.
26341         Improve the default fontset wrt symbols
26342         * lisp/international/fontset.el (setup-default-fontset): Better
26343         setup of fontset-default for symbols: use Symbola and FreeMono.
26344         (Bug#20727)
26346 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
26348         Add new command checkdoc-package-keywords
26349         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
26350         New defcustom.
26351         (checkdoc-list-of-strings-p): Add doc.
26352         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
26353         non-nil, call `checkdoc-package-keywords'.
26354         (checkdoc-get-keywords): New defun.
26355         (checkdoc-package-keywords): New command.  Warns if the current file
26356         has package.el-style keywords that aren't in `finder-known-keywords'.
26357         * etc/NEWS: Add entry.
26359 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
26361         Avoid crashes when key-binding is called from a timer
26362         * src/keymap.c (Fkey_binding): Don't segfault if called with an
26363         empty vector as KEY.  (Bug#20705)
26365         Fix a thinko in arc-mode.el
26366         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
26367         non-Zip64 case.  (Bug#20769)
26369 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
26371         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
26373 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
26375         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
26376         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
26377         "*warn*", print the warning to the standard output.  (bug#20754)
26379 2015-06-07  Glenn Morris  <rgm@gnu.org>
26381         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
26383         * src/font.c (syms_of_font) <font-log>: Doc fix.
26385         Remove the obsolete leading "*" from some C doc strings.
26386         * src/coding.c (syms_of_coding):
26387         * src/font.c (syms_of_font): Remove leading "*" from docs.
26388         * lisp/cus-start.el (enable-character-translation): Add it.
26390 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
26392         Move gen_origin from program to data
26393         That way, 'make change-history' needs to change only ChangeLog.2,
26394         instead of having to change two files.
26395         * ChangeLog.2: Add commit info for range that this file covers.
26396         * Makefile.in (new_commit_regexp): New macro.
26397         (change-history-nocommit): Simplify, by putting what used to be
26398         the gen_origin value into the data (ChangeLog.2) rather than
26399         into the program (gitlog-to-emacslog).
26400         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
26401         the input file (e.g., ChangeLog.2) rather than by having a
26402         constant in the program.  Substitute it into the output.
26404 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
26406         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
26407         function name (bug#20759).
26409 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
26411         Adapt 'struct timespec' to next release of MinGW runtime
26412         * nt/inc/ms-w32.h (struct timespec): Don't declare if
26413         __struct_timespec_defined is defined.
26415 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
26417         Merge from gnulib
26418         This incorporates:
26419         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
26420         2015-06-05 stdio: Don't redefine gets when using C++
26421         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
26422         2015-06-02 file-has-acl: fix build on Mac OS X 10
26423         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
26424         2015-06-01 pthread_sigmask: discount system version if a simple macro
26425         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
26426         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
26427         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
26428         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
26429         * lib/gnulib.mk: Regenerate.
26431 2015-06-06  Juri Linkov  <juri@linkov.net>
26433         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
26434         before calling grep-compute-defaults because now it affects the
26435         command lines computed in grep-compute-defaults.  (Bug#20728)
26437 2015-06-06  Glenn Morris  <rgm@gnu.org>
26439         Address some compilation warnings.
26440         * lisp/international/mule-cmds.el (w32-get-console-codepage)
26441         (w32-get-console-output-codepage):
26442         * lisp/progmodes/elisp-mode.el (xref-collect-references):
26443         * lisp/version.el (cairo-version-string): Declare.
26444         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
26446 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
26448         Fix display when a font claims large values of ascent and descent
26449         This fixes bug#20628.
26450         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
26451         coordinate of a hollow cursor glyph when the original glyph's
26452         ascent is too small.
26453         (get_font_ascent_descent, normal_char_ascent_descent)
26454         (normal_char_height): New functions.
26455         (handle_single_display_spec, append_space_for_newline)
26456         (calc_pixel_width_or_height, produce_stretch_glyph)
26457         (calc_line_height_property): Use normal_char_ascent_descent and
26458         normal_char_height.
26459         (x_produce_glyphs): When font-global values of ascent and descent
26460         are too large, use per-character glyph metrics instead, if
26461         possible.  But don't allow the glyph row's ascent and descent
26462         values become smaller than the values from the metrics of the
26463         font's "normal" character.
26464         * src/xftfont.c (xftfont_draw):
26465         * src/w32font.c (w32font_draw): Correct the values of ascent and
26466         descent used to draw glyphless characters' hex code in a box.
26467         * src/xterm.c (x_draw_glyph_string_background):
26468         * src/xdisp.c (x_produce_glyphs):
26469         * src/w32term.c (x_draw_glyph_string_background):
26470         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
26471         to detect fonts whose global ascent and descent values are too
26472         large to be used in layout decision, and redraw the background
26473         when that happens.
26474         * src/dispextern.h (FONT_TOO_HIGH): New macro.
26475         (get_font_ascent_descent): Add prototype.
26476         * src/xterm.c (x_new_font):
26477         * src/w32term.c (x_new_font):
26478         * src/nsterm.m (x_new_font):
26479         * src/font.c (font_open_entity):
26480         * src/composite.c (composition_gstring_width):
26481         Use get_font_ascent_descent to obtain reasonable values for ascent
26482         and descent of a font.
26484 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
26486         Add assertion in adjust_point_for_property
26487         * src/keyboard.c (adjust_point_for_property): Add eassert for
26488         current buffer being shown in selected window.
26490 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
26492         Replace uses of in-string-p; make it obsolete
26493         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
26494         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
26496 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
26498         Fix Dired display of an explicit list of files by ls-lisp.el
26499         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
26500         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
26501         correct for when displaying individual files separately, not as
26502         part of listing a directory, in which case these values are not
26503         recomputed by 'ls-lisp-insert-directory', but used verbatim.
26505         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
26507 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
26509         Do not adjust point in a non-selected window
26510         * src/keyboard.c (command_loop_1): Do not adjust point when
26511         current buffer is not shown in selected window (Bug#20590).
26513         * etc/DEBUG: Mention 'maybe_call_debugger'
26515 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
26517         Fix a unit test for map.el
26518         * test/automated/map-tests.el (test-map-let): Fix the test to work
26519         with the new syntax of `map-let'.
26521         * lisp/emacs-lisp/map.el (map-let): Better docstring.
26523         Better syntax for the map pcase pattern
26524         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
26525         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
26527         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
26529         Fix a byte-compiler error in map-put and map-delete
26530         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
26531         called with a symbol.
26533 2015-06-05  Glenn Morris  <rgm@gnu.org>
26535         * admin/gitmerge.el (gitmerge-commit-message):
26536         Revert to including "skipped" messages in ChangeLog once again.
26538 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
26540         Use string> instead of equiv lambda with string<
26541         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
26542         lambda with string<.
26544 2015-06-05  Glenn Morris  <rgm@gnu.org>
26546         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
26547         (map--delete-array): Fix typo.
26549         * test/automated/map-tests.el: Replace "assert" with "should".
26551         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
26552         (SUBDIRS_REL): Derive from SUBDIRS.
26554         Tweak some build messages.
26555         * lisp/Makefile.in ($(lisp)/loaddefs.el):
26556         * lisp/cus-dep.el (custom-make-dependencies):
26557         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
26558         * lisp/international/titdic-cnv.el (batch-titdic-convert):
26559         Don't say how to compile.
26561 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
26563         Omit U+0332 COMBINING LOW LINE in previous change
26564         It turns out that it does not work on Ubuntu 15.04.
26566         Fix transliteration of Bahá'í months
26567         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
26568         Improve quality of Latin transliteration of Bahá'í month names.
26570         Fix curved quotes in a few places
26571         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
26572         The strings in question are not doc strings, so this partially
26573         undoes the recent change that assumed they were doc strings.
26574         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
26575         * lisp/info.el (Info-finder-find-node):
26576         Use curved quotes.
26577         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
26578         Also allow curved quotes in doc strings.
26580 2015-06-04  Glenn Morris  <rgm@gnu.org>
26582         * lisp/Makefile.in (AM_V_at): Add missing definition.
26584         * lisp/Makefile.in: Quieten output a bit.
26585         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
26586         Don't echo directories, since the commands we invoke print them.
26588         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
26589         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
26590         (SUBDIRS_SUBDIRS): New variables.
26591         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
26592         Remove.
26593         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
26594         (update-subdirs, compile-main, compile-clean):
26595         Replace "setwins" usage with new "SUBDIRS" variables.
26597         * lisp/vc/compare-w.el (compare-windows-get-window-function):
26598         Fix :version tag.
26600 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
26602         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
26604         Undo removal of x_clear_area call on expose for GTK3 or cairo
26605         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
26606         Clear exposed area.  (Bug#20677)
26608 2015-06-04  Glenn Morris  <rgm@gnu.org>
26610         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
26612         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
26614         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
26615         Rename from quail-lao-update-translation, since lao.el defines that.
26617 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
26619         Handle new-style advice in find-funct
26620         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
26621         Handle new-style advice.  Return the symbol's function definition.
26622         (Bug#20718)
26623         (find-function-library): Update accordingly.
26625 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
26627         Merge branch 'map'
26629         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
26631         Add new function string-greaterp
26632         * lisp/subr.el (string-greaterp): New function.  Also aliased to
26633         `string>'.
26634         * test/automated/subr-tests.el (string-comparison-test): Add unit
26635         tests for `string>'and `string<'.
26636         * src/fns.c (string-lessp): Better docstring.
26638 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
26640         Fix timezone-related functions on MS-Windows
26641         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
26642         'xputenv', even if no reallocation of tzvalbuf was necessary.
26643         This fixes a bug in timezone-related functions on MS-Windows.
26644         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
26646 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
26648         Don't pass raw directory name to 'error'
26649         * lisp/files.el (basic-save-buffer-2): Avoid format error if
26650         a directory name contains a string like "%s".
26652 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
26654         Override 'grep --color=always'
26655         * lisp/progmodes/xref.el (xref-collect-matches):
26656         Override --color=always in grep-find-template.
26658 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
26660         Fix error introduced recently in file-notify-tests.el
26661         * test/automated/file-notify-tests.el
26662         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
26663         (file-notify--deftest-remote): Revert previous patch, not
26664         necessary anymore.
26666 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
26668         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
26669         Starting from a display string after a newline, point went to the
26670         previous line.  Also, fix an inadvertent use of a buffer position
26671         with FETCH_BYTE.  (Bug#20701)
26673 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
26675         Instrument file-notify-test.el in order to catch hydra error
26676         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
26677         Wrap body by `ignore-case', in order to trap non-local errors.
26679 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
26681         Undo previous changes in non-toolkit scroll bar drawing
26682         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
26683         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
26685 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
26687         * .gitignore: Also ignore doc/*/*/*.html and .ps.
26689         Support quotes 'like this' in info files
26690         This is possible when 'makeinfo --disable-encoding' is used
26691         in Texinfo 5.
26692         * lisp/calc/calc-help.el (calc-describe-thing):
26693         * lisp/gnus/gnus-art.el (gnus-button-alist):
26694         * lisp/info.el (Info-find-index-name):
26695         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
26696         Also support quotes 'like this'.
26697         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
26698         * lisp/finder.el (finder-font-lock-keywords): Remove var that
26699         hasn't been used in years, instead of bothering to fix its quoting.
26701 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
26703         * .gitignore: Remove !test/etags/html-src/*.html.
26704         It's no longer needed, since *.html was removed.  Sort.
26706 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
26708         Restore <D> instead of '.' in grep-find-template
26709         * lisp/cedet/semantic/symref/grep.el
26710         (semantic-symref-grep-use-template): Update a comment.
26711         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
26712         instead of '.' in grep-find-template (bug#20719).
26713         (rgrep): Pass nil as the directory to rgrep-default-command.
26714         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
26715         default value for DIR.
26716         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
26717         workaround.
26719 2015-06-02  Glenn Morris  <rgm@gnu.org>
26721         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
26723         * configure.ac (emacs_config_features): Add Cairo.
26725         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
26727 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
26729         Ensure that autorevert works for remote files in file-notify-tests.el
26730         * test/automated/file-notify-tests.el (file-notify--test-desc):
26731         New defvar.
26732         (file-notify--test-remote-enabled)
26733         (file-notify-test00-availability, file-notify-test01-add-watch)
26734         (file-notify-test02-events): Use it.
26735         (file-notify--test-event-test): Check proper descriptor.
26736         (file-notify-test03-autorevert): Ensure that
26737         `visited-file-modtime' has changed.  (Bug#20392)
26739 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
26741         Add a pcase pattern for maps and `map-let' based on it
26742         * lisp/emacs-lisp/map.el (map-let): New macro.
26743         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
26744         * test/automated/map-tests.el: New test for `map-let'.
26746 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
26748         Reuse rgrep mechanics in xref-find-regexp
26749         * lisp/progmodes/grep.el (rgrep-default-command):
26750         Extract from `rgrep'.
26751         * lisp/progmodes/xref.el (xref-collect-references): Split from
26752         `xref-collect-matches'.  Only handle the case of symbol search.
26753         (xref-collect-matches): Instead of Semantic Symref, use
26754         `rgrep-default-command', to take advantage of its directory and
26755         file ignore settings.
26756         (xref--collect-match): Remove the last argument, leaving the
26757         regexp construction up to the caller.
26758         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
26759         Change to take the xref-collect- function to use as an argument.
26760         (elisp-xref-find): Update accordingly.
26761         * lisp/progmodes/etags.el (etags--xref-find-matches)
26762         (etags-xref-find): Same.
26764         Move xref-elisp-location to elisp-mode.el
26765         * lisp/progmodes/xref.el (xref-elisp-location)
26766         (xref-make-elisp-location, xref-location-marker): Remove here.
26767         (xref--xref): Don't limit the type of the location slot.
26768         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
26769         Define as a cl-struct here.
26770         (xref-location-marker): Move here.
26772 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
26774         Minor tweaks for .gitignore
26775         * .gitignore: Don't ignore versioned *.html and *.ps files.
26776         Don't ignore admin/notes/tags that might be ignored as TAGS
26777         on case-insensitive filesystems.  (Bug#20710)
26779 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
26781         Generate curved quotes in ert doc
26782         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
26783         (ert-results-mode-menu)
26784         (ert-results-pop-to-backtrace-for-test-at-point)
26785         (ert-results-pop-to-messages-for-test-at-point)
26786         (ert-results-pop-to-should-forms-for-test-at-point)
26787         (ert-describe-test):
26788         Quote ‘like this’, not `like this', when generating doc strings
26789         and the like.
26790         * test/automated/ert-x-tests.el (ert-test-describe-test):
26791         Allow quoting ‘like this’.
26793 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
26795         Add test for previous commit
26796         * test/automated/replace-tests.el: New file.
26797         (query-replace--split-string-tests): Add test for previous commit.
26799         Avoid confusion in query-replace history when replacing NUL chars
26800         * lisp/replace.el (query-replace--split-string): New function.
26801         (query-replace-read-from): Rely on the 'separator' property
26802         instead of searching for the NUL character (Bug#20690).
26804 2015-06-02  Glenn Morris  <rgm@gnu.org>
26806         Merge from origin/emacs-24
26807         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
26809         * admin/gitmerge.el (gitmerge-commit-message):
26810         Exclude "skipped" messages from ChangeLog.
26812 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
26814         Sync with Tramp repository
26815         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
26816         messages.
26817         (tramp-handle-make-auto-save-file-name): When calling
26818         `make-auto-save-file-name' internally, make sure it uses Unix-like
26819         behavior, not Windows-like behavior.
26820         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
26821         the local case, because "chown" might fail on w32.
26822         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
26823         for XEmacs.
26825 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
26827         MS-Windows followup for batch stdout/stderr output changes
26828         * lisp/international/mule-cmds.el (set-locale-environment):
26829         In batch mode, use console codepages for keyboard and terminal
26830         encoding.  (Bug#20545)
26832         Update .gitattributes for DOS EOL files
26833         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
26834         CRLF end-of-line format.
26836         NS equivalents of xterm.c and w32term.c changes
26837         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
26838         glyph string background also when the font in use claims
26839         preposterously large global height value.  Helps to remove
26840         artifacts left from previous displays when glyphless characters
26841         are displayed as hex code in a box.
26842         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
26843         value for FRAME_LINE_HEIGHT, even when a font claims very large
26844         value for its height.
26846 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
26848         Avoid grave accent quoting in stderr diagnostics
26849         A few Emacs diagnostics go directly to stderr, and so can't easily
26850         contain curved quotes (as non-UTF-8 locales might mishandle them).
26851         Instead of bothering to add support for this rarity, reword the
26852         diagnostics so that they don't use grave accent to quote.
26853         * src/alloc.c (mark_memory): Fix comment.
26854         * src/buffer.c (init_buffer):
26855         * src/dispnew.c (init_display):
26856         * src/emacs.c (main, sort_args):
26857         * src/lread.c (dir_warning):
26858         * src/term.c (init_tty):
26859         * src/unexmacosx.c (unexec):
26860         * src/xfns.c (select_visual):
26861         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
26862         Reword stderr diagnostics to avoid quoting `like this'.
26863         * src/unexmacosx.c: Include errno.h.
26864         * src/xfns.c (select_visual): Encode value for locale.
26866 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
26868         Treat batch stdout/stderr like standard display
26869         Calls like (print FOO) could generate improperly encoded or
26870         hard-to-read output if FOO contains characters outside the system
26871         locale.  Fix this by treating batch stdout and stderr like
26872         interactive standard display, when it comes to transliterating and
26873         encoding characters (Bug#20545).
26874         * doc/emacs/mule.texi (Communication Coding):
26875         * doc/lispref/display.texi (Active Display Table):
26876         * doc/lispref/nonascii.texi (Locales):
26877         * etc/NEWS:
26878         * src/coding.c (syms_of_coding):
26879         * src/dispnew.c (syms_of_display):
26880         Document this.
26881         * src/print.c: Include disptab.h.
26882         (printchar_to_stream): New function, with much of the guts of the
26883         old Fexternal_debugging_output, except this one also uses the
26884         standard display table.
26885         (printchar, strout, Fexternal_debugging_output): Use it.
26887 2015-05-31  Glenn Morris  <rgm@gnu.org>
26889         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
26891 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
26893         Remove DEFSYMs that aren't used at the C level.  Also:
26894         * src/decompress.c (Qzlib_dll):
26895         * src/font.c (Qunicode_sip):
26896         * src/frame.c (Qtip_frame):
26897         * src/ftfont.c (Qserif):
26898         * src/gnutls.c (Qgnutls_dll):
26899         * src/xml.c (Qlibxml2_dll):
26900         Move from here ...
26901         * src/w32fns.c (syms_of_w32fns): ... to here,
26902         as these are used only on MS-Windows.
26904 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
26906         Use another default value for tramp-histfile-override
26907         * lisp/net/tramp-sh.el (tramp-histfile-override):
26908         Use ".tramp_history" as default.
26909         Fixes bug#20446
26911 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
26913         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
26915 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
26917         * etc/NEWS: Add an entry about map.el.
26919         Improve the docstring of functions in map.el
26920         Since a map is not a data structure but a concept, adding information
26921         about the possible types of maps can be useful information.
26922         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
26923         each public function.
26925 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
26927         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
26928         specific tests depending on the type of the map.
26930         * lisp/emacs-lisp/map.el: Better docstrings.
26932 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
26934         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
26936 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
26938         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
26940         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
26942         Fix a false negative in `map-elt' with alists and values being nil
26943         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
26944         found but its associated value is nil, do not return the default
26945         value.
26946         * test/automated/map-tests.el: Add a regression test.
26948 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
26950         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
26952         Do not signal an error when trying to delete a key from an array
26953         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
26954         the key is present to avoid signaling an error.
26955         * test/automated/map-tests.el: Add a test for deleting non-existing
26956         keys from maps.
26958         * lisp/emacs-lisp/map.el: Better docstring.
26960         Minor improvement in map-elt
26961         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
26962         doing a lookup in arrays, but check the boundaries of the array
26963         instead.
26964         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
26965         and a negative integer as key.
26967 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
26969         * test/automated/map-tests.el: Refactoring of test methods.
26971         * test/automated/map-tests.el: Renamed from map-test.el.
26973 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
26975         * lisp/emacs-lisp/map.el (map-into): Better error message.
26977         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
26979         Throw an error when converting a map into an unknown map type
26980         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
26981         not valid.
26982         * test/automated/map-tests.el: Add a regression test.
26984         New library map.el similar to seq.el but for mapping data structures.
26985         * test/automated/map-tests.el: New file.
26986         * lisp/emacs-lisp/map.el: New file.
26988 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
26990         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
26991         there's no explicit tag name (bug#20629).
26993 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
26995         Remove format2
26996         * src/editfns.c, src/lisp.h (format2): Remove.
26997         It is more trouble than it's worth, now that we have CALLN.
26998         This is just a minor refactoring.
26999         * src/buffer.c (Fkill_buffer):
27000         * src/dbusbind.c (XD_OBJECT_TO_STRING):
27001         * src/fileio.c (barf_or_query_if_file_exists):
27002         Adjust to format2 going away.
27004         Don't misencode C-generated messages
27005         Also, be more consistent about calls to 'Fmessage' vs 'message'.
27006         * src/alloc.c (Fgc_status):
27007         Prefer AUTO_STRING to build_string for Fmessage call.
27008         * src/data.c (Fmake_variable_buffer_local)
27009         (Fmake_local_variable, Fmake_variable_frame_local):
27010         * src/doc.c (store_function_docstring):
27011         Use Fmessage, not message, since the argument can contain
27012         non-ASCII characters, and this can cause the resulting message
27013         to be incorrectly encoded for the current environment.
27014         * src/fns.c (maybe_resize_hash_table):
27015         * src/xselect.c (x_clipboard_manager_save_all):
27016         Use message, not Fmessage, since Fmessage's power isn't needed here.
27017         * src/process.c (Fmake_network_process): Reword message to avoid %s.
27018         * src/xdisp.c (vmessage): Document restrictions on message contents.
27019         (message_nolog) [false]: Remove unused code.
27021         Use \r rather than ^M in string literals
27022         This is less likely to cause problems on platforms that
27023         use CRLF (or CR!) termination for lines.
27025         Update .gitattributes to match current sources
27026         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
27027         * .gitattributes: Accommodate tests that insist on DOS format.
27028         Remove test/automated/data/decompress/foo-gzipped.
27029         Add etc/e/eterm-color.
27031 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
27033         * doc/emacs/mule.texi (Modifying Fontsets):
27034         Document face-ignored-fonts.  (Bug#20628)
27036         Add etags test for the new -Q option
27037         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
27038         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
27039         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
27040         test-case changes below.
27041         * test/etags/ETAGS.good_6: New file.
27042         * test/etags/cp-src/x.cc: New file.
27043         * test/etags/Makefile (CPSRC): Add x.cc.
27044         (check): Add one more test, for -Q.
27046 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
27048         Use list for the tags completion table, not obarray
27049         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
27050         list instead of an obarray
27051         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
27052         (tags-completion-table): Combine those lists.
27053         (tags-completion-table): Update the docstring.
27055 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
27057         Restore EOL format testing in etags
27058         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
27059         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
27060         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
27061         test-case changes below.
27062         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
27063         * test/etags/cp-src/c.C (B): Add back stray CR character.
27064         * test/etags/c-src/dostorture.c: Add back.
27065         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
27067 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
27069         Declare Emacs on MS-Windows to be DPI-aware
27070         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
27071         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
27072         This avoids Windows entering compatibility mode for Emacs,
27073         which causes fonts to look less nice.
27075 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
27077         Improve Tramp traces
27078         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
27079         * lisp/net/tramp.el (tramp-debug-message): Use it.
27081 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
27083         backup-buffer minor reworking of internals
27084         * lisp/files.el (backup-buffer): Rework to avoid a couple of
27085         unused locals inadvertently introduced in the previous change.
27087         backup-buffer now reports .emacs.d/%backup% ills
27088         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
27089         fails due to disk space exhaustion or whatever, do not pretend
27090         that it succeeded.  More generally, do a better job of checking
27091         for I/O failures, and limit the scope of the condition-case to
27092         just the operations where file errors should be caught and ignored
27093         (Bug#20595).  Also, don't bother trying to delete later backups if
27094         an earlier deletion fails, as this is a sign of trouble and it's
27095         better to stop when there's trouble.
27097         copy-file now truncates output after writing
27098         * src/fileio.c (Fcopy_file): Truncate output after writing rather
27099         than before.  This is more likely to work than truncation before
27100         writing, if the file system is out of space or the user is over
27101         disk quota (Bug#20595).  Also, check for read errors.
27103 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
27105         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
27106         Don't load descriptors from directories above the package directories.
27108 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
27110         Merge from gnulib
27111         This incorporates the following (Bug#20681):
27112         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
27113         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
27114         * lib/set-permissions.c: Copy from gnulib.
27116 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
27118         Improve Tramp traces
27119         * lisp/net/tramp.el (tramp-call-process-region): New defun.
27120         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
27122 2015-05-29  Glenn Morris  <rgm@gnu.org>
27124         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
27126 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
27128         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
27129         The signature was changed in the cairo branch, merged on 2015-05-23.
27130         This oversight broke compiling only the non-toolkit X version.
27132 2015-05-29  Samer Masterson  <samer@samertm.com>
27134         * doc/lispref/os.texi: Update initial-buffer-choice docs.
27136 2015-05-29  Glenn Morris  <rgm@gnu.org>
27138         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
27139         Mark as an expected failure.
27141 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
27143         Change package test to look for curved quotes
27144         * test/automated/package-test.el (package-test-describe-package)
27145         (package-test-signed): Search for curved single quotes as well as
27146         for grave accent and apostrophe.
27148 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
27150         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
27151         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
27153 2015-05-28  Samer Masterson  <samer@samertm.com>
27155         Show files when `initial-buffer-choice' is non-nil
27156         * lisp/startup.el (command-line-1): When Emacs is given a file as an
27157         argument and `initial-buffer-choice' is non-nil, display both the file
27158         and `initial-buffer-choice'.  For more than one file, show
27159         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
27160         commands out of the command line arg parser.
27161         (initial-buffer-choice): Clarify docstring.
27163 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
27165         Fix last commit
27166         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
27167         (gnulib module qcopy-acl): Add back, as it is harmless.  This
27168         minimizes differences wrt lib/gnulib.mk.
27170         Fix the MS-Windows build as followup to gnulib update
27171         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
27172         set-permissions.c, as they don't compile on MinGW.
27173         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
27175 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
27177         Revert my change to gnus-art.el
27178         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
27179         It wasn't that important, and it caused a Gnus build to fail.  See:
27180         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
27182         New minor mode Electric Quote
27183         This lets you easily insert quotes ‘like this’ by typing
27184         quotes `like this', and similarly you can easily insert
27185         quotes “like this” by typing quotes ``like this'' (Bug#20545).
27186         * doc/emacs/basic.texi (Inserting Text):
27187         * doc/emacs/modes.texi (Minor Modes):
27188         * etc/NEWS: Document it.
27189         * doc/emacs/text.texi (Quotation Marks): New section.
27190         * lisp/electric.el (electric-quote-comment)
27191         (electric-quote-string, electric-quote-paragraph):
27192         New custom vars.
27193         (electric--insertable-p)
27194         (electric-quote-post-self-insert-function): New functions.
27195         (electric-quote-mode, electric-quote-local-mode): New minor modes.
27196         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
27197         Add curved single quotes to electric-pair-text-pairs.
27198         Set electric-quote-string in this buffer.
27200         A few more doc string fixes (Bug#20385)
27202         Accept curved quotes in doc strings
27203         * lisp/info-look.el (info-lookup-guess-custom-symbol):
27204         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
27206         Generate curved quotes in pseudo-info nodes
27207         * lisp/info.el (Info-virtual-index-find-node)
27208         (Info-virtual-index, Info-apropos-find-node, info-apropos):
27209         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
27211         Fix minor quoting problems in doc strings
27212         Most of these fixes involve escaping grave accents that are
27213         actually intended to be grave accents, not left quotes.
27214         (Bug#20385)
27216         Support curved quotes in doc strings
27217         Emacs's traditional doc string style has been to quote symbols
27218         `like this'.  This worked well on now-obsolete terminals where
27219         ` and ' were symmetric quotes, but nowadays curved quotes
27220         ‘like this’ look better.  Support quoting the new way too.
27221         (Bug#20385)
27222         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
27223         ‘like-this’ as well as `like-this'.
27224         * etc/NEWS: Mention this.
27225         * lisp/cedet/mode-local.el (overload-docstring-extension)
27226         (mode-local-print-binding, mode-local-describe-bindings-2):
27227         * lisp/cus-theme.el (describe-theme-1):
27228         * lisp/descr-text.el (describe-text-properties-1, describe-char):
27229         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
27230         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
27231         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
27232         (eieio-help-constructor):
27233         * lisp/emacs-lisp/package.el (describe-package-1):
27234         * lisp/faces.el (describe-face):
27235         * lisp/help-fns.el (help-fns--key-bindings)
27236         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
27237         (help-fns--interactive-only, describe-function-1):
27238         (describe-variable):
27239         * lisp/help.el (describe-mode):
27240         * lisp/international/mule-cmds.el (describe-input-method)
27241         (describe-language-environment):
27242         * lisp/international/mule-diag.el (describe-character-set)
27243         (print-coding-system-briefly, list-input-methods)
27244         (list-input-methods-1):
27245         Insert curved quotes rather than grave accent and apostrophe.
27246         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
27247         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
27248         (checkdoc-proper-noun-region-engine):
27249         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
27250         (lisp-cl-font-lock-keywords-2):
27251         * lisp/finder.el (finder-font-lock-keywords):
27252         * lisp/gnus/gnus-art.el (gnus-button-alist):
27253         * lisp/help-fns.el (help-do-arg-highlight)
27254         (describe-function-1, describe-variable):
27255         * lisp/help-mode.el (help-xref-symbol-regexp)
27256         (help-xref-info-regexp, help-xref-url-regexp):
27257         * lisp/help.el (describe-mode):
27258         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
27259         * lisp/wid-edit.el (widget-documentation-link-regexp):
27260         Parse symbols quoted ‘like-this’ as well as `like-this'.
27261         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
27262         Add "‘" and "’" to electric-pair-text-pairs.
27263         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
27264         (elisp-completion-at-point, elisp--preceding-sexp):
27265         Also treat "‘" and "’" as quoting chars.
27267         substitute-command-keys now curves quotes
27268         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
27269         * doc/lispref/help.texi (Keys in Documentation):
27270         * etc/NEWS: Document this.
27271         * src/doc.c (Fsubstitute_command_keys): Implement it.
27273 2015-05-28  Glenn Morris  <rgm@gnu.org>
27275         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
27276         (rmail-summary-by-topic, rmail-summary-by-senders):
27277         No longer strip leading/trailing whitespace.
27279         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
27280         (f90-no-block-limit): Add "enum".  (Bug#20680)
27281         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
27282         New tests.
27284 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
27286         * lisp/isearch.el (isearch--current-buffer): Give a default value.
27287         Un-revert changes mistakenly dropped by f9fabb2b.
27289 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
27291         Merge from gnulib
27292         This incorporates:
27293         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
27294         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
27295         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
27296         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
27297         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
27298         2015-05-26 stdio: fix probe on mingw under gcc 5.1
27299         * admin/merge-gnulib (GNULIB_MODULES):
27300         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
27301         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
27302         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
27303         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
27304         Get latest versions from gnulib.
27305         * lib/get-permissions.c, lib/set-permissions.c: New files.
27306         * lib/gnulib.mk, m4/gnulib-comp.m4:
27307         Regenerate.
27308         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
27310 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
27312         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
27313         process here.
27314         (vc-do-command): Rather than here (bug#20608).
27316 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
27318         Avoid gratuitous delete-dups in face-at-point
27319         * lisp/faces.el (face-at-point): Do not compute the properly
27320         ordered, duplicate-free list if only a single value is
27321         requested anyway.  (Bug#20519)
27323         Show the exact C-x 8 RET invocation in describe-char
27324         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
27325         invocation instead of a template.  (Bug#20522)
27327 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
27329         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
27330         (package-menu--post-refresh): Call `tabulated-list-print' with the
27331         UPDATE argument.  This only affects the refresh action, the revert
27332         action still erases tags.
27333         (package-menu-get-status): Change `assq' to `assoc'.
27334         (package-menu--mark-upgrades-1): New function.
27335         (package-menu--mark-upgrades-pending): New variable.
27336         (package-menu-mark-upgrades): Use them to delay marking until
27337         after refresh is done.
27338         (package-menu--post-refresh): Call mark-upgrades-1 if
27339         mark-upgrades-pending is non-nil.
27341 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
27343         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
27344         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
27345         (commit 3953c4be2816537be95520605d45b866dc731f4b).
27347 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
27349         * lisp/isearch.el (isearch--current-buffer): New var.
27350         (isearch-update): Set cursor-sensor-inhibit here.
27351         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
27352         (bug#20532).
27354         Change inhibit-point-motion-hooks to t
27355         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
27356         to t and document it as obsolete.
27358 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
27360         Support ZIP files that use Zip64 extensions
27361         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
27362         format of central directory offsets used by Zip64 extensions.
27363         (Bug#20665)
27365 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
27367         New test tramp-test30-make-auto-save-file-name
27368         * test/automated/tramp-tests.el
27369         (tramp-test30-make-auto-save-file-name): New test.
27370         (tramp-test31-special-characters)
27371         (tramp-test31-special-characters-with-stat)
27372         (tramp-test31-special-characters-with-perl)
27373         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
27374         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
27375         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
27376         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
27378         Improve tramp-handle-make-auto-save-file-name
27379         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
27380         (tramp-handle-make-auto-save-file-name): Let native
27381         `make-auto-save-file-name' use `auto-save-file-name-transforms',
27382         if `tramp-auto-save-directory' is not set.
27384 2015-05-27  Glenn Morris  <rgm@gnu.org>
27386         No longer set dired-directory in eshell.  (Bug#16477)
27387         * lisp/eshell/esh-mode.el (eshell-mode):
27388         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
27390         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
27392         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
27393         * lisp/progmodes/cc-mode.el (c-mode-help-address):
27394         Change to submit@debbugs.
27395         (c-mode-bug-package): New constant.
27396         (mail-position-on-field): Declare.
27397         (c-submit-bug-report): Insert X-Debbugs-Package header.
27398         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
27399         Mention debbugs.gnu.org.
27401 2015-05-26  Glenn Morris  <rgm@gnu.org>
27403         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
27404         (rmail-summary-by-recipients, rmail-summary-by-topic)
27405         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
27406         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
27408 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
27410         Handle curved quotes in info files
27411         * lisp/calc/calc-help.el (calc-describe-thing):
27412         * lisp/info.el (Info-find-index-name)
27413         (Info-try-follow-nearest-node, Info-fontify-node):
27414         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
27415         In info files, process quotes ‘like this’ the same way we process
27416         quotes `like this'.  This catches a few places we missed earlier.
27418 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
27420         xref-prompt-for-identifier: Use a list value
27421         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
27422         value, to be interpreted as a list of commands.
27423         (xref--prompt-p): New function.
27424         (xref--read-identifier): Use it.
27426 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
27428         Teach MS-Windows font back-end return per-glyph ascent/descent
27429         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
27430         values.
27431         * src/w32font.c (w32font_text_extents): Compute, cache, and
27432         accumulate per-glyph ascent and descent values, instead of copying
27433         global values from the font.  If the values are not available from
27434         the font data, i.e., non-TTF fonts, fall back on font-global values.
27435         (compute_metrics): Compute and return per-glyph ascent and descent
27436         values, if returned by GetGlyphOutlineW, falling back on
27437         font-global values.  (Bug#20628)
27438         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
27439         height of rectangle to be drawn, to be compatible with
27440         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
27441         box, when per-glyph ascent/descent values are used.
27443 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
27445         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
27446         Don't sort if sorter is nil.
27448 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
27450         Fix Bug#20621
27451         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
27452         are major modes which set `auto-save-mode' on their own rules;
27453         Tramp shall not overwrite such settings.
27455 2015-05-26  Glenn Morris  <rgm@gnu.org>
27457         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
27458         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
27459         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
27460         Doc updates.
27461         (vc-dir-mode): Remove unnecessary autoload.
27463 2015-05-25  Philipp Stephani  <phst@google.com>
27465         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
27466         (xterm--extra-capabilities-type): Add `getSelection'.
27467         (xterm--query): Add `no-async' argument.
27468         (xterm--init-activate-get-selection): New function.
27469         (terminal-init-xterm): Use it.
27470         (xterm--init-modify-other-keys): Rename from
27471         terminal-init-xterm-modify-other-keys.
27472         (xterm--init-bracketed-paste-mode): Rename from
27473         terminal-init-xterm-bracketed-paste-mode.
27474         (xterm--init-activate-set-selection): Rename from
27475         terminal-init-xterm-activate-set-selection.
27476         (xterm--selection-char): New function.
27477         (gui-backend-set-selection): Use it.  Use the &context to only apply
27478         this method in terminals where we enabled the feature.
27479         (gui-backend-get-selection): New method.
27481 2015-05-25  Daniel Colascione  <dancol@dancol.org>
27483         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
27484         keyword constants to C++.
27486 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
27488         Make TAGS files more portable to MS-Windows
27489         * etc/NEWS: Document this.
27490         * lib-src/etags.c (readline_internal) [DOS_NT]:
27491         Don't treat CRs differently from GNUish hosts.
27492         * lisp/progmodes/etags.el (etags-goto-tag-location):
27493         Adjust STARTPOS to account for the skipped CRs in dos-style files.
27495 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
27497         Improve fix of bug#20634 in tramp-sh.el
27499 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
27501         Fix a typo in last commit
27502         * lib-src/etags.c (C_entries): Fix a typo.
27503         * test/etags/ETAGS.good_1:
27504         * test/etags/ETAGS.good_2:
27505         * test/etags/ETAGS.good_3:
27506         * test/etags/ETAGS.good_4:
27507         * test/etags/ETAGS.good_5:
27508         * test/etags/CTAGS.good: Update due to the change in etags.c.
27510         Fix tagging of class members in C-like OO languages
27511         * lib-src/etags.c (longopts): Add new option --class-qualify and
27512         its shorthand -Q.
27513         (print_help): Add help text for --class-qualify.
27514         (main): Add handling of -Q.
27515         (consider_token, C_entries) <omethodparm>: Append argument types
27516         to Objective C methods only if --class-qualify was specified.
27517         Qualify C++, Objective C, and Java class members with their class
27518         names only if --class-qualify was specified.
27519         (C_entries): If --class-qualify was not specified, remove the
27520         namespace and class qualifiers from tag names of C++ methods.
27521         This allows to use etags.el as xref back-end without the
27522         tag-symbol-match-p method, which greatly increases the number of
27523         potentially false positives.  (Bug#20629)
27524         * doc/man/etags.1: Update to document the new --class-qualify
27525         option.
27526         * test/etags/ETAGS.good_1:
27527         * test/etags/ETAGS.good_2:
27528         * test/etags/ETAGS.good_3:
27529         * test/etags/ETAGS.good_4:
27530         * test/etags/ETAGS.good_5:
27531         * test/etags/CTAGS.good: Update due to changes in etags.c.
27533 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
27535         (cl-generic-define-method): Side effects are evil (bug#20644)
27536         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
27537         cons-cells that might be used as keys in an `equal' hash-table.
27539 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
27541         Make erc timestamps visible again
27542         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
27543         Make timestamps visible again (if requested).
27545 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
27547         Fix last change in etags.c that broke tagging compresed files
27548         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
27549         quoting of decompression shell command for MS-Windows/MS-DOS.
27551 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
27553         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
27554         (Bug#20639)
27556 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
27558         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
27559         Fix typo in "Inhibit `epa-file-handler' in Tramp"
27560         (commit 89035e247591c8d688fce922b7079881aa110f33).
27562 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
27564         Fix IPv6 addresses in Tramp
27565         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
27566         Add square brackets around host name.
27568 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
27570         Inhibit `epa-file-handler' in Tramp (Bug#20634)
27571         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
27572         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
27573         `epa-file-handler'.
27575 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
27577         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
27578         (pcase-let): Document the behavior in case the pattern doesn't match.
27580 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
27582         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
27583         (tabulated-list-print): New optional argument, UPDATE.  If
27584         non-nil, the list is printed by only adding and deleting the
27585         changed entries, instead of erasing the whole buffer.  This method
27586         is much faster when few or no entries have changed.
27587         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
27588         * etc/NEWS: Document it.
27590         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
27591         (tabulated-list--get-sorter): New function.
27592         (tabulated-list-print): Restore window-line when remember-pos is
27593         passed and optimize away the `nreverse'.
27595 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
27597         Simpilify etags TEX mode scanning
27598         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
27599         Remove static vars.
27600         (TeX_commands): Deduce escapes here instead.
27601         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
27602         This removes the need for a reset_input call.
27604         Improve etags I/O error reporting
27605         * lib-src/etags.c:
27606         Don't include sys/types.h and sys/stat.h; no longer needed.
27607         (infilename): New static var.
27608         (process_file_name): Don't call 'stat'.  Instead, just open the
27609         file for reading and report any errors.  Don't bother making
27610         a copy of the file argument; it's not needed.  Be more careful to
27611         use the failing errno when reporting an error.
27612         Quote the real name better (though no perfectly)
27613         when passing it to the shell.
27614         (reset_input): New function, which reports I/O errors.
27615         All uses of 'rewind' changed to use this function.
27616         (perhaps_more_input): New function, which also checks for
27617         I/O errors.  All uses of 'feof' changed to use this function.
27618         (analyze_regex): Report an error if fclose fails.
27619         (readline_internal): Report an error if getc fails.
27620         (etags_mktmp): Return an error if close fails.
27622         etags.c: avoid side effects in 'if'
27623         * lib-src/etags.c (process_file_name, Perl_functions)
27624         (TEX_decode_env): Hoist side effects into previous statement.
27626         .gitignore tweaks
27627         * .gitignore: Ignore all *.stamp files.  Sort.
27628         Ignore [0-9]*.txt (commonly used name for git patches)
27629         and /vc-dwim-log-* (vc-dwim temporary).
27631 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
27633         Fix last change in etags.c, which failed the test suite
27634         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
27635         before the last change.
27637 2015-05-23  Glenn Morris  <rgm@gnu.org>
27639         Remove charset map files from repository, generate in first bootstrap
27640         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
27641         (all): Create the stamp file.
27642         (extraclean): Delete the stamp file.
27643         * src/Makefile.in (lispintdir, charsets): New variables.
27644         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
27645         New rules.
27646         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
27647         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
27648         * etc/charsets/*.map: Remove from repository.
27650 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
27652         Cleanup etags.c to use locale-independent code
27653         Although this doesn't alter behavior (as etags doesn't use
27654         setlocale), the new version is more clearly locale-independent and
27655         the executable is a bit smaller on my platform.
27656         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
27657         Include <c-ctype.h> instead of <ctype.h>.
27658         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
27659         (begtk, midtk):
27660         Remove; no longer needed.
27661         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
27662         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
27663         c_islower, c_tolower, respectively.
27664         (notinname, begtoken, intoken, endtoken): Rewrite as functions
27665         instead of macros, and initialize the tables at compile-time
27666         rather than at run-time.
27668         Put default action first in src/Makefile
27669         * src/Makefile.in (all): Put this rule before lisp.mk.
27670         That way, plain 'make' works in the src directory again.
27672 2015-05-23  Glenn Morris  <rgm@gnu.org>
27674         * Makefile.in: Fix extraclean rule.
27675         (extraclean_dirs): New.
27676         (extraclean): Use it.
27678 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
27680         Avoid compiler warning in image.c on MS-Windows
27681         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
27682         warning in image.c.
27684 2015-05-23  Glenn Morris  <rgm@gnu.org>
27686         Fix --without-toolkit-scroll-bars builds.
27687         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
27688         Add new argument to x_clear_area1.
27689         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
27690         Update x_clear_area arguments.
27692         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
27693         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
27694         Change to included version.
27695         (LOCAL, local, totalclean): Remove.
27696         (extraclean): Delete all generated files.
27698 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
27700         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
27701         CVS/Entries exists.
27703         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
27705         * lisp/progmodes/etags.el (tags-completion-at-point-function):
27706         Don't trust the find-tag function.
27708 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
27710         Pacify --enable-gcc-warnings
27711         * src/frame.h (x_query_color): Remove redundant extern decl.
27712         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
27713         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
27714         (ftcrfont_text_extents, ftcrfont_draw):
27715         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
27716         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
27717         (x_ins_del_lines, frame_highlight, frame_unhighlight)
27718         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
27719         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
27720         (x_update_window_begin, x_connection_closed)
27721         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
27722         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
27723         (*x_gc_get_ext_data, x_extension_initialize)
27724         (x_cr_accumulate_data):
27725         Remove redundant static decl.  Many of these GCC doesn't complain
27726         about, but we might as well clean out the duplication while we're
27727         in the neighborhood.
27728         * src/xterm.c (x_fill_trapezoid_for_relief):
27729         Remove decl of nonexistent function.
27731 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
27733         Replace gui-method macros with cl-generic with &context
27734         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
27735         (gui-method-declare, gui-call): Remove.
27736         (frame-creation-function): Use cl-defgeneric.
27737         (make-frame): Adjust callers.
27738         * lisp/menu-bar.el (menu-bar-edit-menu):
27739         Use gui-backend-selection-exists-p.
27740         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
27741         (gui-backend-get-selection): New cl-generic to replace
27742         gui-get-selection method.
27743         (gui-backend-set-selection): New cl-generic to replace
27744         gui-set-selection method.
27745         (gui-selection-owner-p): New cl-generic to replace
27746         gui-selection-owner-p method.
27747         (gui-backend-selection-exists-p): New cl-generic to replace
27748         gui-selection-exists-p method.  Adjust all callers.
27749         * lisp/server.el (server-create-window-system-frame): Don't ignore
27750         window-system spec even when unsupported.
27751         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
27752         * lisp/startup.el (handle-args-function, window-system-initialization):
27753         Use cl-defgeneric.
27754         (command-line): Adjust calls accordingly.
27755         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
27756         a window-system-initialization method.
27757         (handle-args-function, frame-creation-function): Use cl-defmethod.
27758         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
27759         (gui-get-selection): Use cl-defmethod on the new functions instead.
27760         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
27761         a gui-backend-get-selection method.
27762         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
27763         Use cl-defmethod on the new functions instead.
27764         (msdos-window-system-initialization): Turn into
27765         a window-system-initialization method.
27766         (frame-creation-function, handle-args-function): Use cl-defmethod.
27767         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
27768         a window-system-initialization method.
27769         (handle-args-function, frame-creation-function): Use cl-defmethod.
27770         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
27771         (gui-get-selection): Use cl-defmethod on the new functions instead.
27772         * lisp/term/x-win.el (x-window-system-initialization): Turn into
27773         a window-system-initialization method.
27774         (handle-args-function, frame-creation-function): Use cl-defmethod.
27775         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
27776         (gui-get-selection): Use cl-defmethod on the new functions instead.
27777         * lisp/term/xterm.el (xterm--set-selection): Turn into
27778         a gui-backend-set-selection method.
27779         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
27780         (Fns_selection_owner_p): Remove unused arg `terminal'.
27781         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
27783 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
27785         Revert "Fix etags Bug#20629 that broke C++ support"
27786         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
27788 2015-05-23  Jan D  <jan.h.d@swipnet.se>
27790         Fix etags Bug#20629 that broke C++ support
27791         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
27792         Revert commit from Sun May 10 (Bug#20629).
27794         Merge branch 'cairo'.
27795         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
27796         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
27798         Merge branch 'master' into cairo
27800         Fixes to compile cairo branch without cairo
27801         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
27802         first argument.
27803         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
27804         USE_CAIRO.
27806 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
27808         * lisp/emacs-lisp/package.el: Always update selected-packages.
27809         (package--update-selected-packages): New function.
27810         (package-menu-execute): Use it before starting the transaction,
27811         this way the list of selected packages is updated even when the
27812         transaction fails.
27813         (package-menu--perform-transaction): Don't edit selected-packages.
27815 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
27817         Fix etags reading of compressed files
27818         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
27819         Include fcntl.h, for O_CLOEXEC.
27820         (process_file_name): Don't use 'popen', whose streams cannot be
27821         rewound.  Instead, uncompress the file to a temporary file,
27822         created by 'etags_mktmp', and read from that as usual.
27823         (etags_mktmp): New function.
27824         * test/etags/ETAGS.good_1:
27825         * test/etags/ETAGS.good_2:
27826         * test/etags/ETAGS.good_3:
27827         * test/etags/ETAGS.good_4:
27828         * test/etags/ETAGS.good_5: Update to be consistent with latest
27829         changes in etags.c regarding reading compressed files.
27831         Improve documentation of 'set-fontset-font'
27832         * doc/lispref/display.texi (Fontsets): Document the value of nil
27833         for the 3rd argument of 'set-fontset-font'.
27835         Fix documentation of forward-line
27836         * src/cmds.c (Fforward_line): Clarify the return value if the line
27837         at end of accessible portion of the buffer has no newline.
27838         * doc/lispref/positions.texi (Text Lines): Document what happens
27839         if the line at end of accessible portion of buffer has no newline.
27840         (Bug#20587)
27842 2015-05-22  Glenn Morris  <rgm@gnu.org>
27844         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
27846         * admin/charsets/mapconv (LC_ALL): Set to C.
27848         * Makefile.in: Add admin/charsets into top-level clean rules.
27849         (clean): Add admin/charsets.
27850         (maybeclean_dirs): New variable.
27851         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
27853         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
27855 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
27857         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
27859 2015-05-22  Glenn Morris  <rgm@gnu.org>
27861         Generate admin/charsets Makefile via configure, and make more portable
27862         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
27863         (admin/charsets/Makefile): Generate it.
27864         * admin/charsets/Makefile.in: Rename from Makefile.
27865         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
27866         New variables, set by configure.
27867         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
27868         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
27869         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
27870         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
27871         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
27872         (all): Declare PHONY.
27873         (local): New PHONY target.
27874         (map_template): New template.  Use to define short PHONY aliases.
27875         (*.map): Add directory prefixes to targets and prerequisites.
27876         Respect make verbosity.
27877         (JISC6226.map): Replace non-portable sed append without newline.
27878         (install): Remove rule.
27879         (clean): Only delete temporary sedscript.
27880         (bootstrap-clean, distclean, maintainer-clean, extraclean)
27881         (totalclean): New PHONY rules.
27882         * admin/charsets/mapconv (BASE): Replace basename with expr.
27883         (FILE): Add "mapfiles" subdirectory.
27884         (AWK): New variable.  Use throughout in place of "awk".
27885         (main): Use "gunzip -c" in place of "zcat".
27886         Don't leave whitespace before "p", for older sed.
27887         * admin/charsets/mapfiles/PTCP154: Add final newline,
27888         to make older sed versions happy.
27890 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
27892         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
27893         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
27894         (auto-revert-notify-watch-descriptor): Use defvar-local.
27895         (find-file-hook, auto-revert-tail-mode)
27896         (auto-revert-notify-add-watch): Use setq-local.
27897         (auto-revert-notify-add-watch): Don't call make-local-variable on
27898         kill-buffer-hook (bug#20601).
27900 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
27902         Change defgeneric so it doesn't completely redefine the function
27903         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
27904         previously defined methods.
27905         (cl-generic-define-method): Let-bind purify-flag instead of
27906         using `fset'.
27907         (cl--generic-prefill-dispatchers): Only define during compilation.
27908         (cl-method-qualifiers): Remove redundant alias.
27909         (help-fns-short-filename): Silence byte-compiler.
27910         * test/automated/cl-generic-tests.el:
27911         Adjust to new defgeneric semantics.
27913 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
27915         * lisp/emacs-lisp/package.el (package-menu-execute):
27916         Remove reference to remove-dups.
27918 2015-05-21  kwhite  <kwhite@gnu.org>
27920         * lisp/erc/erc.el: Hide network/channel messages.
27921         (erc-network-hide-list, erc-channel-hide-list): New lists to define
27922         message types per network/channel.
27923         (erc-add-targets): New function to parse list of targets.
27924         (erc-hide-current-message-p): Modify to check for new targets.
27926 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
27928         Don't quote nil and t in doc strings
27929         This is as per "Tips for Documentation Strings" in the elisp manual.
27930         For consistency, do the same in diagnostics and comments.
27932 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
27934         Fix a minor problem with mouse-face on mode line
27935         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
27936         mouse face also if the mouse pointer hovers above mode-line glyphs
27937         that don't come from any Lisp string.  (Bug#20620)
27939 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
27941         * lisp/emacs-lisp/package.el: Fix selected-package logic.
27942         (package-menu-execute): Mark as selected all non-upgrade packages
27943         being installed.
27944         (package-menu--perform-transaction): Don't mark anything.
27946         * lisp/emacs-lisp/package.el: Mode-line progress report.
27947         (package-menu--transaction-status): New variable.
27948         (package-menu-mode, package-menu--perform-transaction): Use it.
27950         * lisp/emacs-lisp/package.el: Better transaction messages.
27951         (package-menu--partition-transaction): New function.
27952         (package-menu--prompt-transaction-p, package-menu-execute):
27953         Use it.
27954         (package-menu--perform-transaction): Don't do any messaging.
27956         * lisp/emacs-lisp/package.el: Revert async package transactions.
27957         (package-menu-async): Update doc.
27958         (package-install-from-archive, package-download-transaction)
27959         (package-install, package-menu--perform-transaction)
27960         (package-menu-execute): Remove asynchronous functionality.
27962 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
27964         Revert doc string changes to f90.el
27965         Problem reported by Glenn Morris in:
27966         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
27967         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
27968         Revert recent changes to doc strings, as it's intended that they
27969         use grave accent, not quote.
27971 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
27973         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
27974         Improve parameter name.
27976         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
27978 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
27980         Don't require help-fns when not needed
27981         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
27982         * lisp/emacs-lisp/elint.el:
27983         Don't require help-fns at the top level
27984         * lisp/emacs-lisp/advice.el (ad-arglist):
27985         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
27986         Don't require help-fns.  (Bug#17001)
27988 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
27990         Fix slash collapsing in etags on MS-Windows
27991         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
27992         MS-Windows code from the Posix code, and support collapsing both
27993         forward- and back-slashes on MS-Windows.  Fixes a regression found
27994         by the test suite.
27996         Improve documentation of glyphless-char-display
27997         * doc/lispref/display.texi (Glyphless Chars): Improve
27998         documentation of glyphless character display.
28000         Fix "acronym" display of glyphless characters on w32
28001         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
28002         ignore "acronym" substitutes of 1 character for glyphless characters.
28004 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
28006         Add an automated test for let-when-compile
28007         * test/automated/subr-tests.el (let-when-compile): New test.
28009         Add let-when-compile macro instead of using pcase-let
28010         * lisp/subr.el (let-when-compile): New let-like macro that makes its
28011         bindings known to macros like `eval-when-compile' in the body.
28012         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
28013         a `let-when-compile'.  Also comment out the unused lexical var
28014         `el-kws-re'.
28015         The change greatly improves readability, while providing almost the
28016         same (even shorter) byte code: instead of pre-evaluating 10 variables,
28017         tossing them into a list, and destructuring that list a full screen
28018         page later, the variables are simply bound as they are evaluated,
28019         wrapped individually in `eval-when-compile'.
28021 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
28023         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
28024         (package-delete-button-action): New function.
28025         (describe-package-1): Add Delete button.
28027         * lisp/emacs-lisp/package.el: Better dependency description.
28028         (package--used-elsewhere-p): New optional arg, ALL, and return
28029         package-desc objects instead of names.
28030         (package-delete): Update accordingly.
28031         (describe-package-1): Describe which packages require the package.
28033 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
28035         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
28036         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
28037         Fix doc-string.
28039         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
28040         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
28041         (switch-to-buffer): If the selected window is strongly dedicated
28042         to its buffer, signal error before prompting for buffer name.
28043         Handle `switch-to-buffer-in-dedicated-window'.
28044         * doc/lispref/windows.texi (Switching Buffers):
28045         Document `switch-to-buffer-in-dedicated-window'.
28047 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
28049         Prefer "this" to “this” in doc strings
28050         This mostly just straightens quotes introduced in my previous patch.
28051         Suggested by Dmitry Gutov in:
28052         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
28053         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
28054         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
28055         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
28056         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
28057         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
28058         Prefer straight double quotes to curved double quotes in doc strings.
28060         Fix minor quoting problems in doc strings
28061         These were glitches regardless of how or whether we tackle the
28062         problem of grave accent in doc strings.
28063         * lisp/calc/calc-aent.el (math-restore-placeholders):
28064         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
28065         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
28066         * lisp/leim/quail/hebrew.el ("hebrew-new")
28067         ("hebrew-biblical-sil"):
28068         * lisp/leim/quail/thai.el ("thai-kesmanee"):
28069         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
28070         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
28071         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
28072         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
28073         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
28074         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
28075         (semantic-tag-components):
28076         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
28077         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
28078         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
28079         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
28080         * lisp/emacs-lisp/generator.el (iter-next):
28081         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
28082         (gnus-article-mode-syntax-table):
28083         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
28084         * lisp/net/soap-client.el (soap-wsdl-get):
28085         * lisp/net/telnet.el (telnet-mode):
28086         * lisp/org/org-compat.el (org-number-sequence):
28087         * lisp/org/org.el (org-remove-highlights-with-change)
28088         (org-structure-template-alist):
28089         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
28090         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
28091         (handwrite-12pt, handwrite-13pt):
28092         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
28093         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
28094         * lisp/progmodes/verilog-mode.el (verilog-tool)
28095         (verilog-string-replace-matches, verilog-preprocess)
28096         (verilog-auto-insert-lisp, verilog-auto-insert-last):
28097         * lisp/textmodes/makeinfo.el (makeinfo-options):
28098         * src/font.c (Ffont_spec):
28099         Fix minor quoting problems in doc strings, e.g., missing quote,
28100         ``x'' where `x' was meant, etc.
28101         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
28102         Fix minor quoting problem in other string.
28103         * lisp/leim/quail/ethiopic.el ("ethiopic"):
28104         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
28105         Omit unnecessary quotes.
28106         * lisp/faces.el (set-face-attribute, set-face-underline)
28107         (set-face-inverse-video, x-create-frame-with-faces):
28108         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
28109         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
28110         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
28111         * lisp/net/tramp.el (tramp-methods):
28112         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
28113         * lisp/textmodes/artist.el (artist-ellipse-right-char)
28114         (artist-ellipse-left-char, artist-vaporize-fuzziness)
28115         (artist-spray-chars, artist-mode, artist-replace-string)
28116         (artist-put-pixel, artist-text-see-thru):
28117         * lisp/vc/ediff-util.el (ediff-submit-report):
28118         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
28119         Use double-quotes rather than TeX markup in doc strings.
28120         * lisp/skeleton.el (skeleton-pair-insert-maybe):
28121         Reword to avoid the need for grave accent and apostrophe.
28122         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
28123         Don't use grave and acute accents to quote.
28125 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
28127         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
28128         Silence compiler.
28130 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
28132         Try to port new etags tests to MS-Windows
28133         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
28134         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
28135         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
28136         Adjust to test-case changes below.
28137         * test/etags/Makefile (CSRC): Remove dostorture.c.
28138         Whatever it was trying to test, wasn't working portably.
28139         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
28140         just a line-ending problem.
28141         * test/etags/c-src/dostorture.c: Remove.
28142         * test/etags/cp-src/c.C: Remove stray CR.
28143         * test/etags/html-src/algrthms.html: Remove trailing CRs.
28144         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
28145         but if someone edits it later it should stay UTF-8-compatible.
28147 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
28149         Fix display of overlapping window-specific overlays
28150         * src/keyboard.c (adjust_point_for_property): When adjusting point
28151         due to display strings, ignore overlays that are specific to
28152         windows other than the currently selected one.
28153         * src/xdisp.c (handle_single_display_spec): If the display
28154         property comes from an overlay, arrange for buffer iteration to
28155         resume only after the end of that overlay.  (Bug#20607)
28157 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
28159         New command icomplete-force-complete-and-exit
28160         * lisp/icomplete.el (icomplete-force-complete-and-exit):
28161         New command
28162         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
28163         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
28164         (icomplete-minibuffer-map): Bind C-j to it.
28165         (icomplete-forward-completions, icomplete-backward-completions):
28166         Mention the new command in the docstring.
28167         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
28168         Revert the previous fix for bug#17545.
28170 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
28172         Fix last commit
28174         In Elisp manual explain how to override window manager positioning
28175         (Bug#20552)
28176         * doc/lispref/frames.texi (Position Parameters): Give example of
28177         how to override a window manager positioning decision.
28179         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
28180         * src/frame.c (Fdelete_frame): In doc-string mention that frame
28181         can't be deleted if it has a surrogate minibuffer.
28182         * doc/lispref/frames.texi (Minibuffers and Frames)
28183         (Deleting Frames): Explain "surrogate minibuffer frames".
28185         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
28187 2015-05-18  Glenn Morris  <rgm@gnu.org>
28189         Add option to ignore commit lines matching a pattern in ChangeLog
28190         * build-aux/gitlog-to-changelog: Add --ignore-line option.
28191         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
28193 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
28195         Don't skip new etags tests on non-UTF-8 hosts
28196         Problem reported by Eli Zaretskii for MS-Windows.
28197         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
28198         (LC_ALL): Set to C if the current locale isn't UTF-8.
28199         (.PHONY): Remove ediff_1 thru ediff_5.
28200         (check): Always run.
28202 2015-05-18  Glenn Morris  <rgm@gnu.org>
28204         * lisp/calculator.el (calculator-funcall):
28205         * lisp/textmodes/artist.el (artist-spray-random-points):
28206         Use standard degree/radian conversion utilities.
28208         Further lisp-complete-symbol related cleanup.
28209         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
28210         Unadvertise non-functional argument.  Replace obsolete alias.
28212 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
28214         Add a test case for Maven warning ouput
28215         * test/automated/compile-tests.el
28216         (compile-tests--test-regexps-data): Add a case for Maven warning
28217         ouput.
28218         (compile--test-error-line): Check the compilation message type, if
28219         it's specified in the test data.
28221 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
28223         Update Maven compilation-mode entry to distinguish warnings
28224         * lisp/progmodes/compile.el
28225         (compilation-error-regexp-alist-alist): Update Maven entry to
28226         distinguish warnings (bug#20556).
28228 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
28230         * test/automated/sgml-mode-tests.el: New file.
28232 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
28234         Improve handling of the first Git revision
28235         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
28236         there's no next entry, delete until the end of the buffer.
28237         (log-view-end-of-defun-1): Stop at eob.
28238         * lisp/vc/vc-annotate.el
28239         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
28240         when previous-revision is nil.
28241         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
28242         with `--' to avoid ambiguity.
28243         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
28244         returned revision string.
28245         (vc-git-annotate-time): Expect `^' before the first revision.
28246         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
28247         REV1 is nil, and REV2 is not.
28248         * lisp/vc/vc.el: Update the description of the `diff' function.
28250 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
28252         Allow checkdoc to be called in batch
28253         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
28254         is non-nil, echo the error with `warn'.
28255         How it can be used in -batch:
28256         (with-current-buffer (find-file "checkdoc.el")
28257           (checkdoc-current-buffer t))
28259 2015-05-18  Glenn Morris  <rgm@gnu.org>
28261         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
28263 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
28265         * admin/notes/unicode: New section "binary files".
28267         Change new etags test to use UTF-8 encoding
28268         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
28269         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
28270         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
28271         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
28272         * test/etags/html-src/softwarelibero.html:
28273         Switch to UTF-8 encoding.
28274         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
28275         Remove Makefile, as it's too incestuous to have the test input
28276         include the build procedure.
28277         (UTF8_LOCALE, UTF_ENCODING): New macros.
28278         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
28279         (check): Skip if not UTF-8.
28280         (.PHONY): New rule.
28281         (FRC): Remove, as superseded by .PHONY.  All uses removed.
28282         (regexfile): Prefer printf to echo when outputting oddball chars.
28283         (.PRECIOUS): Remove, as these files are not built.
28285         Rename 'foo-gzipped' to 'foo.gz'
28286         * test/automated/data/decompress/foo.gz:
28287         Rename from test/automated/data/decompress/foo-gzipped,
28288         to make it easier for other tools to tell that it's compressed.
28289         * test/automated/zlib-tests.el (zlib--decompress):
28290         Adjust to renamed file.
28292 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
28294         Set up default-directory
28295         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
28296         binding for `v'.
28297         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
28298         appropriate value for default-directory.
28300 2015-05-17  Samer Masterson  <samer@samertm.com>
28302         * lisp/eshell/em-term.el (eshell-term-sentinel):
28303         No-op by default, only kills term buffer if
28304         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
28305         (eshell-destroy-buffer-when-process-dies): New custom to preserve
28306         previous behavior.
28308         eshell: Introduce new buffer syntax
28309         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
28310         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
28311         needed (Bug#19319).
28312         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
28313         (eshell-get-target): Remove shorthand-specific code.
28314         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
28315         '#<buffer-name>'.
28317 2015-05-17  Jan D  <jan.h.d@swipnet.se>
28319         Merge branch 'master' into cairo
28321 2015-04-26  Jan D  <jan.h.d@swipnet.se>
28323         Merge branch 'master' into cairo
28325         Add PBM support for cairo
28326         * src/image.c (xcolor_to_argb32): New function.
28327         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
28328         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
28329         XImagePtr if ! USE_CAIRO.
28330         (pbm_load): Add cairo support.
28332 2015-04-12  Jan D  <jan.h.d@swipnet.se>
28334         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
28335         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
28336         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
28337         x_free_cr_resources.
28339         Handle specified bg in images.  Use generic libpng code for PNGs.
28340         * src/image.c (get_spec_bg_or_alpha_as_argb)
28341         (create_cairo_image_surface): New functions when USE_CAIRO.
28342         (xpm_load): Call the above functions.  Handle XPM without mask
28343         when USE_CAIRO.
28344         (png_load_body): Handle USE_CAIRO case.
28345         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
28346         instead.
28347         (jpeg_load_body): Call create_cairo_image_surface.
28348         (gif_load, svg_load_image): Handle specified background, call
28349         create_cairo_image_surface.
28350         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
28352 2015-04-11  Jan D  <jan.h.d@swipnet.se>
28354         Support GIF and TIFF with cairo
28355         * configure.ac: Allow jpeg with cairo.
28356         Allow tiff and gif with cairo.
28357         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
28358         (tiff_load): Create cairo image surface if USE_CAIRO.
28359         (gif_load): Ditto.
28361         Support JPEG with USE_CAIRO
28362         * configure.ac: Allow jpeg with cairo.
28363         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
28365 2015-04-05  Jan D  <jan.h.d@swipnet.se>
28367         Support RSVG and cairo
28368         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
28369         * src/dispextern.h (struct image): Add cr_data2 if cairo.
28370         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
28371         (x_clear_image): Free cr_data and cr_data2 if set.
28372         (xpm_load): Assign data to cr_data2.
28373         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
28375 2015-04-03  Jan D  <jan.h.d@swipnet.se>
28377         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
28378         * configure.ac (HAVE_RSVG): Move after cairo.
28379         (USE_CAIRO): Disable rsvg, don't disable Xpm.
28380         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
28381         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
28382         don't return early.
28383         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
28384         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
28385         and create a surface.
28387         Tool tips for menus did not show any text.
28388         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
28389         tip frames, the geometry may be wrong.
28391         Merge branch 'master' into cairo, fixes tooltips not shown.
28393         Merge branch 'master' into cairo
28395         Add CAIRO_CFLAGS to lwlib/Makefile.in
28396         * Makefile.in (CAIRO_CFLAGS): Add.
28398 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28400         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
28402 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28404         Draw outermost line using black relief and erase corners also for cairo.
28405         * src/xterm.c [USE_CAIRO]: Include math.h.
28406         (enum corners) [USE_CAIRO]: New enum.
28407         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
28408         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
28409         than 1, draw the outermost line using the black relief.
28411         * src/xterm.c (x_fill_trapezoid_for_relief):
28412         Remove unnecessary cairo_close_path.
28414 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28416         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
28418         * src/xterm.c (x_draw_stretch_glyph_string):
28419         Call x_reset_clip_rectangles instead of XSetClipMask.
28421         Use int instead of unsigned int for width and height args.
28422         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
28423         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
28424         width and height args.
28426         Modernize k&r cairo-related function declarations.
28427         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
28428         (xg_print_frames_dialog): Modernize k&r declarations.
28429         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
28430         (Fx_print_frames_dialog): Modernize k&r declarations.
28431         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
28432         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
28433         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
28434         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
28435         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
28436         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
28437         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
28438         (x_clear_area): Modernize k&r declarations.
28440         Implement wave-style variant of underlining for cairo.
28441         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
28442         (x_draw_underwave) [USE_CAIRO]: Use it.
28444         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
28445         instead of XFillRectangle.
28447 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28449         Fix fringe bitmap initialization for cairo
28450         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
28451         data for cairo image surface.
28452         * src/xterm.c (x_cr_define_fringe_bitmap):
28453         Call cairo_surface_mark_dirty.
28455 2015-02-11  Jan D  <jan.h.d@swipnet.se>
28457         Add cairo drawing
28458         * configure.ac (with-cairo): New option.
28459         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
28460         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
28461         Output "Does Emacs use cairo?".
28462         * lisp/version.el (emacs-version): Add cairo version.
28463         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
28464         (FONT_OBJ): Add comment about ftcrfont.
28465         (ALL_CFLAGS): Add CAIRO_CFLAGS.
28466         (LIBES): Add CAIRO_LIBS.
28467         * src/dispextern.h (struct image): Add cr_data for cairo.
28468         (x_cr_init_fringe): Declare.
28469         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
28470         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
28471         * src/fringe.c (x_cr_init_fringe): New function name that shares code
28472         with w32_init_fringe.
28473         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
28474         * src/ftfont.c (ftfont_info_size); New global variable.
28475         (ftfont_open2): New extern function almost the same as old ftfont_open,
28476         but takes the font_object as argument.
28477         (ftfont_open): Build font object and call ftfont_open2.
28478         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
28479         * src/gtkutil.c (xg_clear_under_internal_border)
28480         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
28481         Only queue_draw if not cairo.  Change args to x_clear_area.
28482         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
28483         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
28484         (xg_print_frames_dialog): New functions for printing.
28485         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
28486         (xg_print_frames_dialog): Declare.
28487         * src/image.c: Add defined (USE_CAIRO) for PNG.
28488         Add !defined USE_CAIRO for W32 PNG code.
28489         (x_clear_image): If cairo, destroy the surface in cr_data.
28490         (png_load): Add new cairo compatible implementation.
28491         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
28492         * src/xfns.c: New section Printing.
28493         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
28494         (x-print-frames-dialog): New printing functions.
28495         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
28496         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
28497         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
28498         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
28499         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
28500         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
28501         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
28502         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
28503         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
28504         Declare.
28505         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
28506         (max_fringe_bmp, fringe_bmp): New variables.
28507         (x_gc_get_ext_data, x_extension_initialize)
28508         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
28509         (x_set_cr_source_with_gc_foreground)
28510         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
28511         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
28512         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
28513         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
28514         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
28515         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
28516         (x_update_begin): Create cairo surface if needed.
28517         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
28518         (x_update_end): Paint cairo drawing surface to xlib surface.
28519         (x_clear_under_internal_border, x_after_update_window_line): Adjust
28520         arguments to x_clear_area.
28521         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
28522         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
28523         of XSetClipMask.
28524         (x_set_glyph_string_clipping)
28525         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
28526         instead of XSetClipRectangles.
28527         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
28528         Use x_fill_rectangle instead of XFillRectangle.
28529         (x_draw_glyph_string_foreground)
28530         (x_draw_composite_glyph_string_foreground)
28531         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
28532         instead of XDrawRectangle.
28533         (x_draw_relief_rect): Add code for USE_CAIRO.
28534         Call x_reset_clip_rectangles instead of XSetClipMask.
28535         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
28536         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
28537         instead of XSetClipMask.
28538         (x_draw_image_foreground, x_draw_image_foreground_1):
28539         x_draw_rectangle instead of XDrawRectangle.
28540         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
28541         XFillRectangle.
28542         (x_draw_image_glyph_string): If img has cr_data, use it as
28543         a cairo surface.
28544         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
28545         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
28546         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
28547         x_reset_clip_rectangles instead of XSetClipMask.
28548         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
28549         (x_clear_area1): New function that calls XClearArea.
28550         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
28551         non-cairo.
28552         (x_clear_frame): x_clear_window instead of XClearWindow.
28553         (x_scroll_run): Set frame garbaged if cairo.
28554         (XTmouse_position): Initialize *part to 0.
28555         (x_scroll_bar_create): Adjust arguments to x_clear_area.
28556         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
28557         x_fill_rectangle instead of XFillRectangle.
28558         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
28559         arguments to x_clear_area.
28560         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
28561         (handle_one_xevent): Adjust arguments to x_clear_area.
28562         Destroy cairo surface for frame if ConfigureNotify.
28563         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
28564         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
28565         x_reset_clip_rectangles instead of XSetClipMask.
28566         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
28567         x_reset_clip_rectangles instead of XSetClipMask.
28568         (x_clear_frame_area): Adjust arguments to x_clear_area.
28569         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
28570         (x_term_init): Call x_extension_initialize if cairo.
28571         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
28572         x_cr_destroy_fringe_bitmap for cairo.
28573         (x_initialize): Call x_cr_init_fringe for cairo.
28574         * src/xterm.h: Add include of cairo header files.
28575         (x_bitmap_record): Add img if cairo.
28576         (x_gc_ext_data): New struct for cairo.
28577         (x_display_info): Add ext_codes for cairo.
28578         (x_output): Add cr_context and cr_surface for cairo.
28579         (x_clear_area): Change arguments from Display*/Window to frame pointer.
28580         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
28581         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
28582         (x_cr_draw_frame, x_cr_export_frames): Declare.
28584 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
28586         Fix integer-valued `mouse-highlight' (Bug#20590)
28587         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
28589 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
28591         MS-Windows followup for ASCIIfication of curved quotes
28592         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
28593         test for curved quotes being displayable, after switching the
28594         terminal encoding.  (Bug#20545)
28596 2015-05-17  Jan D  <jan.h.d@swipnet.se>
28598         Add comment that x_shift_glyphs_for_insert is never called
28599         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
28600         Add comment that this function is never called.
28602 2015-05-16  Glenn Morris  <rgm@gnu.org>
28604         * src/lisp.mk: Remove from repository and generate at build-time.
28605         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
28606         (shortlisp_filter): New variable.
28607         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
28608         (distclean): Remove lisp.mk.
28609         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
28610         * lisp/loadup.el: Tweak layout to make it easier to parse.
28611         * make-dist: Do not distribute src/lisp.mk.
28613 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
28615         Display shorter dates in Git annotate output
28616         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
28617         format (when not overridden with vc-git-annotate-switches).
28618         (vc-git-annotate-time): Support the short format, as well as ISO
28619         8601 that has been used until now (bug#5428).
28621 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
28623         ASCIIfy curved quotes on displays lacking them
28624         * lisp/international/mule-cmds.el (set-locale-environment):
28625         If curved quotes don't work, display straight ASCII approximations
28626         (Bug#20545).
28628 2015-05-16  Glenn Morris  <rgm@gnu.org>
28630         Small src/Makefile simplification
28631         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
28632         * src/Makefile.in (lisp): Derive from shortlisp.
28633         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
28635 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
28637         * lisp/help-mode.el (help-go-forward): Doc fix.
28638         (Bug#20577)
28640         * doc/lispref/debugging.texi (Profiling): Improve indexing.
28641         (Bug#20576)
28643 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
28645         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
28646         have one fewer `not'.
28648         * lisp/vc/vc-git.el (vc-git-diff-switches)
28649         (vc-git-annotate-switches, vc-git-resolve-conflicts)
28650         (vc-git-program, vc-git-root-log-format): Remove the redundant
28651         :group declarations.
28653 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
28655         Removes the predicate from lisp-complete-symbol (Bug#20456)
28656         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
28657         and remove it from the docstring.
28659 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
28661         Add new option vc-git-resolve-conflicts
28662         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
28663         (vc-git-find-file-hook): Add to after-save-hook only when the
28664         above is non-nil.
28665         (vc-git-resolve-when-done): Update to honor the new variable.
28666         (Bug#20292)
28668 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
28670         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
28671         (tabulated-list-init-header): Document new behavior.
28672         (tabulated-list-print-fake-header): Do nothing if
28673         `tabulated-list--header-string' is nil.
28674         (tabulated-list--header-string): Add a docstring.
28675         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
28676         * etc/NEWS: Document it.
28678 2015-05-15  Leo Liu  <sdl.web@gmail.com>
28680         Revert "Fix cps--gensym"
28681         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
28682         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
28684 2015-05-15  Glenn Morris  <rgm@gnu.org>
28686         Replace AC_SUBST_FILE in configure with include in Makefiles
28687         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
28688         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
28689         (AUTO_DEPEND): New output variable.
28690         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
28691         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
28692         (lwlib_deps_frag): Replace by conditional include.
28693         * lwlib/autodeps.mk: Remove file.
28694         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
28695         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
28696         (oldxmenu_deps_frag): Replace by conditional include.
28697         * oldXMenu/autodeps.mk: Remove file.
28698         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
28699         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
28700         (lisp_frag): Replace by an include.
28701         (deps_frag): Replace by conditional include.
28702         * src/autodeps.mk: Remove file.
28704         Tweak japanese.el's loading of dependencies
28705         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
28706         * lisp/language/japanese.el: Use require rather than load.
28707         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
28708         Provide a feature.
28709         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
28710         Provide a feature in the generated file.
28712 2015-05-15  Jan D  <jan.h.d@swipnet.se>
28714         Fix NS warnings
28715         * src/nsmenu.m (ns_popup_dialog)
28716         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
28717         * src/nsfns.m (Fx_create_frame): Remove unused variables.
28718         (Fns_read_file_name): Initialize fname, remove ret.
28719         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
28720         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
28721         Remove unused variable.
28722         (init): Add parantesis in if.
28723         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
28725 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
28727         Fix a enum conversion warning in macfont.m
28728         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
28729         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
28731 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
28733         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
28734         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
28736 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
28738         * lisp/cus-start.el: Add ns-confirm-quit.
28740         Fix warnings on OSX 10.10
28741         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
28742         OSX versions.
28743         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
28744         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
28745         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
28746         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
28747         setScalesWhenResized for OSX < 10.6.
28748         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
28749         * src/nsterm.m (ns_copy_bits): New function that does not use
28750         deprecated NSCopyBits.
28751         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
28752         (runAlertPanel): New function.
28753         (applicationShouldTerminate:): Call runAlertPanel.
28754         (initFrameFromEmacs, toggleFullScreen:): Only call
28755         useOptimizedDrawing for OSX < 10.10.
28756         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
28757         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
28758         (draggingEntered:): Returns NSDragOperation.
28759         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
28761 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
28763         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
28764         (package--init-file-ensured): New variable.
28765         (package-initialize, package--ensure-init-file): Use it.
28767 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
28769         Honor :fore/background for XBM on NS (Bug#14969)
28770         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
28771         initFromXBM takes bg, fg args, remove flip arg.
28772         (ns_image_from_XBM): Add bg, fg args.
28773         * src/image.c (x_create_bitmap_from_data)
28774         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
28775         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
28776         initFromXBM.  Remove flip arg.
28777         (initFromSkipXBM): Move code to initFromXBM.
28778         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
28779         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
28780         always false.
28781         Remove bit flipping (bitPat, swt), generated incorrect images when
28782         width/height wasn't a multiple of 8.
28783         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
28784         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
28785         remove flip arg.
28787 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
28789         * lisp/emacs-lisp/package.el: Be more careful with the init file.
28790         (package--ensure-init-file): Check that user-init-file is set,
28791         exists, is readable, and is writable.  (Bug#20584)
28792         Also expand the docstring.
28794 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
28796         Sync with upstream verilog-mode revision 6232468
28797         * lisp/progmodes/verilog-mode.el
28798         (verilog-font-lock-grouping-keywords-face)
28799         (verilog-highlight-grouping-keywords): Fix use of face when
28800         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
28801         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
28802         parent is reset, bug906.  Reported by Ken Schmidt.
28803         (verilog-auto-inout-module): Add fourth regexp argument to
28804         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
28805         Reported by John Tillema.
28806         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
28807         modport if signal attachment is itself a modport.  Reported by
28808         Matthew Lovell.
28809         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
28810         always_comb and always_latch, bug844.  Reported by Greg Hilton.
28811         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
28812         with many curly-bracket pairs, bug663.
28813         (verilog-set-auto-endcomments): Fix end comments for functions of
28814         type void, etc.  Reported by Alex Reed.
28815         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
28816         caused by indent-line-to deleting tabls pre 24.5.
28817         (verilog-nameable-item-re): Fix nameable items that can have an
28818         end-identifier to include endchecker, endgroup, endprogram,
28819         endproperty, and endsequence.  Reported by Alex Reed.
28820         (verilog-label-be): When auto-commenting a buffer, consider
28821         auto-comments on all known keywords (not just a subset thereof).
28822         Reported by Alex Reed.
28823         (verilog-auto-end-comment-lines-re)
28824         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
28825         Automatically comment property/endproperty blocks to match other
28826         similar blocks like sequence/endsequence, function/endfunction, etc.
28827         Reported by Alex Reed.
28828         (verilog-set-auto-endcomments): Detect the function- or task-name
28829         when auto-commenting blocks that lack an explicit portlist.
28830         Reported by Alex Reed.
28831         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
28832         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
28833         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
28834         is nil, fix indenting initial/final to match always statements,
28835         bug825.  Reported by Tim Clapp.
28836         (verilog-extended-complete-re): Fix indentation of DPI-C imports
28837         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
28838         Mao and Jason Forkey.
28839         (verilog-read-decls): Fix parsing typed interfaces.  Fix
28840         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
28841         Fix localparam not being ignored in AUTOINSTPARAM,
28842         bug889.  Reported by Shannon Hill.
28843         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
28844         bug793.  Reported by Pierre-David Pfister.
28845         (verilog-auto-arg-format, verilog-auto-arg-ports):
28846         Add verilog-auto-arg-format to support newlines in AUTOARG.
28847         Reported by Jie Xiao.
28848         (verilog-batch-execute-func): Do not batch re-auto files loaded by
28849         Local Variables.  Fix printing "no changes to be saved" with
28850         verilog-batch.  Reported by Dan Dever.
28851         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
28852         interface-only modules, bug721.  Reported by Dean Hoyt.
28853         Author: Alex Reed <acreed4@gmail.com>
28854         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
28855         Don't treat '<keyword>:<identifier>' as the start of a labeled
28856         statement, bug905.  Reported by Enzo Chi.
28857         (verilog-directive-re, verilog-compiler-directives)
28858         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
28859         directives (plus some extras) when determining indentation, bug
28860         901.  Reported by Bernd Beuster.
28861         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
28862         iff expression doesn't start with word-character, bug900.
28863         (verilog-optional-signed-range-re, verilog-optional-signed-re):
28864         Fix incorrect indentation/alignment of unsigned declarations,
28865         bug897.
28866         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
28867         always constructs, bug895.
28868         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
28869         Reported by Eric Mastromarchi.
28870         (verilog-beg-of-statement): Fix indenting for some forms of
28871         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
28872         continued assignment incorrect if first line ends with ']', bug437.
28873         Reported by Dan Dever.  Fix indention of cover inside an
28874         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
28875         blocks, bug842.
28876         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
28877         Reported by Kaushal Modi.
28878         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
28879         (verilog-backward-token): Fix indenting sensitivity lists with
28880         named events, bug840.  Reed.
28881         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
28882         nil not honoring 'forever', 'foreach', and 'do' keywords.
28884 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
28886         Check for invalid GTK+ monitor scales
28887         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
28888         INT_MAX for too-large scales.  All callers changed to assume the
28889         result is valid (Bug#20432).
28890         (xg_frame_set_char_size, xg_update_scrollbar_pos):
28891         Calculate scale only if needed.
28892         Show ASCII approximations instead.
28894 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
28896         Fix daemon crashes when linum-mode is turned on early on
28897         * src/window.c (Fwindow_end): Don't try calling display engine
28898         functions on initial-frame frame.  (Bug#20565)
28900         Fix selective diff browsing in Ediff
28901         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
28902         Go to the beginning of the region before searching for the
28903         ediff-regexp-focus-* regexps.  (Bug#20568)
28905 2015-05-14  Jan D  <jan.h.d@swipnet.se>
28907         Fixes bug#20142
28908         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
28909         arrive in the main loop, even for Gtk 3 (Bug#20142).
28911         Don't access display after i/o error (Bug#19147).
28912         * src/xterm.c (x_connection_closed): Add third arg ioerror.
28913         If ioerror, set display to 0 (Bug#19147).
28914         (x_error_quitter): Call x_connection_closed with third arg false.
28915         (x_io_error_quitter): Call x_connection_closed with third arg true.
28917         Handle GTK_SCALE, fixes Bug#20432.
28918         * src/gtkutil.c (xg_get_gdk_scale): New function.
28919         (xg_frame_set_char_size)
28920         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
28921         (xg_get_default_scrollbar_height)
28922         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
28923         when setting sizes (Bug#20432).
28925 2015-05-13  Leo Liu  <sdl.web@gmail.com>
28927         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
28929 2015-05-13  Glenn Morris  <rgm@gnu.org>
28931         Fix bootstrap (void function cl-member).
28932         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
28933         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
28935 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
28937         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
28938         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
28939         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
28940         Avoid defalias for closures which are not immutable.
28941         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
28942         the dispatchers table with various entries.
28943         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
28944         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
28946 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
28948         Improve tagging of C bindings in DEFVAR_*
28949         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
28950         from DEFVAR_*.
28952 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
28954         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
28956 2015-05-12  Glenn Morris  <rgm@gnu.org>
28958         * lisp/progmodes/tcl.el (tcl-filter):
28959         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
28961         Add basic VC push support
28962         * lisp/vc/vc.el (vc-push): New autoloaded command.
28963         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
28964         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
28965         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
28966         (vc-bzr-push): New.
28967         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
28968         (vc-git-pull): Reimplement using vc-git--pushpull.
28969         (vc-git-push): New.
28970         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
28971         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
28972         * doc/emacs/maintaining.texi (Pulling / Pushing):
28973         Rename from "VC Pull".  Mention pushing.
28974         (VC With A Merging VCS, VC Change Log): Update xrefs.
28975         (Branches): Update menu.
28976         * doc/emacs/emacs.texi: Update menu.
28977         * etc/NEWS: Mention this.
28979 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
28981         Improve the seq pcase pattern and the `seq-let' macro
28982         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
28983         object is a sequence, and binds each element of ARGS to the
28984         corresponding element of the sequence.
28986 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
28988         Fix tags created from DEFVAR_* declarations in C
28989         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
28990         to make tags extracted from DEFVAR_* declarations more accurate.
28992         Add a test suite for etags
28993         * test/etags/: New test suite, adapted from
28994         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
28995         whose original author is Francesco Potortì <pot@gnu.org>.
28997         Fix tagging of symbols in C enumerations
28998         * lib-src/etags.c (consider_token): Don't tag symbols in
28999         expressions that assign values to enum constants.  See
29000         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
29001         for details.
29002         (C_entries): Reset fvdef to fvnone after processing a preprocessor
29003         conditional and after a comma outside of parentheses.
29005 2015-05-12  Glenn Morris  <rgm@gnu.org>
29007         * lisp/url/url-handlers.el (url-file-name-completion)
29008         (url-file-name-all-completions): Silence compiler.
29010         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
29012         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
29014 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
29016         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
29017         (cl--generic-mandatory-args): Remove.
29018         (cl--generic-split-args): New function.
29019         (cl-generic-define, cl--generic-lambda): Use it.
29020         (cl-generic-define-method): Use it as well, and add support for
29021         context args.
29022         (cl--generic-get-dispatcher): Handle &context dispatch.
29023         (cl--generic-cache-miss): `dispatch-arg' can now be a
29024         context expression.
29025         (cl--generic-dispatchers): Pre-fill.
29026         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
29027         New test.
29029 2015-05-11  Glenn Morris  <rgm@gnu.org>
29031         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
29033 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
29035         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
29036         * lisp/term/rxvt.el: Require term/xterm.
29037         (rxvt-function-map): Use xterm-rxvt-function-map.
29038         (rxvt-standard-colors): Move before first use.
29039         (terminal-init-rxvt): Use xterm--push-map and
29040         xterm-register-default-colors.
29041         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
29042         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
29043         Move shared bindings between rxvt and xterm to it.
29044         (xterm-function-map): Use it.  Move the xterm-paste binding to
29045         xterm-rxvt-function-map (bug#20444).
29046         (xterm-standard-colors): Move before first use.
29047         (xterm--push-map): New function.
29048         (xterm-register-default-colors): Take standard colors as argument.
29049         (terminal-init-xterm): Use it.  Adjust call to
29050         xterm-register-default-colors.
29052 2015-05-11  Glenn Morris  <rgm@gnu.org>
29054         * lisp/term/x-win.el: Quieten --without-x compilation.
29055         (x-own-selection-internal, x-disown-selection-internal)
29056         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
29057         Declare.
29059         * Makefile.in (emacslog): Remove srcdir.
29060         (ChangeLog): Update for the above.
29062 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
29064         python.el: better limit for looking-back calls
29065         * lisp/progmodes/python.el (python-shell-accept-process-output):
29066         Use last comint prompt start as limit for looking-back.
29068 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
29070         CEDET (srecode-insert-fcn): Fix use of oref on a class
29071         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
29072         on a class.  Reported by Pierre Lorenzon.
29073         (srecode-template-inserter-point): Remove declaration.
29075         CEDET (srecode-create-dictionary): Avoid obsolete object name
29076         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
29077         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
29079 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
29081         C-x 8 shorthands for curved quotes, Euro, etc.
29082         Although C-x 8 lets you insert arbitrary Unicode characters,
29083         it's awkward to use this to insert commonly used symbols such as curved
29084         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
29085         characters commonly found in English text and in basic math.
29086         For example, assuming the Alt key works on your keyboard and iso-transl
29087         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
29088         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
29089         (Bug#20499)
29090         * doc/emacs/mule.texi (Unibyte Mode):
29091         A few other printing characters now work too.
29092         * etc/NEWS: Document this.
29093         * lisp/international/iso-transl.el (iso-transl-char-map):
29094         Also support the following characters:
29095         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
29097 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
29099         Add xref-find-regexp
29100         * lisp/progmodes/xref.el (xref-find-function): Describe the
29101         `matches' action.
29102         (xref-find-regexp): New command, using it.
29103         (xref-collect-references): Rename to xref-collect-matches.
29104         (xref--collect-reference): Rename to xref--collect-match.
29105         (xref-collect-matches, xref--collect-match): Accept new argument,
29106         KIND.  Update accordingly.
29107         (xref--regexp-to-extended): New function.
29108         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
29109         `matches' action.
29110         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
29111         * lisp/progmodes/etags.el (etags-xref-find):
29112         Support the `matches' action.
29113         (etags--xref-find-matches): New function.
29115 2015-05-10  Glenn Morris  <rgm@gnu.org>
29117         * Makefile.in: Fixes for recent change-history changes.
29118         (change-history-nocommit): Update footer regexp.
29119         Ensure output script stays executable.
29121 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
29123         New version of `seq-let' based on a pcase pattern
29124         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
29125         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
29127 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
29129         Add basic HTML5 tags and a template
29130         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
29131         (html-tag-alist): Add HTML5 tags.
29132         (html-tag-help): Add new tags descriptions.
29133         (html-navigational-links): Template for nav links.
29134         (html-html5-template): Template for a HTML5 page.
29136 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
29138         semantic/symref/grep: Don't use word boundaries
29139         * lisp/cedet/semantic/symref/grep.el
29140         (semantic-symref-perform-search): Instead of wrapping input in
29141         word boundaries, check that the characters before and after are
29142         not word constituents.
29144         semantic/symref/grep: Support regexp search
29145         * lisp/cedet/semantic/symref.el
29146         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
29147         the search type is regexp.
29148         * lisp/cedet/semantic/symref/grep.el
29149         (semantic-symref-perform-search): Support the regexp search type.
29150         Pass -E to Grep when it's used.
29152         semantic-symref-regexp: Allow to input an arbitrary string
29153         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
29154         Allow to input an arbitrary string interactively.
29156         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
29157         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
29158         Remove tag-symbol-match-p from the default value
29159         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
29161         Declare find-tag obsolete
29162         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
29163         xref-find-definitions.
29165 2015-05-10  Jan D  <jan.h.d@swipnet.se>
29167         Draw composite string correctly (Bug#20537)
29168         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
29169         New function.
29170         (ns_draw_glyph_string): Call it.
29172 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
29174         Avoid infloop in ERC
29175         * lisp/simple.el (line-move-to-column): Ignore field boundaries
29176         while computing line beginning position.  (Bug#20498)
29178 2015-05-08  Glenn Morris  <rgm@gnu.org>
29180         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
29181         * build-aux/gitlog-to-emacslog: Check called from right directory.
29182         (srcprefix): Remove.
29184         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
29185         * Makefile.in (ChangeLog): No longer pass "distprefix".
29186         * make-dist: Update "make ChangeLog" syntax for the above change.
29188         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
29189         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
29191         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
29193         Add command-line option-parsing to gitlog-to-emacslog
29194         * build-aux/gitlog-to-emacslog: Add command-line options.
29195         By default, refuse to remove an existing output file.
29196         * Makefile.in (CHANGELOG): Update default.
29197         (ChangeLog): Do not test for existing file.
29198         (change-history-nocommit): Ensure temp file does not exist.
29200         Quieten --without-x compilation
29201         * lisp/term/common-win.el: Provide a feature.
29202         * lisp/term/x-win.el (term/common-win): Require it.
29204         * lisp/dired-aux.el (dired-do-print): Require lpr.
29206         Quieten compilation, eg in --without-x builds
29207         * lisp/dired-aux.el (lpr-printer-switch):
29208         * lisp/frame.el (tool-bar-height):
29209         * lisp/linum.el (font-info):
29210         * lisp/window.el (font-info, overflow-newline-into-fringe)
29211         (tool-bar-height):
29212         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
29213         * lisp/gnus/gnus-util.el (iswitchb-mode):
29214         * lisp/mail/rmailmm.el (libxml-parse-html-region):
29215         * lisp/net/nsm.el (gnutls-peer-status)
29216         (gnutls-peer-status-warning-describe):
29217         * lisp/net/shr.el (libxml-parse-xml-region):
29218         * lisp/url/url-http.el (gnutls-peer-status): Declare.
29220 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
29222         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
29223         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
29224         `subclass' since they're never called with a class.
29225         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
29226         srecode-dictionary-child-p.
29228 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
29230         * lisp/help.el (help--binding-locus): Document argument POSITION.
29231         (Bug#20530)
29233 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
29235         Merge from gnulib
29236         * doc/misc/texinfo.tex: Get latest version.
29238 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
29240         ffap.el (ffap-read-file-or-url): Fix completing-read call
29241         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
29242         `completing-read' should be a symbol.
29244 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
29246         Verify file modifications by other programs
29247         * src/filelock.c (lock_file): Check whether the file was modified
29248         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
29250         Fix keyboard macros that include function keys
29251         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
29252         keys in the macro before returning.  (Bug#20454)
29254 2015-05-08  Glenn Morris  <rgm@gnu.org>
29256         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
29257         "Copyright-paperwork-exempt".  (Bug#20324)
29259         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
29260         (log-edit-rewrite-tiny-change): New variable.
29261         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
29262         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
29263         * etc/NEWS: Mention this.
29265         * lisp/calc/calc.el (math-zerop): Declare.
29267         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
29269 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
29271         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
29272         Support the case when BINDINGS is a single tuple.  (Bug#20525)
29274         * etc/NEWS: Fix typo in previous commit
29275         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
29277 2015-05-07  Jan D  <jan.h.d@swipnet.se>
29279         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
29280         Output URL to Gtk+ bug (Bug#20452).
29282         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
29284 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
29286         * lisp/emacs-lisp/package.el: New "external" package status.
29287         An external package is any installed package that's not built-in
29288         and not from `package-user-dir', which usually means it's from an
29289         entry in `package-directory-list'.  They are treated much like
29290         built-in packages, in that they cannot be through the Package Menu
29291         deleted and are not considered for upgrades.
29292         (package-desc-status): Identify if a package is installed outside
29293         `package-user-dir'.
29294         (package-menu--print-info-simple)
29295         (package-menu--status-predicate): Add support for it.
29296         * etc/NEWS: Document it.
29298 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
29300         * lisp/mail/rmail.el: Use lexical-binding.
29301         (rmail-bury): Remove unused var `buffer-to-bury'.
29302         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
29303         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
29304         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
29305         (rmail-insert-inbox-text): Remove unused var `movemail'.
29306         (rmail-add-mbox-headers): Remove unused var `limit'.
29307         (rmail-undelete-previous-message): Remove unused var `value'.
29308         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
29309         `resent-reply-to'.
29310         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
29311         (rmail-restore-desktop-buffer): Rename arguments.
29313 2015-05-06  Glenn Morris  <rgm@gnu.org>
29315         * Makefile.in (change-history-commit): Add missing piece of previous.
29317         Avoid unnecessary bumping of Makefile.in's timestamp
29318         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
29319         (emacslog): New variable.
29320         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
29321         (unchanged-history-files): Use $emacslog rather than Makefile.in.
29322         (change-history-nocommit): Store hash in $emacslog.
29323         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
29324         * admin/update_autogen (changelog_files): Update for the above.
29326         * Makefile.in: Don't always insist on removing existing "ChangeLog".
29327         (CHANGELOG): New variable.
29328         (no-ChangeLog): Remove.
29329         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
29330         (change-history-nocommit): Use a temp file rather than insisting
29331         on deletion of any existing "ChangeLog".
29333         * build-aux/gitlog-to-emacslog: Allow specification of output.
29335         * admin/update_autogen: Add option to update ChangeLog.
29336         (usage): Mention -H.
29337         (changelog_flag, changelog_n, changelog_files): New variables.
29338         (main): Check for -H, and maybe run change-history-nocommit.
29340 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
29342         * lisp/subr.el (delete-dups): Pre-size the hashtable.
29344         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
29345         cl--arglist-args is defined (bug#20517).
29347 2015-05-06  Glenn Morris  <rgm@gnu.org>
29349         * Makefile.in (change-history-nocommit): New.
29351 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
29353         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
29354         timer when it is non-nil
29355         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
29357 2015-05-06  Glenn Morris  <rgm@gnu.org>
29359         Quieten CEDET compilation
29360         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
29361         Invert fboundp test to quieten on current Emacs.
29362         * lisp/cedet/ede/config.el (ede-shell-run-something)
29363         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
29364         (semanticdb-refresh-table): Declare.
29365         (ede-preprocessor-map): Require semantic/db.
29367         Quieten cc-mode compilation
29368         * lisp/progmodes/cc-awk.el (c-forward-sws):
29369         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
29370         Declare.
29372 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
29374         * lisp/subr.el (delete-dups): Avoid nreverse.
29376 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
29378         * lisp/subr.el (delete-dups): Make it destructive again.
29380 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
29382         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
29384 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
29386         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
29387         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
29388         (testcover--read): Rename from testcover-read.  Change calling
29389         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
29390         is gone.
29391         (testcover-start): Use add-function.  Move edebug-all-defs binding to
29392         testcover--read.
29393         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
29394         (testcover-mark): Remove unused var `item'.
29395         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
29397 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
29399         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
29400           use a hash table.  This can result in ~500 times speed-up for typical
29401           collections of size 5000, like that of `load-library'.
29403 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
29405         CEDET: Avoid `oref' on classes in a few more cases
29406         * lisp/cedet/ede/generic.el (ede-find-target):
29407         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
29408         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
29409         var `prefix'.
29411         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
29412         (grepflags, greppattern): Declare.
29413         (semantic-symref-perform-search): Remove unused var `pat'.
29415         CEDET (srecode-compile-inserter): Avoid `oref' on classes
29416         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
29417         Avoid `oref' on classes (bug#20491).
29418         (srecode-compile-split-code): Remove unused var `key'.
29420 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
29422         Clean up pulse.el a little
29423         * lisp/cedet/pulse.el (pulse): Remove.
29424         (pulse-momentary-timer): Save instead of the stop time.
29425         (pulse-momentary-highlight-overlay):
29426         Call pulse-momentary-unhighlight first thing.
29427         Treat pulse-momentary-overlay as a single value, not a list.
29428         Save the created timer.  Only pass the stop time to the timer.
29429         (pulse-tick): Update accordingly.
29430         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
29431         single value.  Cancel the timer.
29433 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
29435         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
29436         Support the biblatex journaltitle field.
29438 2015-05-05  Glenn Morris  <rgm@gnu.org>
29440         Minor declare-function improvement
29441         * lisp/emacs-lisp/bytecomp.el
29442         (byte-compile-macroexpand-declare-function):
29443         Handle declarations after calls.  (Bug#20509)
29445         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
29447         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
29449 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
29451         Pulse using a timer
29452         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
29453         (pulse-momentary-highlight-overlay): Set up the timer instead of
29454         calling `pulse'
29455         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
29456         (pulse-tick): New function.
29457         (pulse-momentary-unhighlight): Cut off the stop time.
29458         (pulse-delay): Update the docstring WRT to not using sit-for.
29460         Add semantic/symref/grep file patterns for ruby-mode
29461         * lisp/cedet/semantic/symref/grep.el
29462         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
29463         Clarify the docstring.
29465         Don't require match
29466         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
29467         match.  That doesn't work for every command, and some identifier
29468         completion tables are bound to be imperfect anyway.
29470 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
29472         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
29473         (semantic-grammar--template-expand): New function.
29474         (semantic-grammar-header, semantic-grammar-footer): Use it.
29475         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
29476         (semantic-grammar-file-regexp): Refine regexp.
29477         (semantic-grammar-eldoc-get-macro-docstring):
29478         Use elisp-get-fnsym-args-string when available.
29479         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
29480         instead of the old eldoc-* names.
29481         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
29482         from elisp-mode.el.  Tweak calling convention.
29483         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
29484         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
29485         elisp--get-fnsym-args-string.
29486         (elisp--highlight-function-argument): Add `prefix' arg.
29487         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
29488         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
29490 2015-05-05  Glenn Morris  <rgm@gnu.org>
29492         * lisp/help-fns.el (describe-function-1):
29493         Handle builtins with advertised calling conventions.  (Bug#20479)
29495 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
29497         Merge branch 'seq-let'
29499         Update `seq-let' documentation
29500         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
29501         with the support of  `&rest'.
29503         Add support for &rest in `seq-let'
29504         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
29505         in the argument list.
29506         * test/automated/seq-tests.el: Add a test for parsing and binding
29507         `&rest' in `seq-let'.
29509 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
29511         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
29512         Add missing increment (Bug#20467).
29513         (eieio-object-value-create): Adjust to new slots representation
29514         (Bug#20467).
29515         (eieio-object-value-create): Fix missed adjustment to new
29516         representation of slots metadata.
29518 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
29520         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
29522 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
29524         Work around "Attempt to modify read-only object"
29525         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
29526         elisp--xref-find-definitions, to work around "Attempt to modify
29527         read-only object" error.
29529         Only skip some variables that have function counterparts
29530         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
29531         Only skip minor-mode-named variable if it's defined in a Lisp
29532         file, and it's in minor-mode-list (bug#20506).
29533         * test/automated/elisp-mode-tests.el
29534         (elisp-xref-finds-both-function-and-variable)
29535         (elisp-xref-finds-only-function-for-minor-mode): New tests.
29537 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
29539         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
29540         previous change.
29541         (xref--insert-xrefs): Buttonize the whole line, including the
29542         number at the beginning.
29544         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
29545         Make sure we're inside the let bindings.
29546         * test/automated/elisp-mode-tests.el
29547         (elisp-completes-functions-after-let-bindings): New test.
29549 2015-05-04  Glenn Morris  <rgm@gnu.org>
29551         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
29552         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
29553         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
29554         Remove outdated declarations.
29556         Replace instances of "(eval-when-compile (autoload ...))"
29557         * lisp/gnus/gnus-art.el (nneething-get-file-name):
29558         Declare rather than autoload.
29559         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
29560         Remove pointless autoload.
29561         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
29562         (gnus-topic-create-topic, gnus-topic-enter-dribble):
29563         Declare rather than autoload.
29564         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
29565         (mailcap-extension-to-mime): Autoload at run-time.
29566         * lisp/gnus/mm-util.el (latin-unity-massage-name)
29567         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
29568         (latin-unity-representations-present-region):
29569         Declare rather than autoload.
29570         * lisp/gnus/mml-smime.el (epg-make-context)
29571         (epg-passphrase-callback-function): Autoload at run-time.
29572         (epg-context-set-signers, epg-context-result-for)
29573         (epg-new-signature-digest-algorithm)
29574         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
29575         (epg-sign-string, epg-encrypt-string)
29576         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
29577         (epg-configuration, epg-expand-group, epa-select-keys):
29578         Declare rather than autoload.
29579         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
29580         Autoload at run-time.
29581         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
29582         (gnus-registry-get-id-key, gnus-registry-action):
29583         Declare rather than autoload.
29584         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
29585         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
29586         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
29587         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
29588         (spam-stat-split-fancy): Remove pointless autoloads.
29589         * lisp/net/mairix.el: Load gnus-util when compiling.
29590         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
29591         (message-field-value): Declare rather than autoload.
29592         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
29593         Check gnus-alive-p is fbound.
29594         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
29595         (vm-check-for-killed-summary, vm-error-if-folder-empty)
29596         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
29597         Declare rather than autoload.
29599         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
29601         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
29602         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
29604         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
29606         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
29608         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
29609         * lisp/emacs-lisp/package.el (epg-signature-status):
29610         Fix declarations.
29612         * lisp/play/gametree.el (gametree-show-children-and-entry)
29613         (gametree-apply-layout, gametree-mouse-show-subtree)
29614         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
29616         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
29617         Handle cl-defgeneric, cl-defmethod.
29619 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
29621         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
29622         Highlight both type and symbol name.
29624         Insert, highlight and align line numbers in xref output
29625         * lisp/progmodes/etags.el (xref-location-line): Specialize for
29626         xref-etags-location.
29627         * lisp/progmodes/xref.el (xref-location-line): New generic method.
29628         (xref-file-location): Add reader for the line slot.
29629         (xref--location-at-point): Skip to the `xref-location' property.
29630         (xref--collect-reference): Drop the line number from description.
29631         (xref--insert-xrefs): Insert, highlight and align line numbers.
29633 2015-05-04  Daniel Colascione  <dancol@dancol.org>
29635         * lisp/simple.el (save-mark-and-excursion--save)
29636         (save-mark-and-excursion--restore): Fix previous commit
29637         (255a011f0ecf004b31c59945b10154b10fac3af1).
29639 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
29641         Don't pulse the indentation, or the newline
29642         * lisp/cedet/pulse.el (pulse-lighten-highlight)
29643         (pulse-reset-face): Fall back to the inherited background
29644         attribute in FACE.
29645         (pulse-momentary-highlight-region): Add autoload cookie.
29646         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
29647         indentation, or the newline, if the line's non-empty
29648         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
29650 2015-05-04  Daniel Colascione  <dancol@dancol.org>
29652         Add `save-mark-and-excursion', which has the old
29653         `save-excursion' behavior
29654         * doc/lispref/positions.texi (Excursions):
29655         Document `save-mark-and-excursion'.
29656         * lisp/font-lock.el (font-lock-fontify-block):
29657         Use `save-mark-and-excursion' instead of `save-excursion',
29658         restoring Emacs 24 behavior.
29659         * lisp/simple.el (save-mark-and-excursion--save)
29660         (save-mark-and-excursion--restore): New functions.
29661         (save-mark-and-excursion): New user macro.
29662         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
29663         in `save-excursion' documentation.
29665 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
29667         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
29668         Classify lone symbol inside let varlist as variable.
29669         * test/automated/elisp-mode-tests.el
29670         (completest-variables-in-let-bindings): New test.
29672         Add xref-pulse-on-jump
29673         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
29674         Add autoload cookie.
29675         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
29676         (xref--maybe-pulse): New function.
29677         (xref-pop-marker-stack, xref--pop-to-location)
29678         (xref--display-position): Use it.
29679         (xref--location-at-point): Use back-to-indentation.
29681 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
29683         lisp/org/org-{macs,list}.el: Fix lexical warnings
29684         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
29685         (org-list-get-next-item, org-list-get-prev-item)
29686         (org-list-get-children): Mark unused arg `struct'.
29687         (org-list-use-alpha-bul-p): Remove unused var `bul'.
29688         (org-toggle-checkbox): Mark unused var.
29689         (org-update-checkbox-count): Remove unused var `box-num'.
29690         (org-adapt-indentation): Declare.
29691         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
29692         (org-list-send-list): Remove unused var `txt'.
29693         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
29694         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
29695         * lisp/org/org-macs.el: Use `declare'.
29696         (org-with-limited-levels): Declare dyn-bound vars.
29698 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
29700         Fix minor issues with CEDET on MS-Windows
29701         * lisp/cedet/semantic/symref/idutils.el
29702         (semantic-symref-parse-tool-output-one-line): Fix the search
29703         regexp to match MS-Windows file names with drive letters.
29704         (Bug#19468)
29705         * lisp/cedet/semantic/symref/grep.el
29706         (semantic-symref-grep-use-template): Remove "--color=always" from
29707         Grep switches on MS-Windows.
29708         (semantic-symref-grep-shell): Use shell-file-name as the default
29709         value, so this works not only on Posix platforms.
29710         (semantic-symref-perform-search): Use shell-quote-argument instead
29711         of literal '..' for portable quoting of Grep command-line
29712         argument.  Use shell-command-switch instead of a literal "-c".
29713         * lisp/cedet/semantic/bovine/gcc.el
29714         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
29715         for an absolute file name in a portable way.
29717 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
29719         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
29720         (package-import-keyring, package-refresh-contents)
29721         (package-compute-transaction, package--save-selected-packages)
29722         (package-install-from-archive, package-delete)
29723         (package-menu--perform-transaction): Use `inhibit-message' instead.
29724         (package--compile): Set `warning-minimum-level' to :error.
29726 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
29728         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
29729         (terminal-init-screen): Use it (bug#20356).
29730         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
29731         (xterm--extra-capabilities-type): New const.
29732         (xterm-extra-capabilities): Use it.
29733         (xterm--version-handler): Lower the pseudo-version for `screen'.
29735 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
29737         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
29738         Always insert a newline at the end (to avoid mouse-face background
29739         tail at the last line).
29741         elisp-completion-at-point: Prioritize being quoted over funpos
29742         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
29743         Only consider function position when not inside quoted form
29744         (bug#20425).
29745         * test/automated/elisp-mode-tests.el: New file.
29747         Stop vc-print-log from jumping to the top
29748         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
29749         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
29750         is not specified.
29751         (vc-incoming-outgoing-internal): Always pass nil.
29752         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
29753         call it, and don't set vc-sentinel-movepoint (bug#15322).
29754         (vc-print-root-log): Don't fetch the root working revision, nor
29755         pass it to vc-print-log-internal.
29757 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
29759         Fix display of keyboard layouts for right-to-left scripts
29760         * lisp/international/quail.el (quail-insert-kbd-layout):
29761         Force left-to-right paragraph direction.
29763 2015-05-02  K. Handa  <handa@gnu.org>
29765         * src/cmds.c (internal_self_insert): When we insert spaces for
29766         padding, set point before the padding spaces, not after them.
29768 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
29770         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
29772 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
29774         Fix etags-xref-find for references
29775         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
29776         Use `cl-mapcan'.
29777         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
29778         directory if no tags tables are loaded (bug#19468).
29780 2015-05-02  Philipp Stephani  <phst@google.com>
29782         Update the options in whitespace-style defcustom
29783         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
29784         `repeat' because the option is really set-like.  Add missing
29785         options.  Reorder options to match the order in the
29786         documentation.  (Bug#20346)
29788 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
29790         Fix error diagnostics of c-macro-expand
29791         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
29792         too early if no start-marker string was found -- that generally
29793         means cpp exited abnormally, and we still want to show its error
29794         messages to the user.
29796         Don't require Texinfo 5.0 for Emacs documentation
29797         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
29798         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
29799         "@codequoteundirected on", respectively, to avoid requiring
29800         Texinfo 5.x for Emacs documentation.
29802 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
29804         * lisp/files.el (pwd):
29805         When called with a prefix argument, insert the current default
29806         directory at point.
29808 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
29810         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
29811         * lisp/isearch.el (isearch-mode-map): Don't inhibit
29812         function-key-map remapping for backspace (bug#20466).
29814 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
29816         Implement xref-find-references in etags and elisp-mode
29817         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
29818         (elisp-xref-find): Use it.
29819         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
29820         * lisp/progmodes/xref.el (xref-collect-references):
29821         (xref--collect-reference): New functions.
29823 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
29825         Prefer plain characters to Texinfo circumlocutions
29826         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
29827         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
29829         Fix single-quoting style in PDF manuals
29830         The PDF versions of the GNU manuals used curved single quotes to
29831         represent grave accent and apostrophe, which made it a pain to cut
29832         and paste code examples from them.  Fix the PDF versions to use
29833         grave accent and apostrophe for Lisp source code, keystrokes, etc.
29834         This change does not affect the info files, nor does it affect
29835         ordinary uses of curved single quotes in PDF.
29836         * doc/emacs/docstyle.texi: New file, which specifies treatment for
29837         grave accent and apostrophe, as well as the document encoding.
29838         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
29839         * doc/lispintro/emacs-lisp-intro.texi:
29840         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
29841         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
29842         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
29843         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
29844         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
29845         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
29846         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
29847         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
29848         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
29849         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
29850         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
29851         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
29852         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
29853         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
29854         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
29855         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
29856         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
29857         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
29858         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
29859         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
29860         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
29861         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
29862         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
29863         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
29864         * doc/misc/woman.texi:
29865         Use it instead of '@documentencoding UTF-8', to lessen the need for
29866         global changes like this in the future.
29867         * doc/emacs/Makefile.in (EMACS_XTRA):
29868         * doc/lispintro/Makefile.in (srcs):
29869         * doc/lispref/Makefile.in (srcs):
29870         Add dependency on docstyle.texi.
29871         * doc/misc/Makefile.in (style): New macro.
29872         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
29873         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
29874         Use it.
29876 2015-05-01  Glenn Morris  <rgm@gnu.org>
29878         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
29880         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
29881         (help-fns--signature): Declare.
29883         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
29885 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
29887         New macro seq-let, providing destructuring support to seq.el
29888         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
29889         to `cl-destructuring-bind' but works on all sequence types supported
29890         by `seq.el'.  Bump version number to 1.6.
29891         * test/automated/seq-tests.el: Add tests for seq-let.
29892         * doc/lispref/sequences.texi: Add documentation for seq-let.
29894 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
29896         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
29898 2015-05-01  Glenn Morris  <rgm@gnu.org>
29900         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
29902 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
29904         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
29905         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
29906         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
29907         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
29908         (Bug#20445).
29910 2015-05-01  K. Handa  <handa@gnu.org>
29912         * lisp/international/mule-cmds.el (input-method-use-echo-area):
29913         Change :type to 'boolean.
29915 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
29917         Start using proportional fonts in eww by default
29918         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
29919         it seems to work well.
29921         Fix links in tables in shr
29922         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
29923         makes (some) links in tables not work.
29925 2015-05-01  Jan D  <jan.h.d@swipnet.se>
29927         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
29929 2015-04-30  Glenn Morris  <rgm@gnu.org>
29931         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
29932         Update for 2015-02-08 change to indirect-function.
29934         * lisp/term/ns-win.el (ns-get-selection-internal):
29935         Remove declaration for function deleted 2014-10-21.
29937         * lisp/dom.el: Load subr-x when compiling, for when-let.
29939         Silence some compilation warnings
29940         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
29941         * lisp/emulation/cua-base.el (delete-active-region):
29942         * lisp/net/net-utils.el (w32-get-console-output-codepage):
29943         * lisp/term/ns-win.el (ns-own-selection-internal)
29944         (ns-disown-selection-internal, ns-selection-owner-p)
29945         (ns-selection-exists-p, ns-get-selection):
29946         Declare for compiler.
29948         Function declaration updates prompted by 'make check-declare'
29949         * lisp/emacs-lisp/package.el (lm-homepage):
29950         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
29951         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
29952         * lisp/gnus/mml.el (libxml-parse-html-region):
29953         * lisp/gnus/nnrss.el (libxml-parse-html-region):
29954         * lisp/net/eww.el (libxml-parse-html-region):
29955         * lisp/net/shr.el (libxml-parse-html-region):
29956         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
29957         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
29958         * lisp/vc/vc-git.el (vc-annotate-convert-time):
29959         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
29960         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
29961         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
29962         Update declaration.
29964         Remove compatibility code for 20-year old function renaming
29965         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
29966         Make it an obsolete alias.
29967         (idlwave-shell-filter): Change all uses to comint-output-filter.
29969 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
29971         Add ace-window face config
29972         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
29973         configuration.
29975 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
29977         Unclutter 'make doc' output a bit
29978         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
29979         Use make subst rather than sh IFS to split target string apart.
29980         This makes 'make' output easier to follow.
29982         Merge from gnulib
29983         * doc/misc/texinfo.tex: Update from gnulib.
29985 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
29987         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
29988         (package-menu--print-info): Obsolete.
29989         (package-menu--print-info-simple): New function.
29990         (package-menu--refresh): Use it, simplify code, and improve
29991         performance.
29992         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
29993         Tiny performance improvement.
29995         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
29997 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
29999         Omit -Wstrict-overflow workaround in GCC 5
30000         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
30001         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
30003         Merge from gnulib
30004         This incorporates:
30005         2015-04-29 extern-inline: no need for workaround in GCC 5.1
30006         2015-04-26 file-has-acl: port to CentOS 6
30007         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
30009 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
30011         Set next-error-* in xref--xref-buffer-mode
30012         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
30013         Set `next-error-function' and `next-error-last-buffer'.
30014         (xref--next-error-function): New function.
30015         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
30017 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
30019         python.el: Fix warnings on looking-back calls missing LIMIT
30020         * lisp/progmodes/python.el (python-shell-accept-process-output):
30021         Pass LIMIT arg to looking-back.
30023 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
30025         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
30026         (package--download-and-read-archives): Use pushnew instead of
30027         append.  If something terrible happened during a previous
30028         download, simply refreshing should now make things work again.
30030 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
30032         Introduce etags-xref-find-definitions-tag-order
30033         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
30034         New variable.
30035         (etags--xref-find-definitions): Use it (bug#19468).
30037 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
30039         PATH- and completion-related fixes in Eshell on MS-Windows
30040         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
30041         MS-Windows, prepend "." to list of directories produced from PATH,
30042         as Windows always implicitly searches the current directory first.
30043         (eshell-force-execution): Make it have a non-nil default value on
30044         MS-Windows and MS-DOS.
30045         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
30046         eshell-force-execution is non-nil, complete on readable files and
30047         directories, not only executables.  When running on MS-Windows,
30048         prepend "." to list of directories produced from PATH, as Windows
30049         always implicitly searches the current directory first.
30051 2015-04-29  Sam Steingold  <sds@gnu.org>
30053         Bury RCIRC buffers when there is no activity
30054         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
30055         (rcirc-bury-buffers): New function.
30056         (rcirc-next-active-buffer): When there is no new activity, use
30057         `rcirc-bury-buffers' to hide all RCIRC buffers.
30059 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
30061         Fix DBUS query result parsing for secrets-search-items
30062         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
30063         parsing.  The function assumed that return value of the
30064         SearchItems method called on a collection is a list of two lists,
30065         however this is true only when no collection is specified.  GNOME
30066         had used to incorrectly return a list of two lists in both cases,
30067         but this was already fixed:
30068         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
30069         incorrect information in the secrets-search-items’ docstring.
30070         (Bug#20449)
30072 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
30074         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
30075         Use `inhibit-message' instead of hiding the previous message
30076         with (message nil).
30078 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
30080         Remove the deprecated INTERNAL_FIELD macro by expanding it
30081         * src/lisp.h (INTERNAL_FIELD): Remove.
30082         (DEFVAR_KBOARD): Modify accordingly.
30083         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
30084         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
30085         * src/buffer.c (compact_buffer): Use BVAR.
30087 2015-04-29  Glenn Morris  <rgm@gnu.org>
30089         Replace an obsolete function alias
30090         * lisp/isearch.el (isearch-yank-x-selection):
30091         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
30092         (mouse-drag-secondary-moving):
30093         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
30094         Replace obsolete alias x-get-selection with gui-get-selection.
30096 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
30098         * lisp/mail/rmailsum.el: Use lexical-binding.
30100 2015-04-29  Glenn Morris  <rgm@gnu.org>
30102         * test/automated/package-test.el (package-test-update-archives-async):
30103         Skip test on hydra.nixos.org.
30105 2015-04-28  Glenn Morris  <rgm@gnu.org>
30107         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
30108         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
30109         (foldout-mouse-hide-or-exit): Use new names for outline functions.
30111         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
30112         Update for 2014-06-26 hideif.el change.
30114         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
30115         (rmail--decode-and-apply): New function.
30116         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
30118         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
30120 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
30122         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
30123         (package-menu--refresh): Delegate obsolete-hiding to
30124         `package--remove-hidden'.
30125         (package--remove-hidden): Disregard high-priority package if it is
30126         older than the installed one.
30128 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
30130         Update source file encoding list
30131         Update admin/notes/unicode, along with coding system cookies in
30132         other files, so that the two match each other better.
30133         * admin/notes/unicode: lisp/language/ethio-util.el and
30134         lisp/language/ethiopic.el also use utf-8-emacs.
30135         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
30136         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
30137         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
30138         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
30139         * etc/refcards/sk-survival.tex:
30140         Add "coding: utf-8" so that this file is not mishandled in a
30141         Latin-1 or Big-5 locale.
30142         * lisp/international/robin.el, lisp/org/ox-ascii.el:
30143         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
30144         * lisp/language/ethio-util.el: Fix trailer.
30146 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
30148         Fix synchronous invocation of Ispell
30149         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
30150         value to ispell-process-directory before calling ispell-init-process.
30151         Don't call set-process-coding-system if ispell-async-processp is nil.
30152         (Bug#20448)
30154 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
30156         * lisp/emacs-lisp/package.el: Skip space and comments in init file
30157         (package--ensure-init-file): Insert snippet at first
30158         non-whitespace non-comments line.  Respects local-vars at the top
30159         of the file.
30161 2015-04-28  Glenn Morris  <rgm@gnu.org>
30163         * lisp/mail/rmail.el (rmail-copy-headers):
30164         Handle rmail-nonignored-headers being nil.  (Bug#18878)
30166         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
30168         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
30169         Don't get confused by a bzrlib version mismatch warning.
30171 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
30173         Change default location of EUDC options file
30174         * etc/NEWS: Document change to EUDC options file's default location.
30175         * lisp/net/eudc-vars.el (eudc-options-file): Use
30176         `locate-user-emacs-file' to change default options file location.
30178 2015-04-27  Glenn Morris  <rgm@gnu.org>
30180         * test/automated/package-test.el (package-test-update-archives-async):
30181         Try to handle the test server script dying.
30183 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
30185         * lisp/saveplace.el (save-place-mode): New minor mode.
30186         (save-place): Redefine as an obsolete alias.
30188         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
30189         * lisp/midnight.el: Use lexical-binding.
30190         (midnight-mode): Make it a proper minor mode.
30191         (midnight-buffer-display-time): Make arg non-optional.
30192         (midnight-find): Remove.
30193         (clean-buffer-list-kill-never-regexps)
30194         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
30195         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
30196         contain functions.
30197         (clean-buffer-list): Use cl-find.
30198         Allow clean-buffer-list-kill-never-regexps to contain functions.
30200 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
30202         Bump version of seq.el to 1.5
30203         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
30204         from seq-doseq.  Bump version number of seq.el.
30206 2015-04-27  Glenn Morris  <rgm@gnu.org>
30208         * lisp/mail/rmail.el (rmail-reply):
30209         Decode subject before matching "Re:" prefix.  (Bug#20396)
30211 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
30213         * lisp/emacs-lisp/package.el: Small improvements
30214         (package--with-work-buffer-async): More informative error.
30215         (package-install-user-selected-packages): Rename to
30216         `package-install-selected-packages'.
30218 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
30220         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
30221         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
30222         (eieio--class-make): Remove leftover `tag'.
30224 2015-04-27  Glenn Morris  <rgm@gnu.org>
30226         * lisp/gnus/message.el (gnus-extract-address-components):
30227         Remove bogus declaration that was masking previous problem.
30229 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
30231         * lisp/gnus/message.el (message-insert-formatted-citation-line):
30232         Fix typo.  (Bug#20318)
30234 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
30236         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
30238         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
30239         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
30240         the buffer in yet another frame.
30241         (reftex-toc-visit-location): Make sure toc-window has focus at the end
30242         when `final' is nil.
30243         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
30244         silence warnings.  Use `--' to clarify that it's internal.
30245         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
30246         (reftex-toc-promote): Clarify unused argument.
30247         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
30248         Add `reftex--' prefix.  Fix all users.
30249         (reftex-toc-promote-prepare): Use _ for dummy variable.
30250         (reftex-toc-restore-region): Rename `m.
30252 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
30254         Fix a typo in bibtex.el
30255         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
30256         last change.  (Bug#20429)
30258         Fix redisplay of frame after loading new fonts
30259         * src/xdisp.c (redisplay_internal): When retrying redisplay of
30260         a frame because new fonts were loaded, disable all redisplay
30261         optimizations on that frame by calling SET_FRAME_GARBAGED.
30262         (Bug#20410)
30264 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
30266         * lisp/info.el (Info-menu): Properly provide the `default'
30267         (Bug#20391)
30269         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
30270         Catch errors from documentation (bug#20418).
30271         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
30273 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
30275         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
30276         Remove redundant ":group 'package".
30278 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
30280         Fix a typo in rmail.el
30281         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
30282         last commit.  (Bug#20429)
30284 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
30286         Introduce xref-prompt-for-identifier
30287         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
30288         (xref--read-identifier): Use it
30289         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
30291 2015-04-26  João Távora  <joaotavora@gmail.com>
30293         `tex-insert-quote' after single `'' opens quotes instead of closing
30294         Without this, it's very hard to precede double quotes with the
30295         apostrophe character, i.e. insert the sequence '``
30296         (quote-backquote-backquote), commonly useful in portuguese, for
30297         instance.
30298         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
30299         preceding chars making `tex-insert-quote' be in the "opening" context.
30301 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
30303         Pass `id' to `completing-read' as def instead of initial input
30304         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
30305         `completing-read' as the default value instead of initial input
30306         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
30308 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
30310         Don't freeze with unreadable processes
30311         Don't freeze if an exiting process can't be read from.  (Bug#19860).
30312         This fixes a bug I introduced in
30313         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
30314         "* process.c: Add sanity checks for file descriptors."
30315         Dmitry Gutov did most of the legwork in finding the problem.
30316         * src/process.c (wait_reading_process_output):
30317         Treat non-running processes that can't be read from
30318         the same as other non-running processes.
30320 2015-04-25  Alan Mackenzie  <acm@muc.de>
30322         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
30323         * lisp/subr.el (remove-yank-excluded-properties): Put
30324         `with-silent-modifications' around only the last three lines of code.
30326 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
30328         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
30329         (package--all-keywords): Deleted variable.
30331         * etc/NEWS: Document package-hiding functionality.
30333 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
30335         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
30337         Clarify the doc string of 'replace-regexp-in-string'
30338         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
30340         Improve doc string of 'insert-buffer-substring'
30341         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
30343         MS-Windows followup for the recent gnulib update
30344         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
30345         acl-internal.c.
30347 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
30349         Spelling fixes
30351         Merge from gnulib
30352         This incorporates:
30353         2015-04-24 file-has-acl: new module, split from acl
30354         2015-04-24 manywarnings: add GCC 5.1 warnings
30355         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
30356         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
30357         2015-04-15 acl: On Linux, check for acls without libacl
30358         2015-04-14 tempname: avoid unused parameter warnings (trivial)
30359         * lib/acl-internal.c: New file, from gnulib.
30360         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
30361         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
30362         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
30363         Update from gnulib.
30365         Port --enable-gcc-warnings to GCC 5.1 x86-64
30366         * lib-src/ebrowse.c (dump_sym):
30367         * lib-src/hexl.c (main):
30368         * src/ccl.c (ccl_driver):
30369         * src/character.c (string_escape_byte8):
30370         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
30371         * src/gnutls.c (Fgnutls_boot):
30372         * src/gtkutil.c (xg_check_special_colors):
30373         * src/image.c (x_build_heuristic_mask):
30374         * src/print.c (safe_debug_print, print_object):
30375         * src/term.c (produce_glyphless_glyph):
30376         * src/xdisp.c (get_next_display_element)
30377         (produce_glyphless_glyph):
30378         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
30379         Don't use a signed format to print an unsigned integer, or vice
30380         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
30381         * src/image.c (png_load_body, jpeg_load_body):
30382         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
30384 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
30386         Add new faces to tsdh-light-theme
30387         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
30388         definitions for Info-quoted, ace-jump-face-foreground,
30389         hl-paren-face, show-paren-match, and show-paren-mismatch.
30391 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
30393         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
30395 2015-04-24  Glenn Morris  <rgm@gnu.org>
30397         * build-aux/gitlog-to-emacslog:
30398         Use raw log format rather than wrapped one.
30400 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
30402         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
30403         (seq-doseq): Fix out-of-scope binding.
30404         Don't call `seq-length at every iteration.
30405         Reduce `if's from 3 to 2 per iteration.
30406         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
30408 2015-04-24  Glenn Morris  <rgm@gnu.org>
30410         * lisp/textmodes/text-mode.el (text-mode-hook):
30411         Move text-mode-hook-identify to default.
30413         * lisp/mouse.el (minor-mode-menu-from-indicator):
30414         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
30416         * lisp/help-fns.el (describe-function): More type checking.
30417         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
30419         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
30420         (Bug#20325)
30422 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
30424         shr: strip leading whitespace when expanding URLs
30425         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
30427 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
30429         Clarify "co-authored" some more
30431         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
30433         Clarify doc strings of functions that search for properties
30434         * src/textprop.c (Fnext_char_property_change)
30435         (Fprevious_char_property_change)
30436         (Fnext_single_char_property_change)
30437         (Fprevious_single_char_property_change, Fnext_property_change)
30438         (Fnext_single_property_change, Fprevious_property_change)
30439         (Fprevious_single_property_change): Clarify doc strings wrt return
30440         value and the optional LIMIT argument.  (Bug#20411)
30442 2015-04-24  Glenn Morris  <rgm@gnu.org>
30444         * test/automated/message-mode-tests.el (message-mode-propertize):
30445         Handle non-writable HOME; eg on hydra.nixos.org.
30447 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
30449         Avoid starting threads by w32-shell-execute
30450         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
30451         local file names, before invoking ShellExecute.  (Bug#20220)
30453 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
30455         Fix following doc-links in `widget-documentation-link-action'
30456         * lisp/wid-edit.el (widget-documentation-link-action): Make
30457         following doc-links less simplistic (Bug#20398).
30459 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
30461         Improve EUDC manual
30462         * doc/misc/eudc.texi (Troubleshooting):
30463         New LDAP troubleshooting subsection.
30465 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
30467         Omit needless "\ " after multibyte then newline
30468         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
30469         (print_object): When print-escape-multibyte is non-nil and a
30470         multibyte character is followed by a newline or formfeed, followed
30471         by a hex digit, don't output a needless "\ " before the hex digit.
30472         * test/automated/print-tests.el (print-hex-backslash): New test.
30474 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
30476         Add a new `inhibit-message' variable
30477         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
30478         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
30479         `inhibit_message' is non-zero.
30480         * etc/NEWS: Add an entry.
30481         * doc/lispref/display.texi: Add an entry for `inhibit-message',
30482         mention it in `message'.
30484 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
30486         Fix last fix in `display-buffer-record-window'.
30487         * lisp/window.el (display-buffer-record-window): Fix last fix.
30489 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
30491         Minor edits in CONTRIBUTE
30492         * CONTRIBUTE: Rearrange instructions about log messages.
30493         Use "Git" capitalized all over.
30494         Use 2 spaces between sentences.
30496 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
30498         * lisp/files.el (basic-save-buffer): Fix argument.
30500         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
30501         In case `(and (null custom-file) init-file-had-error)' do the same
30502         thing we'd do if `(null user-init-file)', which is to either error out
30503         or return nil.  This is in line with `custom-save-all' which would
30504         throw an error in that situation.  (Bug#20355)
30506         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
30507         (package-menu-hide-low-priority): New variable, see its doc.
30508         (package-archive-priorities): Update doc.
30509         (package-desc-priority): New function.
30510         (package-desc-priority-version): Use it.
30511         (package--remove-hidden): New function.
30512         (package-menu--refresh): Use it.
30514         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
30515         (package-menu--hide-obsolete): New variable.
30516         (package--remove-hidden): Use it.
30517         (package-menu-hide-obsolete): New interactive function to toggle
30518         the variable.
30519         (package--quick-help-keys): Document it.
30520         (package-menu-async): Add :version tag.
30521         (package-menu-mode-map): Bind package-menu-hide-obsolete.
30522         (package-desc-status): Indicate non-installed obsolete packages as
30523         avail-obso.
30524         (package-menu-mark-install): Allow installation of avail-obso.
30525         (package-menu--status-predicate): Sort avail-obso with available.
30527 2015-04-22  Alan Mackenzie  <acm@muc.de>
30529         On C-y, stop some text property entries being written into buffer-undo-list
30530         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
30531         `with-silent-modifications'.
30533 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
30535         In display-buffer-record-window record selected window if necessary
30536         * lisp/window.el (display-buffer-record-window): Store selected window
30537         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
30539 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
30541         Fix reftex-citation bug
30542         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
30543         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
30544         integration is enabled and there are no citations in the document
30545         so far.
30547 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
30549         Add or reset based on the presence of MERGE_HEAD
30550         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
30551         `vc-git-resolve-when-done' to `after-save-hook' in either case.
30552         (vc-git-conflicted-files): Add a TODO.
30553         (vc-git-resolve-when-done): Depending on the presence of
30554         MERGE_HEAD, either update the resolved file in the index, or
30555         remove it from there.  (Bug#20292)
30557 2015-04-21  Glenn Morris  <rgm@gnu.org>
30559         * lisp/custom.el (custom-declare-group): No need to purecopy
30560         custom-current-group-alist members following recent change to set
30561         it to nil before dumping.
30563         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
30564         (Bug#20399)
30566 2015-04-21  Daniel Colascione  <dancol@dancol.org>
30568         Unbreak no-op buffer save message
30569         * lisp/files.el (basic-save-buffer): Accept called-interactively as
30570         an argument instead of directly invoking called-interactively-p,
30571         which will always yield nil in that context.
30573 2015-04-21  Alan Mackenzie  <acm@muc.de>
30575         CC Mode: Do nothing in before/after-change-functions for text
30576         property changes
30577         Fixes bug#20266.
30578         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
30579         yank-handled-properties buffer local, and remove 'category from it.
30580         (c-called-from-text-property-change-p): New function.
30581         (c-before-change): Don't do anything if a call of the new function
30582         returns non-nil.
30583         (c-after-change): Don't do much if a call of the new function returns
30584         non-nil.
30585         (c-extend-after-change-region): Put changes to text property 'fontified
30586         inside c-save-buffer-state.
30588 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
30590         Fix byte-compiler warnings about looking-back
30591         * lisp/vc/log-view.el (log-view-end-of-defun-1):
30592         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
30593         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
30594         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
30595         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
30596         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
30597         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
30598         * lisp/org/org.el (org-insert-heading, org-sort-entries):
30599         * lisp/org/org-mouse.el (org-mouse-end-headline)
30600         (org-mouse-context-menu):
30601         * lisp/org/org-clock.el (org-clock-cancel):
30602         * lisp/man.el (Man-default-man-entry):
30603         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
30604         (rmail-ensure-blank-line):
30605         * lisp/mail/footnote.el (Footnote-delete-footnote):
30606         * lisp/mail/emacsbug.el (report-emacs-bug):
30607         * lisp/info.el (Info-follow-reference, Info-fontify-node):
30608         * lisp/info-look.el (info-lookup-guess-custom-symbol):
30609         * lisp/help-fns.el (help-fns--key-bindings):
30610         * lisp/files.el (hack-local-variables):
30611         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
30612         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
30613         (viper-complete-filename-or-exit):
30614         * lisp/emulation/viper-cmd.el (viper-backward-indent):
30615         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
30616         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
30617         * lisp/cus-edit.el (custom-face-edit-value-create):
30618         * lisp/calendar/todo-mode.el (todo-set-item-priority)
30619         (todo-filter-items-1, todo-convert-legacy-files)
30620         (todo-prefix-overlays): Add explicit second arg to looking-back.
30622 2015-04-20  Glenn Morris  <rgm@gnu.org>
30624         Avoid non-nil current-load-list at startup
30625         * src/process.c (init_process_emacs): Move Fprovide statement...
30626         (syms_of_process): ... to here.
30628         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
30630         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
30631         in emacs -Q.
30633 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
30635         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
30636         (Bug#20330)
30638 2015-04-20  Glenn Morris  <rgm@gnu.org>
30640         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
30642         Tweak exec-path in uninstalled case
30643         * src/callproc.c (init_callproc): If running uninstalled, do not
30644         include eventual installation libexec directory in exec-path.
30646 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
30648         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
30649         cache keywords.
30650         (package-menu-filter): Accept a list of keywords.
30651         (package--all-keywords): New variable to cache known keywords.
30652         (package-all-keywords): Populate it if necessary.
30653         (package-refresh-contents): Reset it.
30655         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
30656         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
30657         as special keywords which match agains package archive and status
30658         respectively.
30659         * etc/NEWS: Document it.
30661 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
30663         Describe and index "empty overlays".
30664         * doc/lispref/display.texi (Overlays): Improve indexing.
30665         (Managing Overlays): Describe "empty" overlays.
30666         (Overlay Properties, Finding Overlays): Add cross-reference to
30667         where empty overlays are described.
30669 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
30671         Spelling fixes
30673         Quote 'like this' in top-level files
30674         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
30675         Prefer to single-quote 'like this' (instead of the older style
30676         `like this').
30677         * configure.ac: Fix some space-before-tab problems that 'git commit'
30678         complained about.
30680         Use bool for boolean in textprop.c, undo.c
30681         * src/textprop.c (soft, hard): Now constants instead of macros.
30682         (validate_plist): Rewrite to avoid need for boolean local.
30683         (interval_has_all_properties, interval_has_some_properties)
30684         (interval_has_some_properties_list, add_properties)
30685         (remove_properties, get_char_property_and_overlay)
30686         (Fnext_single_char_property_change)
30687         (Fprevious_single_char_property_change, add_text_properties_1)
30688         (Fremove_text_properties, Fremove_list_of_text_properties)
30689         (copy_text_properties):
30690         * src/tparam.c (tparam1):
30691         * src/undo.c (record_change, record_property_change)
30692         (syms_of_undo):
30693         Use 'true' and 'false' for booleans.
30695 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
30697         * lisp/vc/vc-git.el (vc-git-find-file-hook):
30698         Call `smerge-start-session' even when dealing with a stash
30699         conflict (bug#20292).
30701 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
30703         Add option to eshell/clear to clear scrollback.
30704         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
30705         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
30706         scrollback contents are cleared.
30707         * etc/NEWS: Describe change.
30708         * doc/misc/eshell.texi: Add entry for `clear'.
30710 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
30712         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
30713         where either will do.
30715 2015-04-19  Steve Purcell  <steve@sanityinc.com>
30717         Assume package archive-contents are UTF8-encoded
30718         * lisp/emacs-lisp/package.el (package--read-archive-file):
30719         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
30720         downloaded and cached archive-contents files, so that non-ASCII
30721         characters in package descriptions are displayed correctly in the
30722         `list-packages' menu.  (Bug#20231)
30724 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
30726         Abort when looking at stashed changes
30727         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
30728         stashed changes (bug#20292).
30730 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
30732         Refactor low-level printing for simplicity
30733         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
30734         PRINTPREPARE; doable now that we assume C99.  All callers changed.
30735         (PRINTCHAR): Remove, as it adds more mystery than clarity.
30736         All callers changed.
30737         (strout): Assume that caller computes length.  All callers changed.
30738         (print_c_string): New function.
30739         (write_string, write_string_1): Compute length instead of asking
30740         the caller to compute it.  All callers changed.
30741         (write_string): Simplify by using write_string_1.
30742         (write_string_1): Simplify by using print_c_string.
30743         (Fterpri): Compute default val more clearly.
30744         (Fprin1_to_string, print_object):
30745         Assume C99 to avoid unnecessary nesting.
30746         (print_object): Prefer print_c_string to multiple printchar, or
30747         to calling strout with -1 length.  Coalesce into sprintf when
30748         this is easy.
30750 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
30752         Prefer "Bug#1234" in commit messages (Bug#20325)
30753         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
30754         as this isn't useful for Git.
30755         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
30757 2015-04-18  Glenn Morris  <rgm@gnu.org>
30759         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
30760         (Bug#19506)
30762 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
30764         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
30765         Do not use `chomp' as a function.  (Bug#19505)
30767 2015-04-18  Glenn Morris  <rgm@gnu.org>
30769         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
30771         * doc/emacs/misc.texi (Sorting): Small edit.
30772         (Bug#19896)
30774         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
30776 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
30778         css-mode.el: Support multi-line comment filling
30779         (Bug#20256)
30780         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
30781         comment filling.
30782         (css-adaptive-fill): New function.
30783         (css-mode): Set `adaptive-fill-function'.
30784         (scss-mode): Set `comment-continue'.
30786 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
30788         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
30789         Better error messages.
30791 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
30793         Minor improvements in Bulgarian input methods
30794         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
30795         Replace U+042C with U+045D, as the former character is not used in
30796         the modern Bulgarian language.
30797         (Bug#20350)
30799 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
30801         Improve EUDC manual
30802         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
30803         authentication schemes.  Add index items.  Shorten example server
30804         name.
30806 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
30808         Don't show both feature and function with the same name
30809         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
30810         Don't show both feature and function with the same name.
30812         (elisp--xref-identifier-location): Skip variable, if it's also
30813         a function
30814         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
30815         Avoid returning both the variable and the function for the same
30816         minor mode.
30818 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
30820         Fix fontification of keywords clobbered by the prompt
30821         * lisp/comint.el (comint-output-filter): Remove the uses of
30822         with-silent-modifications I introduced as part of the last change.
30823         This fixes, e.g., erratically missing highlighting when running
30824         ./configure --help; ./configure in a shell-mode buffer with
30825         compilation-shell-minor-mode turned on.
30827 2015-04-17  Glenn Morris  <rgm@gnu.org>
30829         * admin/authors.el (authors-valid-file-names)
30830         (authors-renamed-files-alist): Additions.
30832 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
30834         * lisp/indent.el (indent-region): Don't deactivate the mark.
30835         (Bug#20357)
30837 2015-04-17  Sam Steingold  <sds@gnu.org>
30839         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
30841 2015-04-16  Leo Liu  <sdl.web@gmail.com>
30843         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
30845 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
30847         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
30848         Don't use `pcomplete' any more.
30850 2015-04-16  Glenn Morris  <rgm@gnu.org>
30852         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
30854 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
30856         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
30857         * configure.ac (LIBJPEG): Leave it empty for MinGW.
30859 2015-04-16  Glenn Morris  <rgm@gnu.org>
30861         * lisp/replace.el (query-replace-from-to-separator):
30862         Delay initialization to avoid rogue setting after startup.
30864 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
30866         Pre-4.6 GCC succeeds with unknown option
30867         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
30868         (Bug#20338)
30870 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
30872         '[:graph:]' now excludes whitespace, not just ' '
30873         * doc/lispref/searching.texi (Char Classes):
30874         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
30875         sans whitespace (not sans space).
30876         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
30877         not just space.
30878         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
30880 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
30882         * lisp/subr.el (substitute-key-definition-key, special-form-p)
30883         (macrop): Drop deprecated second arg to indirect-function.
30884         (looking-back): Make the second arg non-optional.
30886         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
30887         command is actually sent to the shell.
30889 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
30891         Port jpeg configuration to Solaris 10 with Sun C
30892         * configure.ac: Check for jpeglib 6b by trying to link it, instead
30893         of relying on cpp magic that has problems in practice.  Check for
30894         both jpeglib.h and jerror.h features.  Remove special case for
30895         mingw32, which should no longer be needed (and if it were needed,
30896         should now be addressable by hotwiring emacs_cv_jpeglib).
30897         (Bug#20332)
30899 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
30901         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
30902         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
30903         Move to elisp-mode.el.
30904         (lisp-mode-variables): (Re)move elisp-specific settings.
30905         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
30906         from lisp-mode-variables.
30907         (elisp--font-lock-flush-elisp-buffers): New function, moved from
30908         lisp-mode.el.
30910         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
30911         Avoid pathological slowdown at top-level in large file.
30913 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
30915         Standardize names of ChangeLog history files
30916         Suggested by Glenn Morris in:
30917         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
30918         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
30919         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
30920         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
30921         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
30922         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
30923         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
30924         Remove.
30926         Split top-level entries into pre- and post-April 7
30927         This more clearly distingiushes pre-April-7 ChangeLog entries (which
30928         are for top-level files only) from post-April-7 entries (which are
30929         about files at all levels.  Problem reported by Glenn Morris in:
30930         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
30931         * ChangeLog.1: Move post-April-7 entries from here ...
30932         * ChangeLog.2: ... to this new file.
30933         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
30935 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
30937         Fix recent cus-start changes that added customize-rogues
30938         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
30939         vars early.
30940         * lisp/loadup.el ("cus-start"): Move to the end to reduce
30941         customize-rogue.
30943 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
30945         Define cl-concatenate as an alias to seq-concatenate
30946         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
30947           code by making cl-concatenate an alias to seq-concatenate.
30949 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
30951         * src/lread.c (intern_1): Make sure we'd find the symbol we add
30952         (Bug#20334)
30953         * src/xfaces.c (resolve_face_name): Don't use `intern' with
30954         Lisp_Strings.
30956 2015-04-15  Glenn Morris  <rgm@gnu.org>
30958         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
30960 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
30962         Clean up gnus-uu saving code slightly
30963         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
30964         save-restriction/widen calls make more sense.
30966 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
30968         Make [:graph:] act like [:print:] sans space
30969         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
30970         [:graph:] so that it matches everything that [:print:] does,
30971         except for space.
30972         * doc/lispref/searching.texi (Char Classes):
30973         * etc/NEWS:
30974         * lisp/emacs-lisp/rx.el (rx):
30975         Document [:graph:] to be [:print:] sans ' '.
30976         * src/character.c, src/character.h (graphicp): New function.
30977         * src/regex.c (ISGRAPH) [emacs]: Use it.
30978         (BIT_GRAPH): New macro.
30979         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
30980         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
30981         Return BIT_GRAPH for RECC_GRAPH.
30982         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
30983         and ISPRINT if BIT_PRINT.
30985 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
30987         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
30988         Don't use call-next-method in a cl-defmethod.
30990         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
30991         (eieio--class-p): Remove, provided by cl-defstruct.
30993 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
30995         Add seq-intersection and seq-difference to the seq library
30996         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
30997         New functions.
30998         * test/automated/seq-tests.el: Add tests for seq-intersection and
30999         seq-difference.
31000         * doc/lispref/sequences.texi: Add documentation for seq-intersection
31001         and seq-difference.
31003 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
31005         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
31006         to avoid leaking internals.
31008 2015-04-14  Sam Steingold  <sds@gnu.org>
31010         package--ensure-init-file: widen requires save-restriction
31012 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
31014         Improve the commit-msg Git hook for unibyte environments
31015         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
31016         in unibyte environments.  (Suggested by Paul Eggert
31017         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
31018         [:print:], based on UTF-8 sequences of the unprintable characters.
31020         Describe problems with cursor caused by Windows Magnifier
31021         * etc/PROBLEMS: Describe the problem with cursor shape on
31022         MS-Windows due to Windows Magnifier.
31023         (Bug#20271)
31025         Make [:print:] support non-ASCII characters correctly
31026         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
31027         (BIT_PRINT): New bit mask.
31028         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
31029         * src/character.c (printablep): New function.
31030         * src/character.h (printablep): Add prototype.
31031         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
31032         of 'print', 'alnum', and 'alphabetic'.
31033         * doc/lispref/searching.texi (Char Classes): Document the new
31034         behavior of [:print:].
31035         * etc/NEWS: Mention the new behavior of [:print:].
31037         Assign correct general-category and names to surrogates
31038         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
31039         surrogates.  This avoids assigning them the default
31040         general-category of 'Cn', i.e. unassigned codepoints.
31041         (unidata-get-name): Give surrogates synthetic names.
31043 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
31045         Assume C89 offsetof in xterm.c, xlwmenu.c
31046         * lwlib/xlwmenu.c (offset):
31047         * src/xterm.c (cvt_string_to_pixel_args):
31048         Use offsetof, not XtOffset.
31050 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
31052         Assume C89 offsetof in widget.c
31053         * src/widget.c (XtOffset): Remove; no longer needed.
31054         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
31056         Fix think-o in previous patch
31057         * src/window.c (count_windows, get_leaf_windows):
31058         Don't optimize count_windows incorrectly.
31060 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
31062         Avoid some int overflows in window.c
31063         * src/print.c (print_object):
31064         * src/window.c (sequence_number):
31065         * src/window.h (struct window.sequence_number):
31066         Don't assume window sequence number fits in int.
31067         * src/window.c (window_select_count):
31068         * src/window.h (struct window.use_time, window_select_count):
31069         Don't assume window use time fits in int.
31070         * src/window.c (Fsplit_window_internal):
31071         Don't assume user-supplied integer, or sum, fits in int.
31072         (Fset_window_configuration, count_windows, get_leaf_windows)
31073         (save_window_save, Fcurrent_window_configuration):
31074         Use ptrdiff_t for object counts.
31075         (Fset_window_configuration): Omit unused local 'n'.
31076         (count_windows): Simplify by writing in terms of get_leaf_windows.
31077         (get_leaf_windows): Don't store through FLAT if it's null.
31078         (extract_dimension): New static function.
31079         (set_window_margins, set_window_fringes, set_window_scroll_bars):
31080         Use it to avoid undefined behavior when converting user-supplied
31081         integer to 'int'.
31083 2015-04-13  Glenn Morris  <rgm@gnu.org>
31085         Minor doc copyedits
31086         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
31087         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
31089 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
31091         [Gnus] Catch the invalid-operation that idna.el will issue
31092         * lisp/gnus/gnus-art.el (gnus-use-idna):
31093         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
31094         * lisp/gnus/message.el (message-use-idna):
31095         Catch the invalid-operation that idna.el will issue.
31097 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
31099         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
31101 2015-04-13  Sam Steingold  <sds@gnu.org>
31103         package--ensure-init-file: widen before looking for
31104         "(package-initialize)"
31106 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
31108         Change diff-switches default to `-u' (Bug#20290)
31109         * doc/emacs/files.texi (Comparing Files): Document the new default
31110         value of `diff-switches'.
31111         * doc/emacs/trouble.texi (Sending Patches): Document the preference
31112         for unified diff format.  Escape the plus in the suggested `-F' regexp
31113         value.
31114         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
31116 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
31118         (gnus-group--setup-tool-bar-update): Fix last change
31119         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
31120         cursor-sensor-functions should be a list of functions.
31122 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
31124         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
31125         Use gmm-called-interactively-p.
31127 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
31129         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
31130         (Bug#20321)
31131         * lisp/cus-start.el (read-buffer-function): Don't advertise
31132         iswitchb-read-buffer any more.
31133         (iswitchb): Don't tweak this obsolete group any more.
31135 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
31137         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
31139         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
31140         Adding a string after a constructor's argument list will use
31141         that string as the constructor function docstring.  If this string
31142         is absent but the struct itself was given a docstring, use that as
31143         the constructor's docstring.
31144         Fixes bug#17284.
31146 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
31148         Deprecate `intangible' and `point-entered' properties
31149         * lisp/emacs-lisp/cursor-sensor.el: New file.
31150         * lisp/simple.el (pre-redisplay-functions): New hook.
31151         (redisplay--pre-redisplay-functions): New function.
31152         (pre-redisplay-function): Use it.
31153         (minibuffer-avoid-prompt): Mark obsolete.
31154         (redisplay--update-region-highlight): Adapt it to work as a function on
31155         pre-redisplay-functions.
31156         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
31157         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
31158         than point-entered to make the prompt intangible.
31159         * lisp/forms.el: Move `provide' calls to the end.
31160         (forms-mode): Don't use `run-hooks' on a local var.
31161         (forms--make-format, forms--make-format-elt-using-text-properties):
31162         Use cursor-intangible rather than `intangible'.
31163         (forms-mode): Enable cursor-intangible-mode.
31164         * lisp/isearch.el (isearch-mode): Use defvar-local.
31165         (cursor-sensor-inhibit): Declare.
31166         (isearch-mode): Set cursor-sensor-inhibit.
31167         (isearch-done): Set it back.
31168         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
31169         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
31170         any more.
31171         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
31172         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
31173         Add Edebug spec.
31174         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
31175         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
31176         inhibit-point-motion-hooks any more.
31177         (ses--cell-at-pos, ses--curcell): New functions, extracted from
31178         ses-set-curcell.
31179         (ses-set-curcell): Use them.
31180         (ses-print-cell, ses-setup): Use cursor-intangible instead of
31181         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
31182         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
31183         Use ses--cell-at-pos.
31184         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
31185         extracted from ses-command-hook.  Make them work with multiple windows
31186         displaying the same buffer.
31187         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
31188         Enable cursor-intangible-mode.
31189         (ses-command-hook): Remove cell highlight and mode-line update code.
31190         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
31191         Update for new name of text-property holding the cell name.
31192         (ses-rename-cell): Don't mess with mode-line-process.
31193         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
31194         cursor-sensor-functions property instead of point-entered.
31195         (erc-insert-timestamp-right, erc-format-timestamp):
31196         Use cursor-intangible rather than `intangible'.
31197         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
31198         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
31199         cursor-sensor-mode if needed.
31200         (erc-echo-timestamp): Adapt to calling convention of
31201         cursor-sensor-functions.
31202         (erc-insert-timestamp-right): Remove unused vars `current-window' and
31203         `indent'.
31204         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
31205         (gnus-update-group-mark-positions): Remove unused `topic' var.
31206         (gnus-group-insert-group-line): Remove unused var `header'.
31207         (gnus-group--setup-tool-bar-update): New function.
31208         (gnus-group-insert-group-line): Use it.
31209         (gnus-group-update-eval-form): Declare local
31210         dynamically-bound variables.
31211         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
31212         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
31213         (gnus-group-prepare-topics, gnus-topic-update-topic)
31214         (gnus-topic-change-level, gnus-topic-catchup-articles)
31215         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
31216         Use inhibit-read-only.
31217         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
31218         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
31219         * lisp/textmodes/reftex-index.el (reftex-display-index):
31220         Use cursor-intangible-mode if available.
31221         (reftex-index-post-command-hook): Check cursor-intangible.
31222         * lisp/textmodes/reftex-toc.el (reftex-toc):
31223         Use cursor-intangible-mode if available.
31224         (reftex-toc-recenter, reftex-toc-post-command-hook):
31225         Check cursor-intangible.
31226         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
31227         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
31228         (sgml-tags-invisible): Use with-silent-modifications and
31229         inhibit-read-only.  Enable cursor-sensor-mode.
31230         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
31231         calling convention of cursor-sensor-functions.
31232         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
31233         (table-point-entered-cell-hook, table-point-left-cell-hook):
31234         Don't autoload.
31235         (table-cell-entered-state): Remove var.
31236         (table--put-cell-point-entered/left-property)
31237         (table--remove-cell-properties):
31238         Use cursor-sensor-functions rather than point-entered/left.
31239         (table--point-entered/left-cell-function): Merge
31240         table--point-entered-cell-function and table--point-left-cell-function
31241         and adjust to calling convention of cursor-sensor-functions.
31243         Update ldef-boots.el
31245         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
31247         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
31249         Collapse successive char deletions in the undo log
31250         * src/cmds.c (remove_excessive_undo_boundaries): New function,
31251         extracted from Fself_insert_command.
31252         (Fdelete_char, Fself_insert_command): Use it.
31253         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
31254         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
31256         xterm and OSC 52: Add NEWS entry, and tweak the code
31257         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
31258         to top-level.
31259         (terminal-init-xterm-activate-set-selection): Set a terminal property.
31260         (xterm--set-selection): Use it instead of checking the value of
31261         `terminal-initted'.  Don't use string-bytes.
31263 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
31265         xterm.el: Implement OSC-52 functionality for setting the X selection
31266         * lisp/term/xterm.el (xterm-max-cut-length): New var.
31267         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
31268         New funs.
31269         (terminal-init-xterm, xterm--version-handler): Use them.
31271 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
31273         Remove left over code from when we used an obsolete/loaddefs.el file
31274         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
31275         when we used an obsolete/loaddefs.el file.
31277         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
31278         (semanticdb-without-unloaded-file-searches): Use declare.
31279         (semantic-fw-add-edebug-spec): Remove.
31281         * lisp/completion.el (completion-lisp-mode-hook):
31282         Use completion-separator-chars rather than local key binding.
31284         * src/*.c: Set deactivate_mark buffer-locally
31285         (Bug#20260)
31286         * src/insdel.c (prepare_to_modify_buffer_1):
31287         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
31288         buffer-locally.
31290 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
31292         python.el: Keep symmetry on sexp navigation with parens
31293         (Bug#19954)
31294         * lisp/progmodes/python.el
31295         (python-nav--forward-sexp): Add argument skip-parens-p.
31296         (python-nav-forward-sexp, python-nav-backward-sexp)
31297         (python-nav-forward-sexp-safe)
31298         (python-nav-backward-sexp-safe): Use it.
31299         * test/automated/python-tests.el
31300         (python-nav-forward-sexp-1): Fix test.
31302 2015-04-12  João Távora  <joaotavora@gmail.com>
31304         Don't use `setq-local' in Gnus code
31305         This might break upstream builds with older Emacsen
31306         * lisp/gnus/message.el (message-mode): Use `set' and
31307         `make-local-variable' instead of `setq-local'.
31309 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
31311         Update Makefile.in's .PHONY dependencies
31312         * Makefile.in (change-history-commit, master-branch-is-current)
31313         (no-ChangeLog): Now phony.
31315         Remove configure's --with-mmdf option
31316         * configure.ac (MAIL_USE_MMDF): Remove.
31317         * etc/NEWS: Document this.
31318         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
31319         (Bug#20308)
31321         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
31322         That way, 'make install' won't think it's a man page.
31323         Reported by Ashish SHUKLA in:
31324         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
31326         Improve 'make change-history' prereq tests
31327         * Makefile.in (gen_origin): Fix to match what's in the master branch.
31328         (no-ChangeLog, master-branch-is-current): New rules.
31329         (change-history): Depend on them, to avoid similar future problems.
31330         Escape the local-variables string to pacify Emacs when editing
31331         Makefile.in.
31333 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
31335         * test/automated/package-test.el (with-package-test):
31336         Kill Packages buffer.
31338         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
31339         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
31340         "Upgrade" last, and use capitalized instead of all-caps.
31342         * lisp/emacs-lisp/package.el: Completely silence async operations.
31343         (package--make-autoloads-and-stuff): Silence autoloads.
31344         (package--save-selected-packages): New function, silences
31345         `customize-save-variable'.
31346         (package--user-selected-p, package-install-from-buffer)
31347         (package-delete, package-install): Use it.
31348         (package-install-from-archive)
31349         (package-menu--perform-transaction): Silence.
31350         (package-menu-execute): Feedback when operation starts.
31352         Use delay-mode-hooks when visiting the init-file
31353         * lisp/emacs-lisp/package.el (package--ensure-init-file):
31354         delay-mode-hooks.
31355         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
31357         * lisp/files.el: Only message when saving if save-silently is nil.
31358         (save-silently): New variable.
31359         (files--message): New function.
31360         (find-file-noselect, save-buffer, basic-save-buffer)
31361         (basic-save-buffer-2, save-some-buffers, not-modified)
31362         (append-to-file): Use them.
31364 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
31366         Support debug declarations in pcase macros
31367         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
31368         (pcase-UPAT): Use it.  Remove "`".
31369         (pcase--edebug-match-macro): New function.
31370         (pcase-defmacro): Support debug declarations.
31371         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
31372         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
31373         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
31374         Add debug declaration.
31376         pcase.el: Edebug support for `app' and vector patterns
31377         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
31378         (pcase-UPAT): Use it.  Support `app' patterns.
31379         (pcase-QPAT): Support vector patterns.
31381         edebug.el: Disambiguate vector specifications
31382         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
31383         `(vector ...)' as a vector specification, not as a sublist.
31385         (gnus-summary-refer-thread): Don't clobber unread articles
31386         This fixes a bug where `A T' causes "random" articles to become marked
31387         as read.
31388         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
31389         gnus-newsgroup-unreads remains sorted.
31391         mouse-sel.el: Fix mouse-sel-get-selection-function
31392         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
31393         Use gui--last-selected-text-primary instead of no longer existing
31394         gui-last-selected-text.
31396         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
31398         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
31400 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
31402         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
31404         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
31405         right buffer.
31407         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
31408         (byte-compile--interactive): New var.
31409         (byte-compile--message): New function.
31410         (byte-compile-log-1, byte-force-recompile)
31411         (byte-recompile-directory, byte-recompile-file)
31412         (byte-compile-file, compile-defun)
31413         (byte-compile-file-form-defmumble, byte-compile)
31414         (byte-compile-file-form-defalias, display-call-tree): Use it.
31416         * lisp/files.el: Don't message when nothing happened.
31417         (save-some-buffers, basic-save-buffer): Before messaging to say
31418         "nothing was saved" check if (called-interactively-p 'any).
31420 2015-04-12  João Távora  <joaotavora@gmail.com>
31422         Summary: Improve sexp-based movement in message-mode
31423         Works by giving citations and smileys a different syntax.  This helps
31424         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
31425         sexp-based movement.
31426         * lisp/gnus/message.el (message--syntax-propertize): New function.
31427         (message-mode): Set syntax-related vars.
31428         (message-smileys): New variable.
31429         * test/automated/message-mode-tests.el: New file
31431 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
31433         Use bool for boolean in window.c
31434         * src/window.c: Omit unnecessary static function decls.
31435         (adjust_window_count, select_window, Fselect_window)
31436         (window_body_width, Fwindow_body_height, Fwindow_body_width)
31437         (set_window_hscroll, check_window_containing, Fwindow_at)
31438         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
31439         (unshow_buffer, replace_window, recombine_windows)
31440         (add_window_to_list, candidate_window_p, next_window)
31441         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
31442         (Fget_buffer_window, Fdelete_other_windows_internal)
31443         (replace_buffer_in_windows_safely, set_window_buffer)
31444         (Fset_window_buffer, Fforce_window_update)
31445         (temp_output_buffer_show, make_parent_window)
31446         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
31447         (resize_frame_windows, Fsplit_window_internal)
31448         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
31449         (Fresize_mini_window_internal, mark_window_cursors_off)
31450         (window_scroll, window_scroll_pixel_based)
31451         (window_scroll_line_based, scroll_command, Fscroll_other_window)
31452         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
31453         (Fmove_to_window_line, Fset_window_configuration)
31454         (delete_all_child_windows, apply_window_adjustment)
31455         (set_window_fringes, set_window_scroll_bars)
31456         (Fset_window_vscroll, foreach_window, foreach_window_1)
31457         (compare_window_configurations, Fcompare_window_configurations):
31458         Prefer 'bool', 'true', and 'false' for booleans.
31459         * src/window.h (WINDOW_MODE_LINE_LINES)
31460         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
31462 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
31464         Speed up byte-compilation and autoload generation by avoiding mode-hooks
31465         This prevents emacs-lisp-mode-hook from being run everytime an
31466         autoload file is generated, which can account for a fraction of
31467         package installation time depending on the hooks the user has
31468         configured.
31469         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
31470         * lisp/emacs-lisp/autoload.el (autoload-find-file)
31471         (autoload-find-generated-file): Use delay-mode-hooks.
31473         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
31474         (package-menu-refresh): Respect async and do new package checking.
31475         (list-packages): Use `package-menu-refresh' instead of repeating code.
31477         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
31478         (package--quick-help-keys): New variable.
31479         (package--prettify-quick-help-key): New function.
31480         (package-menu-quick-help): Use it.
31482         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
31483         (package--build-compatibility-table): Require finder.
31485         * test/automated/package-test.el: Fix new test.
31487         * lisp/emacs-lisp/package.el: Silence async operations.
31488         (package--silence): New variable.
31489         (package--message): New function.
31490         (package-import-keyring, package-refresh-contents)
31491         (package-compute-transaction, package-install, package-delete)
31492         (package-menu--perform-transaction, package-menu-execute): Use it.
31494         * test/automated/package-test.el: Test async functionality.
31495         (package-test-update-archives-async): New test.
31497 2015-04-11  Daiki Ueno  <ueno@gnu.org>
31499         Utilize `make-process' in epg.el
31500         * lisp/epg.el (epg-error-output): Abolish.
31501         (epg-context): New slot `error-buffer'.
31502         (epg--start): Use `make-process' and `make-pipe-process'.
31503         (epg--process-filter): Remove code separating stderr from stdout.
31504         (epg-wait-for-completion): Simplify `error-output' handling.
31505         (epg-reset): Dispose error buffer.
31507 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
31509         * .gitignore: Ignore doc temps and outputs.
31511         Port commit-msg to MSYS Bash+Gawk
31512         See Eli Zaretskii in:
31513         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
31514         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
31515         (cent_sign, print_at_sign, at_sign): Revert previous change.
31516         (print_at_sign): Prepend "BEGIN".
31517         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
31519         Port commit-msg to broken MS-Windows shell
31520         * build-aux/git-hooks/commit-msg (cent_sign):
31521         Just use UTF-8 here rather than ASCII + printf, as the latter fails
31522         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
31523         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
31525 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
31527         Support GnuTLS v3.4 and later on MS-Windows
31528         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
31529         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
31530         GnuTLS DLL to load according to value of libgnutls-version.
31531         (Bug#20294)
31533 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
31535         Minor quoting etc. fixes to misc manuals
31536         Fix some minor quoting and spacing issues.  Distinguish more
31537         clearly among grave accent and apostrophe (which are ASCII) and
31538         single quote (which is not).  Prefer the standard terms
31539         "apostrophe" and "grave accent" to alternative names that can be
31540         confusing.  Use apostrophes to single-quote ASCII text.
31541         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
31542         rather than approximating it in ASCII with grave accent.
31544 2015-04-11  Daiki Ueno  <ueno@gnu.org>
31546         Respect more keyword args in `make-process'
31547         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
31548         keywords as documented.
31550 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
31552         Extract ChangeLog entries when committing a directory
31553         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
31554         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
31555         Add a FIXME comment.
31556         (log-edit-changelog-entries): Extract from
31557         `log-edit-changelog-entries', handle FILE being a directory
31558         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
31560 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
31562         Fix problems found by --enable-gcc-warnings
31563         * src/process.c (create_process, Fmake_pipe_process)
31564         (Fmake_network_process): Omit unused locals.
31566         Fix commit-msg to handle scissors lines
31567         * build-aux/git-hooks/commit-msg:
31568         Ignore every line after a scissors line, such as a line generated
31569         by 'git commit -v'.  Problem reported by Johan Bockgård in:
31570         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
31572         port commit-msg to Gawk 3.0.4 (1999)
31573         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
31574         (print_at_sign, at_sign): New vars.  Use them to avoid problems
31575         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
31576         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
31578         Have commit-msg report commit failure
31579         * build-aux/git-hooks/commit-msg: If the commit is aborted,
31580         say so.  Simplify by doing this at the end.  Problem reported
31581         by Eli Zaretskii in:
31582         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
31584 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
31586         Clean up LDAP Configuration section of EUDC manual
31587         * doc/misc/eudc.texi: Combine indices.
31588         (LDAP Configuration): Use command markup.  Add index entries.
31589         Change formatting.  Wrap long lines.  Add noindent markup.
31591 2015-04-10  Daiki Ueno  <ueno@gnu.org>
31593         Add facility to collect stderr of async subprocess
31594         * src/w32.h (register_aux_fd): New function declaration.
31595         * src/w32.c (register_aux_fd): New function.
31596         * src/process.h (struct Lisp_Process): New member stderrproc.
31597         * src/process.c (PIPECONN_P): New macro.
31598         (PIPECONN1_P): New macro.
31599         (Fdelete_process, Fprocess_status, Fset_process_buffer)
31600         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
31601         (Fcontinue_process): Handle pipe process specially.
31602         (create_process): Respect p->stderrproc.
31603         (Fmake_pipe_process): New function.
31604         (Fmake_process): Add new keyword argument :stderr.
31605         (wait_reading_process_output): Specially handle a pipe process when
31606         it gets an EOF.
31607         (syms_of_process): Register Qpipe and Smake_pipe_process.
31608         * doc/lispref/processes.texi (Asynchronous Processes): Document
31609         `make-pipe-process' and `:stderr' keyword of `make-process'.
31610         * lisp/subr.el (start-process): Suggest to use `make-process' handle
31611         standard error separately.
31612         * test/automated/process-tests.el (process-test-stderr-buffer)
31613         (process-test-stderr-filter): New tests.
31614         * etc/NEWS: Mention new process type `pipe' and its usage with the
31615         `:stderr' keyword of `make-process'.
31617 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
31619         Minor quoting etc. fixes to lispref manual
31620         * doc/lispref/tips.texi (Documentation Tips):
31621         Distinguish more clearly among grave accent, apostrophe,
31622         and single quote.
31623         * doc/lispref/README, doc/lispref/buffers.texi:
31624         * doc/lispref/commands.texi, doc/lispref/control.texi:
31625         * doc/lispref/customize.texi, doc/lispref/display.texi:
31626         * doc/lispref/elisp.texi, doc/lispref/files.texi:
31627         * doc/lispref/frames.texi, doc/lispref/hash.texi:
31628         * doc/lispref/help.texi, doc/lispref/internals.texi:
31629         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
31630         * doc/lispref/markers.texi, doc/lispref/modes.texi:
31631         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
31632         * doc/lispref/os.texi, doc/lispref/positions.texi:
31633         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
31634         * doc/lispref/text.texi, doc/lispref/tips.texi:
31635         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
31636         Use American-style double quoting in ordinary text,
31637         and quote 'like this' when single-quoting in ASCII text.
31638         Also, fix some minor spacing issues.
31640 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
31642         Handle symlinked test directory in tramp-tests.el
31643         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
31644         (tramp--test-check-files): Use `file-truename' for directories.
31646 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
31648         Fix 'recenter' when visual-line-mode is turned on
31649         * src/window.c (Frecenter): Use the same code for GUI and TTY
31650         frames alike; use vmotion only for "initial" frames.  This is
31651         because vmotion doesn't support visual-line-mode.  Rewrite the
31652         'iarg >= 0' case to use move_it_* functions instead of using
31653         vmotion, for the same reason.  Fix the clipping of the argument
31654         value to support scroll-margin in all cases and avoid unwarranted
31655         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
31656         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
31657         which see.
31659 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
31661         * lisp/abbrev.el (define-abbrev-table): Refine last change.
31663         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
31664         use of c[ad]+r", so as to keep the "cl-" prefix on all
31665         cl-lib definitions.
31667         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
31668         Use inhibit-point-motion-hooks.
31670         * lisp/cedet/semantic: Remove some dead code.
31671         * lisp/cedet/semantic/util-modes.el
31672         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
31673         any more.
31674         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
31675         not supported any more.
31676         (semantic-safe): Use `declare'.
31677         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
31678         (semantic-tag-intangible-p): Remove unused functions.
31679         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
31680         Remove unused function.
31682         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
31683         (gnus-article-hide-text, gnus-article-unhide-text)
31684         (gnus-article-unhide-text-type): Remove special handling of
31685         `intangible' since that property is not used any more.
31686         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
31688 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
31690         Use the VC root in `log-edit-listfun'
31691         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
31692         `log-edit-listfun'.
31694 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
31696         Fix description of Unix time, mention new function.
31697         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
31698         Unix time.
31699         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
31700         (Basic Operations on Units): Mention `calc-convert-exact-units'.
31702 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
31704         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
31706 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
31708         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
31709         Don't add newline after the last entry.
31711 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
31713         css-mode.el: Add "not" pseudo-class
31714         (Bug#20267)
31715         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
31716         list of CSS pseudo-classes.
31718 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
31720         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
31722 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
31724         Stop messing with the EMACS env var
31725         * doc/emacs/misc.texi (Interactive Shell): Remove description of
31726         EMACS env var.
31728 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
31730         Adapt 'make change-history' to coding cookie
31731         * Makefile.in (change-history): Adjust to change of format of
31732         ChangeLog file, which now has a coding cookie before an indented
31733         copyright notice.
31735 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
31737         Adapt 'make change-history' to coding cookie
31738         * Makefile.in (change-history): Adjust to change of format of
31739         ChangeLog file, which now has a coding cookie before an indented
31740         copyright notice.
31742         gitlog-to-changelog coding cookie and mv -i
31743         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
31744         for copyright notice prototype, so that we get a proper "coding:"
31745         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
31746         existing ChangeLog.  Problems reported by Eli Zaretskii in:
31747         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
31749         Merge from gnulib
31750         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
31751         2015-04-09 gitlog-to-changelog: port to MS-Windows
31753 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
31755         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
31756         (Bug#20212)
31758 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
31760         Stop messing with the EMACS env var
31761         (Bug#20202)
31762         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
31763         * lisp/comint.el (comint-exec-1):
31764         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
31765         * lisp/progmodes/compile.el (compilation-start): Same and bring
31766         INSIDE_EMACS's format in line with other users.
31768         css-mode.el (css-smie-rules): Fix indentation after complex selectors
31769         (Bug#20282)
31770         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
31771         inner structure of selectors.
31773 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
31775         python.el: Indent docstring lines to base-indent
31776         (Bug#19595)
31777         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
31778         an initial patch.
31779         * lisp/progmodes/python.el
31780         (python-indent-context): Add :inside-docstring context.
31781         (python-indent--calculate-indentation): Handle :inside-docstring.
31782         (python-indent-region): Re-indent docstrings.
31783         * test/automated/python-tests.el (python-indent-region-5)
31784         (python-indent-inside-string-2): Fix tests.
31786         python.el: Increase native completion robustness
31787         (Bug#19755)
31788         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
31789         this and providing useful ideas.
31790         * lisp/progmodes/python.el
31791         (python-shell-completion-native-output-timeout): Increase value.
31792         (python-shell-completion-native-try-output-timeout): New var.
31793         (python-shell-completion-native-try): Use it.
31794         (python-shell-completion-native-setup): New readline setup avoids
31795         polluting current context, ensures output when no-completions are
31796         available and includes output end marker.
31797         (python-shell-completion-native-get-completions): Trigger with one
31798         tab only.  Call accept-process-output until output end is found or
31799         python-shell-completion-native-output-timeout is exceeded.
31801 2015-04-08  Samer Masterson  <samer@samertm.com>
31803         * lisp/eshell: Make backslash a no-op in front of normal chars
31804         (Bug#8531)
31805         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
31806         (eshell-parse-backslash): Return escaped character after backslash
31807         if it is special.  Otherwise, if the backslash is not in a quoted
31808         string, ignore the backslash and return the character after; if
31809         the backslash is in a quoted string, return the backslash and the
31810         character after.
31811         * test/automated/eshell.el (eshell-test/escape-nonspecial)
31812         (eshell-test/escape-nonspecial-unicode)
31813         (eshell-test/escape-nonspecial-quoted)
31814         (eshell-test/escape-special-quoted): Add tests for new
31815         `eshell-parse-backslash' behavior.
31817 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
31819         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
31820         after the file name.
31821         (Bug#20276)
31823 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
31825         Minor quoting etc. fixes to Emacs manual
31826         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
31827         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
31828         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
31829         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
31830         * doc/emacs/indent.texi, doc/emacs/macos.texi:
31831         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
31832         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
31833         * doc/emacs/search.texi, doc/emacs/trouble.texi:
31834         * doc/emacs/vc1-xtra.texi:
31835         Use American-style double quoting in ordinary text,
31836         and quote 'like this' when single-quoting in ASCII text.
31837         Also, fix some minor spacing issues.
31839         Minor quoting etc. fixes to elisp intro
31840         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
31841         American-style double quoting in ordinary text.  In ASCII text,
31842         consistently quote 'like this' instead of `like this', unless
31843         Emacs requires the latter.
31845 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
31847         * CONTRIBUTE: Mention log-edit-insert-changelog.
31849         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
31851 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
31853         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
31855 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
31857         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
31858         Fix inheritance of initargs.  (Bug#20270)
31860 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
31862         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
31863         while dowloading information.
31865         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
31866         (package--ensure-init-file): Check file contents before visiting.
31867         (package-initialize): Call it.
31868         (package-install-from-buffer, package-install): Don't call it.
31870 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
31872         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
31873         (Bug#17517)
31875 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
31877         * lisp/net/tramp-cache.el (tramp-flush-file-property):
31878         Fix nasty scoping bug.
31880 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
31882         Add notice to visual commands section
31883         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
31884         such as git call less with its -F option which omits pagination if
31885         the contents is less than one page long.  This interferes with
31886         eshell's visual (sub-)commands.
31888 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
31890         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
31891         environment variable expansion in file names.  (Bug#19839)
31893 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
31895         Prefer double-quote to accent-grave in man pages
31897 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
31899         (Bug#20257)
31900         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
31902 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
31904         Update etc/PROBLEMS.
31905         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
31906         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
31907         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
31908         respectively); other minor updates and tweaks.  (Bug#20011)
31910 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
31912         Add doc strings for some Isearch state vars
31913         * lisp/misearch.el (multi-isearch-buffer-list)
31914         (multi-isearch-file-list): Add doc strings.
31915         (Bug#20232)
31917 2015-04-07  Alan Mackenzie  <acm@muc.de>
31919         Always mark "<" and ">" in #include directives with text properties.
31920         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
31921         "anchored matcher" with an invocation of
31922         c-make-font-lock-search-function to allow fontification when there's
31923         no trailing space on an "#include <..>" line.
31925 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
31927         Generate a ChangeLog file from commit logs
31928         * .gitignore: Add 'ChangeLog'.
31929         * build-aux/gitlog-to-changelog: New file, from Gnulib.
31930         * build-aux/gitlog-to-emacslog: New file.
31931         * CONTRIBUTE: Document the revised workflow.
31932         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
31933         instead of just special cases.
31934         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
31935         (ChangeLog, unchanged-history-files, change-history)
31936         (change-history-commit): New rules.
31937         * admin/admin.el (make-manuals-dist--1):
31938         Don't worry about doc/ChangeLog.
31939         * admin/authors.el: Add a FIXME.
31940         * admin/make-tarball.txt:
31941         * lisp/calendar/icalendar.el:
31942         * lisp/gnus/deuglify.el:
31943         * lisp/obsolete/gulp.el:
31944         * lwlib/README:
31945         Adjust to renamed ChangeLog history files.
31946         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
31947         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
31948         Remove obsolete discussion of merging ChangeLog files.
31949         New section "Maintaining ChangeLog history".
31950         * build-aux/git-hooks/pre-commit:
31951         Reject attempts to commit files named 'ChangeLog'.
31952         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
31953         * make-dist: Make and distribute top-level ChangeLog if there's a
31954         .git directory.  Distribute the new ChangeLog history files
31955         instead of scattered ChangeLog files.  Distribute the new files
31956         gitlog-to-changelog and gitlog-to-emacslog.
31957         (Bug#19113)
31959         Rename ChangeLogs for gitlog-to-changelog
31960         This patch was implemented via the following shell commands:
31961         find * -name ChangeLog |
31962         sed 's,.*,git mv & &.1,
31963         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
31964         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
31965         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
31966         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
31967         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
31968         sh
31969         git commit -am"[this commit message]"
31971 This file records repository revisions from
31972 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
31973 2016-02-15decb15e0496cec0c48d980c88a5a9d7cc00da (inclusive).
31974 2016-02-04b6d89ff9288a49099f041752908b5eb9613e (inclusive).
31975 commit ba1422e12f80ae1eb2aa9d0ce80c14e3ee4b3950 (inclusive).
31976 See ChangeLog.1 for earlier changes.
31978 ;; Local Variables:
31979 ;; coding: utf-8
31980 ;; End:
31982   Copyright (C) 2015-2016 Free Software Foundation, Inc.
31984   This file is part of GNU Emacs.
31986   GNU Emacs is free software: you can redistribute it and/or modify
31987   it under the terms of the GNU General Public License as published by
31988   the Free Software Foundation, either version 3 of the License, or
31989   (at your option) any later version.
31991   GNU Emacs is distributed in the hope that it will be useful,
31992   but WITHOUT ANY WARRANTY; without even the implied warranty of
31993   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
31994   GNU General Public License for more details.
31996   You should have received a copy of the GNU General Public License
31997   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.