* doc/lispref/sequences.texi: Add documentation for seq-map-indexed
[emacs.git] / ChangeLog.2
blob2e2cad431cf438a6889efe78a639b017d827b453
1 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
3         Fix network-stream-tests on MS-Windows
5         * test/lisp/net/network-stream-tests.el (make-local-unix-server):
6         Skip if local sockets are not supported.
8 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
10         * admin/notes/bug-triage: Fix bug priorities.  Explain colors in debbugs-gnu.
12 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
14         Disable 'timer-list'
16         * lisp/emacs-lisp/timer-list.el: Make 'timer-list' a disabled
17         command.
19 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
21         Avoid aligned_alloc static/extern collision
23         * src/alloc.c (aligned_alloc): Define to private name when a
24         static function, to avoid collision with lisp.h extern decl.
25         Reported by John Yates in:
26         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00439.html
28 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
30         Make `message-beginning-of-line' aware of folded headers
32         * lisp/gnus/message.pl (message-beginning-of-header): New function which
33         moves point to the beginning of a mail header.  The function is aware of
34         folded headers and with non-nil argument looks for the true beginning of
35         a header while with nil argument moves to the indented text of header's
36         value.
37         (message-beginning-of-line): Function is now aware of folded headers and
38         either moves point to the indention of a header or, in visual-line-mode,
39         searches for the beginning of the header.
41 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
43         Optimise ‘point in message header’ check
45         * lisp/gnus/message.el (message-point-in-header-p): Replace two unbound
46         regular expression matches with a single bound string match thus
47         reducing amount of work the function is doing.
49 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
51         Make the `R' command get the correct relative <img>s
53         * lisp/net/eww.el (eww-readable): Preserve the base URL so
54         that image expansions are fetched from the right place (bug#22605).
56 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
58         Add a mode to list and cancel timers
60         * doc/lispref/os.texi (Timers): Menton `timer-list'.
62         * lisp/emacs-lisp/timer-list.el: New file.
64 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
66         Add new commands to allow changing the size of images
68         * lisp/image.el (image-increase-size, image-decrease-size):
69         New commands.
70         (image-change-size): New function.
72 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
74         Allow the image scale to be a floating point number
76         * src/image.c (compute_image_size): The scale can be a
77         floating point number.
79 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
81         Add an IPv6 test
83         * test/lisp/net/network-stream-tests.el
84         (connect-to-tls-ipv6-nowait): Add an ipv6 test, too.
86 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
88         Use gnutls-serv instead of openssh
90         * test/lisp/net/network-stream-tests.el (make-tls-server): Use
91         gnutls-serv instead of openssh.
93 2016-02-08  Daniel Colascione  <dancol@dancol.org>
95         Performance improvements for vc-hg
97         Teach vc-hg how to read some Mercurial internal data structures,
98         allowing us to avoid the need to run hg status -A, which is very slow
99         for large repositories.  Fall back to running hg if anything looks
100         funny.  vc-hg now puts the _working directory_ revision in the
101         modeline instead of the file revision, which greatly improves
102         performance and which allows us to again skip running hg in the case
103         that we have an active bookmark.
105         * lisp/vc/vc-hg.el (vc-hg-state): Try calling `vc-hg-statefast'
106         (vc-hg-symbolic-revision-styles)
107         (vc-hg-use-file-version-for-mode-line-version)
108         (vc-hg-parse-hg-data-structures): New user preferences
109         (vc-hg--active-bookmark-internal, vc-hg--run-log)
110         (vc-hg--symbolic-revision, vc-hg-mode-line-string)
111         (vc-hg--read-u8, vc-hg--read-u32-be)
112         (vc-hg--raw-dirstate-search, vc-hg--cached-dirstate-search)
113         (vc-hg--parts-to-string, vc-hg--pcre-to-elisp-re)
114         (vc-hg--glob-to-pcre, vc-hg--hgignore-add-pcre)
115         (vc-hg--hgignore-add-glob, vc-hg--hgignore-add-path)
116         (vc-hg--slurp-hgignore-1, vc-hg--slurp-hgignore)
117         (vc-hg--ignore-patterns-valid-p)
118         (vc-hg--ignore-patterns-ignored-p, vc-hg--time-to-fixnum)
119         (vc-hg--file-ignored-p, vc-hg--read-repo-requirements)
120         (vc-hg--requirements-understood-p, vc-hg--dirstate-scan-cache)
121         (vc-hg-state-fast): New functions.
122         (vc-hg--hgignore-patterns, vc-hg--hgignore-filenames)
123         (vc-hg--cached-ignore-patterns, vc-hg--dirstate-scan-cache)
124         (vc-hg--dirstate-scan-cache): New internal variables.
125         * lisp/vc/vc-hooks.el (vc-refresh-state): Invoke vc find-file-hook
126         before updating modeline.
128 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
130         Skip TLS tests if we don't have openssl
132         * test/lisp/net/network-stream-tests.el (connect-to-tls): Skip
133         TLS tests if we don't have openssl and GnuTLS.
135 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
137         Automatically scale images up on high-density screens
139         * doc/lispref/display.texi (ImageMagick Images): Mention :scale.
140         (Defining Images): Mention image-scaling-factor.
142         * lisp/image.el (image-compute-scaling-factor): New function
143         (bug#22172).
144         (create-image): Use it.
145         (image-scaling-factor): New variable.
147         * src/image.c (compute_image_size): Take :scale into account.
149 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
151         Ensure progress when fetching from the queue
153         * lisp/url/url-queue.el (url-queue-check-progress): Ensure
154         that we have progress when fetching queued requests (bug#22576).
156 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
158         Make mail-extract-address-components return the user name more
160         * lisp/mail/mail-extr.el (mail-extract-address-components):
161         Return the name even if it's the same as the mailbox name (if
162         `mail-extr-ignore-single-names' isn't set) (bug#22594).
164 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
166         Message no longer warns about unknown top level domains
168 2016-02-07  Jarno Malmari  <jarno@malmari.fi>
170         Add tests for url-auth
172         * test/lisp/url/url-auth-tests.el: New file.
174 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
176         Add a TLS connection test
178         * test/lisp/net/network-stream-tests.el (connect-to-tls): Add
179         a TLS connection test.
181 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
183         Add more network tests
185         * test/lisp/net/network-stream-tests.el (echo-server-nowait):
186         New test.
188 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
190         Add network tests
192         * test/lisp/net/network-stream-tests.el: New suite of network tests.
194 2016-02-07  Foo  <rasmus@gmx.us>
196         Allow various Gnus and Message address variables to be functions
198         * doc/misc/gnus.texi (To From Newsgroups):
199         gnus-ignored-from-addresses can be a function.
201         * doc/misc/message.texi (Wide Reply):
202         message-dont-reply-to-names can be a function.
204         * lisp/gnus/gnus-icalendar.el (gnus-icalendar-identities):
205         message-alternative-emails can be a function.
207         * lisp/gnus/gnus-notifications.el (gnus-notifications):
208         message-alternative-emails can be a function (bug#22315).
210         * lisp/gnus/gnus-sum.el
211         (gnus-summary-from-or-to-or-newsgroups):
212         gnus-ignored-from-addresses can be a function (bug#22315).
214 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
216         Fix typo in Gnus regexp
218         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Fix
219         typo in last change to this regexp (bug#22592).
221 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
223         Port to FreeBSD x86
225         Reported by Herbert J. Skuhra in:
226         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00336.html
227         * src/lisp.h (NONPOINTER_BITS) [__FreeBSD__]: Zero in this case too,
228         since malloc always returns a multiple of 8 in FreeBSD.
230 2016-02-07  Alan Mackenzie  <acm@muc.de>
232         On leaving CC Mode, clean up by removing character properties.
234         * lisp/progmodes/cc-mode.el (c-leave-cc-mode-mode): Remove from the buffer
235         all instances of the text properties/extents category, syntax-table,
236         c-is-sws, c-in-sws, c-type, and c-awk-NL-prop.
238 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
240         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Don't use
241         the no-longer-existing message-valid-fqdn-regexp variable.
243 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
245         Remove message-valid-fqdn-regexp, since it changes too much now
246         * lisp/gnus/message.el (message-valid-fqdn-regexp): Remove.
247         (message-bogus-recipient-p): Don't use it any more.
248         (message-make-fqdn): Ditto.  Suggested by Lars-Johan Liman.
250 2016-02-06  Paul van der Walt  <paul@denknerd.org>  (tiny change)
252         * lisp/gnus/message.el (message-subject-re-regexp): Also match
253         "Re :" as a "Re:" prefix (commonly used in France).
255 2016-02-06  Adam Sjøgren  <asjo@koldfront.dk>
257         * lisp/net/shr.el (shr-tag-del, shr-tag-ins): New functions.
259 2016-02-06  David Edmondson  <dme@dme.org>
261         src/process.c Correctly convert AF_INET6 addresses
262         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
263         converted to a list of 16 bit quantities by
264         conv_sockaddr_to_lisp().  conv_lisp_to_sockaddr() should follow the
265         same scheme rather than expecting a (longer) list of 8 bit
266         quantities.
268 2016-02-06  Martin Jesper Low Madsen  <martin@martinjlowm.dk>  (tiny change)
270         * lisp/gnus/auth-source.el (auth-source-macos-keychain-search):
271         Search for all host/port (or protocol) combinations for a match in
272         the OS X keychain.
274 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
276         Remove nonsensical setting of gnus-newsgroup-unseen
278         * lisp/gnus/gnus-sum.el (gnus-update-marks): Remove nonsensical
279         setting of gnus-newsgroup-unseen.
281 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
283         Use underline on all terminals that support it
285         * lisp/subr.el (read-multiple-choice): Use
286         display-supports-face-attributes-p instead of
287         display-graphic-p to determine whether we can use underlining.
289 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
291         Make the nsm query say what it did after the user interaction
293         * lisp/net/nsm.el (nsm-query): Issue a message about
294         aborting/accepting messages (suggested by N. Jackson)
295         (bug#22531).
297 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
299         Omit XLI (init) == 0 optimization in make-vector
301         * src/alloc.c (Fmake_vector): Simplify by omitting the (XLI (init)
302         == 0) case, as this optimization is probably not worth the hassle.
303         Just for the record, the test for that case could have been
304         (XLI (init) % ((EMACS_UINT) -1 / UCHAR_MAX) == 0) (!),
305         assuming the typical platform with no padding bits and where
306         conversion to int omits the most significant bits.
308 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
310         * autogen.sh: Port to dash (Bug#22556).
312 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
314         Minor cleanup for Tramp "doas".
316         * doc/misc/tramp.texi (Inline methods): Add "doas" method.
318         * etc/NEWS: Add Tramp connection method "doas".
320         * lisp/net/tramp-sh.el (tramp-methods) <doas>:
321         Add `tramp-remote-shell-args'.
323 2016-02-05  Xi Lu  <lx@shellcodes.org>
325         * lisp/net/tramp-sh.el (tramp-methods) <doas>: Add.  (Bug#22542)
327         (tramp-default-user-alist): Add rule for "doas".
328         (top): Completion function for "doas" is
329         `tramp-completion-function-alist-su'.
331 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
333         Restore the window configuration
335         * lisp/net/nsm.el (nsm-query-user): Restore the window
336         configuration (bug#22532).
338 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
340         Use an X popup in read-multiple-choice if running from a mouse command
342         * lisp/subr.el (read-multiple-choice): Use an X popup if
343         called from a mouse action (bug#19368).
345 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
347         Display cursor in echo area when prompting
349         * lisp/subr.el (read-multiple-choice): Display the cursor in
350         the echo area when prompting (bug#19368).
352 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
354         Make NSM prompting clearer
356         * lisp/net/nsm.el (nsm-query-user): Use read-multiple-choice
357         to prompt in a nicer way (bug#19368).
359 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
361         Underline read-multiple-choice-face
363         * lisp/faces.el (read-multiple-choice-face): Also underline
364         the choice.
366 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
368         Make the read-multiple-choice prompt a bit prettier
370         * doc/lispref/commands.texi (Reading One Event): Mention
371         read-multiple-choice-face.
373         * lisp/subr.el (read-multiple-choice): Make the prompting a bit
374         prettier.
376 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
378         Prefer memcpy and memset to doing it by hand
380         * src/alloc.c (Fmake_vector):
381         * src/ccl.c (setup_ccl_program):
382         Use memset to clear array.
383         * src/alloc.c (Fvector, Fmake_byte_code):
384         * src/charset.c (Fdefine_charset_internal):
385         Use memcpy to copy array.
387 2016-02-04  Nicolas Petton  <nicolas@petton.fr>
389         Do not ignore redirections of 301, 302 and 307 status codes
391         The current version of HTTP/1.1 (RFC 7231) no longer requires
392         confirmation on 301, 302 or 307 status codes, therefore we do not have
393         to ignore redirects for other requests than GET and HEAD.
395         * lisp/url/url-http.el (url-http-parse-headers): Do not ignore 301, 302
396         and 307 redirects for other requests than GET and HEAD.
398 2016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
400         * lisp/net/eww.el (eww-switch-to-buffer): Use pop-to-buffer-same-window instead.
402 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
404         Simplify USE_ALIGNED_ALLOC
406         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify, now that we’ve merged
407         in the emacs-25 changes.  Omit no-longer-needed decl for aligned_alloc.
409 2016-02-04  Eric Abrahamsen  <eric@ericabrahamsen.net>
411         Honor docstring of gnus-group-get-new-news
413         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg
414         is t, but non-numeric, unconditionally consider all groups to need
415         updating.
417 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
419         New function read-multiple-choice
421         * doc/lispref/commands.texi (Reading One Event): Document
422         read-multiple-choice.
424         * lisp/faces.el (read-multiple-choice-face): New face.
426         * lisp/subr.el (read-multiple-choice): New function.
428 2016-02-04  John Wiegley  <johnw@newartisans.com>
430         Merge from origin/emacs-25
432         ee73997 Make erc work better when encountering unknown prefix chars
433         b99141d Make erc completion case-insensitive again
434         66c4620 Make complection in erc use consistent casing
435         8c562b2 Make /QUIT in erc more robust
436         d93d2c5 Make tracking faces in Emacs work more reliably
437         af6ab7e Make shr not bug out on images on non-graphical displays
438         3311f40 Fix bookmark display widths
439         d90ab1e Fix typo in eww-make-unique-file-name
440         7f81825 Make it possible to TAB to input fields
441         a43a1dc Insert complete alt texts when images are disabled
442         56ed4e1 Allow eww text fields to grow
443         66b315c Make erc work when subword-mode is switched on
444         255b68f Fix IMAP doc example
445         91557f5 Quoting fixes in doc strings and diagnostics
446         2c0dc9f Fix warning message in hack-local-variables
447         504696d Etags: yet another improvement in Ruby tags
448         8784ebf Fix x-popup-menu on TTYs without a mouse
449         8b87ecb * lisp/emacs-lisp/map.el: Improvements to the docstring of the
450                 pcase macro
451         6191003 Use pop-to-buffer-same-window in eww
452         fe321fd * autogen.sh: Revert all recent changes.
453         74ebd4a * make-dist: Updates related to nt/.
454         737193a * make-dist: Add modules/.
455         3696bf2 * make-dist: Update for super-special file that can't live in etc/.
456         a4278e2 Fix failure to compile ns-win.el in parallel builds
457         860da4d Fix names of tags generated for Ruby accessors
458         f6213ce Fix file-name recognition in 'etags'
459         e42e662 Change Ruby file names and extensions recognized by 'etags'
460         58bfb6a More improvements for Ruby support in 'etags'
461         c04e911 Add --git-config option to autogen.sh
462         5713466 Fix editing undo changes in eww fields
463         51362d6 Allow the user more control of popping up the eww window
464         ee0fbd8 Make eww-browse-url with new-window parameter work again
465         9c3142d Clean up eww code slightly
466         cb035f3 Don't insert nil faces in shr
467         4c3fae3 ; * lisp/progmodes/prolog.el: Remove some obsolete commentary.
468         93f2153 Improve the custom type of some user options.
469         9f60d7e Mark some risky calendar variables.
470         1d07dcd Highlight two additional SCSS keywords
471         ee8b466 Recommend enabling integrity-checking in git
472         e639e10 Some corrections in Elisp manual
473         d766ca8 Chatter when autogen.sh changes Git configuration
474         3b734e1 * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
475         43cb9f8 Omit unnecessary history from Lisp intro
476         2fbd1da * etc/HISTORY: Add some more history, plus git tags.
477         c90e1b4 Improve elisp “Security Considerations” doc
478         cedd7ca autogen.sh now arranges for git to check hashes
479         86ce76b ; Fix ChangeLog.2 commit ID.
480         7b1d2b1 Fix (c & 040) typo in emergency escapes
481         a8273da Fix display of overlay strings with 'display' and 'box' property
482         fc48106 Fix imap-starttls-open
483         cdecbed Fix return value of imap-starttls-open
484         20c7e34 ; * etc/NEWS: Fix renamed command name
485         98bdbdb Correct reference to DARWIN_OS preprocessor symbol
486         b250d29 Spelling fix
487         b920a0e Spelling fixes
488         93b144b Pacify GCC on C library without glibc API
490 2016-02-04  John Wiegley  <johnw@newartisans.com>
492         Merge from origin/emacs-25
494         ea26c8a * lisp/net/browse-url.el (browse-url-default-browser): Lower
495                 priority of non-free Chrome.
496         0fac75f Improve the custom type of some user options.
497         2df0e04 Highlight CSS variables with variable name face
498         3cf5e81 * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not
499                 user-serviceable.
500         2a5233c Mark some user options that can get evalled as risky.
501         39b166f Disable DebPrint in sys_read on MS-Windows
502         9fd0189 ;Fix ChangeLog entry
503         4bb7233 Fix typos in Introduction to Emacs Lisp manual
505 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
507         Allow sending empty hidden values in eww
509         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
510         values (bug#22388).
512         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
514         Backport:
516 2016-02-04  David Edmondson  <dme@dme.org>
518         Make erc work better when encountering unknown prefix chars
520         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
521         instead of erroring out on unknown prefix chars (bug#22380).
523 2016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
525         Add a new command to switch between erc buffers
527         * doc/misc/eww.texi: Document eww-switch-to-buffer and its keybinding
528         * etc/NEWS: Mention new command
529         * lisp/net/eww.el (eww-mode-map): Bind eww-switch-to-buffer to "s"
530         (eww-mode-map): Add menu item
531         (eww-switch-to-buffer): New command
533 2016-02-04  David Edmondson  <dme@dme.org>
535         Make erc work better when encountering unknown prefix chars
537         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
538         instead of erroring out on unknown prefix chars (bug#22380).
540 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
542         Allow sending empty hidden values in eww
544         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
545         values (bug#22388).
547 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
549         Make erc completion case-insensitive again
551         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
552         case-insensitive again (bug#11360).
554 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
556         Make complection in erc use consistent casing
558         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
559         case in the complection consistent (bug#18509).
561 2016-02-04  Francis Litterio  <flitterio@gmail.com>
563         Make /QUIT in erc more robust
565         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
566         issuing /QUIT to disconnected servers (bug#22099).
568 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
570         Make tracking faces in Emacs work more reliably
572         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
573         faces to avoid later ambiguity (bug#22424).
575 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
577         Make shr not bug out on images on non-graphical displays
579         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
580         images on non-graphical displays (bug#22327).
582 2016-02-04  Andrew Hyatt  <ahyatt@gmail.com>
584         Remove packages obsoleted before Emacs 24.
586         In accordance with the policy discussed in the emacs-devel list,
587         packages that have been obsoleted for a full major release cycle are up
588         for deletion.
590         This removes almost all packages that are now eligible for deletion,
591         with the exception of "cl-compat", which seems it is likely to still be
592         used, and "optional", which offers some functionality that doesn't have
593         a replacement yet.
595 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
597         Fix bookmark display widths
599         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
600         preparing it so that the widths are computed correctly (bug#22328).
602 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
604         Fix typo in eww-make-unique-file-name
606         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
607         actually work.
609 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
611         Make it possible to TAB to input fields
613         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
614         input fields (bug#22540).
616 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
618         Insert complete alt texts when images are disabled
620         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
621         the complete alt/title string (bug#22293).
623 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
625         Allow eww text fields to grow
627         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
628         grow when typing in stuff that's longer than the original width.
630 2016-02-03  Dima Kogan  <dima@secretsauce.net>
632         Make erc work when subword-mode is switched on
634         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
635         (erc-bounds-of-word-at-point): New functions to do word-based
636         things when subword-mode is switched on.
638         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
639         (bug#17558).
641 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
643         Fix IMAP doc example
645         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
647 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
649         Quoting fixes in doc strings and diagnostics
651         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
652         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
653         (mml-smime-get-ldap-cert):
654         Follow user style preference when quoting diagnostics.
656 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
658         Mention context when resume from emergency escape
660         That way, if the user has been doing something else for a while,
661         they are reminded of the situation when restarting Emacs,
662         and are more likely to understand the two questions.
663         * doc/emacs/trouble.texi (Emergency Escape): Document this.
664         * src/keyboard.c (handle_interrupt): Implement this.
666 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
668         Fix warning message in hack-local-variables
670         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
671         the original buffer name in the warning message.  (Bug#21681)
673 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
675         Etags: yet another improvement in Ruby tags
677         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
678         Ruby accessor definitions.  (Bug#22241)
680         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
681         accessors and multiline definitions.
682         * test/etags/ETAGS.good_1:
683         * test/etags/ETAGS.good_2:
684         * test/etags/ETAGS.good_3:
685         * test/etags/ETAGS.good_4:
686         * test/etags/ETAGS.good_5:
687         * test/etags/ETAGS.good_6:
688         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
690 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
692         Fix x-popup-menu on TTYs without a mouse
694         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
695         for the TTY case without a mouse.  (Bug#22538)
697 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
699         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
701 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
703         Port aligned_alloc decl to Cygwin.
705         Problem reported by Ken Brown (Bug#22522#38).
706         * configure.ac (aligned_alloc): Check for decl too.
707         * src/lisp.h (aligned_alloc): Declare if not already declared.
709 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
711         autogen.sh now configures git only on request
713         * autogen.sh (do_autoconf, do_git): New vars.
714         Support new arguments --help, all, autoconf, git.
715         By default, just do autoconf-related configuration, not git.
716         Prefer 'echo' to 'cat <<EOF ...', as this tends to avoid temp files.
717         If GNU cp is available, use it to backup .git/config before
718         changing it.  When configuring git, chatter about what is being
719         done, and configure git to check hashes.  Avoid some duplicate
720         file name specification when creating git hooks.
722         * GNUmakefile (ALL_IF_GIT): New macro.
723         (configure): Use it.
724         * INSTALL.REPO: Suggest './autogen.sh all'.
726 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
728         Use pop-to-buffer-same-window in eww
730         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
731         switch-to-buffer (bug#22244).
733 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
735         * autogen.sh: Revert all recent changes.
737 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
739         Build with C11 if available
741         * admin/merge-gnulib (GNULIB_MODULES): Add std-gnu11.
742         * m4/std-gnu11.m4: New file, from gnulib.
743         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
745 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
747         Update gnulib copy
749         * doc/misc/texinfo.tex: Copy from gnulib.
751 2016-02-02  Glenn Morris  <rgm@gnu.org>
753         * make-dist: Updates related to nt/.
755         * make-dist: Add modules/.
757         * make-dist: Update for super-special file that can't live in etc/.
759 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
761         Fix failure to compile ns-win.el in parallel builds
763         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
764         dependency on $(lispsource)/international/charprop.el.
765         (Bug#22501)
767 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
769         Fix names of tags generated for Ruby accessors
771         * lib-src/etags.c (Ruby_functions): Don't include the leading
772         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
774         * test/etags/ETAGS.good_1:
775         * test/etags/ETAGS.good_2:
776         * test/etags/ETAGS.good_3:
777         * test/etags/ETAGS.good_4:
778         * test/etags/ETAGS.good_5:
779         * test/etags/ETAGS.good_6:
780         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
782 2016-02-02  Glenn Morris  <rgm@gnu.org>
784         * lisp/vc/add-log.el (change-log-directory-files, find-change-log):
785         Doc tweaks.
787 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
789         Fix file-name recognition in 'etags'
791         * lib-src/etags.c (get_language_from_filename): If FILE includes a
792         leading directory, compare only its basename to the known file
793         names in lang_names[].
795         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
796         renaming.
797         * test/etags/ETAGS.good_1:
798         * test/etags/ETAGS.good_2:
799         * test/etags/ETAGS.good_3:
800         * test/etags/ETAGS.good_4:
801         * test/etags/ETAGS.good_5:
802         * test/etags/ETAGS.good_6:
803         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
804         to the results in Makefile due to the above etags.c fix.
806 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
808         Change Ruby file names and extensions recognized by 'etags'
810         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
811         of Ruby files.
812         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
813         <lang_names>: Add Ruby_filenames to the Ruby entry.
814         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
815         (Bug#22241)
817 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
819         Port better to platforms lacking aligned_alloc
821         Problem reported by Ken Brown (Bug#22522).
822         * src/lisp.h (hybrid_aligned_alloc)
823         [HYBRID_MALLOC && !HAVE_ALIGNED_ALLOC]: New decl.
825 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
827         Port malloc.h hygiene fix to LTO
829         * src/alloc.c (__malloc_initialize_hook):
830         Make it externally visible (Bug#22522).
832 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
834         More improvements for Ruby support in 'etags'
836         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
837         alias_method.  Identify constants even if the assignment is not
838         followed by whitespace.  (Bug#22241)
840         * test/etags/ruby-src/test1.ruby: Add tests for constants,
841         accessors, and alias_method.
842         * test/etags/ETAGS.good_1:
843         * test/etags/ETAGS.good_2:
844         * test/etags/ETAGS.good_3:
845         * test/etags/ETAGS.good_4:
846         * test/etags/ETAGS.good_5:
847         * test/etags/ETAGS.good_6:
848         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
850 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
852         Add --git-config option to autogen.sh
854         * autogen.sh: New options --git-config, --help.
855         (git_config): New shell var.  Alter function to respect this var.
857 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
859         Fix editing undo changes in eww fields
861         * eww.el (eww-tag-form): Don't overwrite initial form data in text
862         fields.
863         (eww-process-text-input): Make `M-t' at the end of text fields work
864         better (bug#19085).
866 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
868         Allow the user more control of popping up the eww window
870         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
871         Michael Heerdegen) (bug#22244).
873 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
875         Make eww-browse-url with new-window parameter work again
877         * eww.el (eww-browse-url): Stay in the same buffer if we're
878         already in a eww mode buffer so that eww-browse-url with a
879         new-window parameter works (bug#22244).
881 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
883         Clean up eww code slightly
885         * eww.el (eww-browse-url): Clean up code slightly.
887 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
889         Don't insert nil faces in shr
891         * shr.el (shr-insert-table): Don't add nil faces, because that
892         will show up in *Messages* as "Invalid face reference: nil [32
893         times]".
895 2016-02-01  Glenn Morris  <rgm@gnu.org>
897         Make find-change-log prefer a VCS root, if no ChangeLog exists.
899         * lisp/vc/add-log.el (change-log-directory-files): New option.
900         (find-change-log): Respect change-log-directory-files.
901         * doc/emacs/maintaining.texi (Change Log Commands):
902         Mention change-log-directory-files.
904 2016-02-01  Glenn Morris  <rgm@gnu.org>
906         Improve the custom type of some user options.
908         * lisp/autoinsert.el (auto-insert-alist):
909         * lisp/replace.el (query-replace-from-to-separator):
910         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
911         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
912         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
913         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
914         (prolog-mode-specificators, prolog-determinism-specificators)
915         (prolog-directives, prolog-program-name, prolog-program-switches)
916         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
917         (prolog-prompt-regexp): Improve custom type.
919 2016-02-01  Glenn Morris  <rgm@gnu.org>
921         Mark some risky calendar variables.
923         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
924         Remove risky setting for deleted obsolete alias.
925         (calendar-chinese-standard-time-zone-name)
926         (calendar-chinese-daylight-saving-start)
927         (calendar-chinese-daylight-saving-end):
928         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
929         (calendar-european-date-display-form)
930         (calendar-american-date-display-form, calendar-date-display-form):
931         * lisp/calendar/diary-lib.el (diary-remind-message)
932         (diary-header-line-format):
933         * lisp/calendar/solar.el (calendar-time-display-form)
934         (calendar-location-name): Mark as risky.
936 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
938         Highlight two additional SCSS keywords
940         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
941         identifiers on the form !foo.
942         (scss-bang-ids): New defconst holding SCSS identifiers on the form
943         !foo.
944         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
945         `font-lock-builtin-face'.
947         * test/indent/css-mode.css: Add bang rule test case.
949         * test/indent/scss-mode.css: Add test cases for the introduced bang
950         rules.
952 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
954         Recommend enabling integrity-checking in git
956         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
958         This is related to the autogen.sh changes made by Paul Eggert in
959         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
960         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
961         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
962         "Recommend these .gitconfig settings for git integrity." at
963         https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
965 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
967         Some corrections in Elisp manual
969         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
970         argument POSITION.
971         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
972         is an option.
973         * doc/lispref/display.texi (Refresh Screen): Describe optional
974         argument FRAME of `redraw-frame'.
975         (Attribute Functions): Describe optional argument CHARACTER of
976         `face-font'.
977         (Defining Images): `image-load-path' is an option.
978         (Beeping): `ring-bell-function' is an option.
979         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
980         argument of `set-frame-size' is optional.
981         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
982         is optional.
983         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
984         `set-transient-map'.
985         * doc/lispref/minibuf.texi (Text from Minibuffer):
986         `read-regexp-defaults-function' is an option.
987         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
988         * doc/lispref/modes.texi (Mode Line Variables):
989         `mode-line-position' and `mode-line-modes' are variables, not
990         options.
991         * doc/lispref/strings.texi (Creating Strings): The START argument
992         of `substring' is optional.
993         * doc/lispref/text.texi (Buffer Contents): Describe optional
994         argument NO-PROPERTIES of `thing-at-point'.
995         (User-Level Deletion): Both arguments of
996         `delete-trailing-whitespace' are optional.
997         (Margins): Use @key{RET} instead of @kbd{RET}.
998         * doc/lispref/windows.texi (Display Action Functions): Write
999         non-@code{nil} instead of non-nil.
1000         (Choosing Window Options): The WINDOW arg of
1001         `split-window-sensibly' is optional.
1002         (Choosing Window Options): Write non-@code{nil} instead of
1003         non-nil.
1004         (Window Start and End): Both args of `window-group-end' are
1005         optional.
1007         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
1008         to POSITION to keep consisteny with doc-string.
1010 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
1012         Double static heap size.
1014         * src/sheap.h (STATIC_HEAP_SIZE): Double it, since it was too
1015         small on FreeBSD (Bug#22086).
1017 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
1019         Chatter when autogen.sh changes Git configuration
1021         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
1023 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
1025         * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
1027 2016-02-01  Michael Albinus  <michael.albinus@gmx.de>
1029         Fix Bug#20821
1031         * lisp/net/tramp.el (tramp-file-name-handler):
1032         * lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name):
1033         Use `tramp-drop-volume-letter'.  (Bug#20821)
1035 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
1037         Omit unnecessary history from Lisp intro
1039         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
1040         (Conclusion): Reword so as not to talk about earlier versions
1041         of Emacs in what should be an intro.
1043 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
1045         * etc/HISTORY: Add some more history, plus git tags.
1047 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
1049         Improve elisp “Security Considerations” doc
1051         * doc/lispref/os.texi (Security Considerations):
1052         Mention call-process and rename-file as opposed to shell commands.
1053         Add some more cross-references.
1055 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
1057         autogen.sh now arranges for git to check hashes
1059         Suggested by Karl Fogel in:
1060         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
1061         * autogen.sh: Do "git config transfer.fsckObjects true".
1063 2016-01-31  Dave Barker  <kzar@kzar.co.uk>
1065         Add ability to give rcirc servers an alias name
1067         * lisp/net/rcirc.el (rcirc-server-alist): Add :server-alias
1068         customization option.
1069         (rcirc, rcirc-connect): Take server alias into account.
1071 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
1073         Fix (c & 040) typo in emergency escapes
1075         * src/keyboard.c (handle_interrupt): Fix recently-introduced
1076         typo (040 should have been ~040) that silently suppressed
1077         auto-saves after emergency escapes.  Redo comparison to avoid
1078         similar problems.
1080 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
1082         Port new hybrid malloc to FreeBSD
1084         Problem reported by Wolfgang Jenkner in: http://bugs.gnu.org/22086#118
1085         * src/gmalloc.c (__malloc_initialize_hook, __after_morecore_hook)
1086         (__morecore) [HYBRID_MALLOC]: Define in this case too.
1088 2016-01-31  Wolfgang Jenkner  <wjenkner@inode.at>
1090         * configure.ac: Stop using mmap for buffers for FreeBSD.
1092 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
1094         Fix display of overlay strings with 'display' and 'box' property
1096         * src/xdisp.c (get_next_display_element): Take the box face from
1097         display stack level that comes from a buffer, not an overlay
1098         string.  (Bug#22499)
1100 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
1102         Fix imap-starttls-open
1104         * lisp/net/imap.el (imap-starttls-open): Log imap process
1105         output.  Call imap-parse-greeting.  (Bug#22500)
1107 2016-01-31  Michael Albinus  <michael.albinus@gmx.de>
1109         Merge changes from Tramp repository
1111         * doc/misc/Makefile.in (${buildinfodir}/tramp.info tramp.html):
1112         No EXTRA_OPTS needed.
1114         * doc/misc/tramp.texi: Merge changes from Emacsemacs-25
1115         branch, especially for @trampfn{}.
1116         (Top): Move @ifnottex down.
1117         (History): XEmacs support has been removed.
1118         (GVFS based methods, Remote processes): Do not use emacsgvfs flag.
1119         (Auto-save and Backup): Use both syntax versions.
1120         (File name Syntax): Remark on IPv6 adresses is valid for
1121         unified syntax only.
1123         * doc/misc/trampver.texi: Do not set emacsgvfs flag.
1125 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
1127         Fix return value of imap-starttls-open
1129         * lisp/net/imap.el (imap-starttls-open): Fix return value.
1131 2016-01-31  John Wiegley  <johnw@newartisans.com>
1133         Correct reference to DARWIN_OS preprocessor symbol
1135         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
1136           not be defined.
1138 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
1140         Spelling fixes
1142         Spelling fix
1144         Spelling fixes
1146 2016-01-30  Glenn Morris  <rgm@gnu.org>
1148         * lisp/vc/add-log.el (find-change-log): Use locate-dominating-file.
1150 2016-01-30  Matthew Carter  <m@ahungry.com>
1152         Quote table names for postgres listings (sql-mode)
1154         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
1155           unquoted table names to the completion list.
1157 2016-01-30  Glenn Morris  <rgm@gnu.org>
1159         Change Smerge "Mine" and "Other" for "Upper" and "Lower.  (Bug#20878)
1161         * lisp/vc/smerge-mode.el (smerge-diff-switches)
1162         (smerge-context-menu, smerge-match-conflict, smerge-swap): Doc fixes.
1163         (smerge-upper, smerge-upper-face, smerge-keep-upper)
1164         (smerge-diff-base-upper): Rename from smerge-mine, smerge-mine-face,
1165         smerge-keep-mine, smerge-diff-base-mine.  Update all uses.
1166         (smerge-mine-face, smerge-other-face): Remove obsolete face aliases.
1167         (smerge-lower, smerge-lower-face, smerge-lower-re, smerge-keep-lower)
1168         (smerge-diff-base-lower): Rename from smerge-other, smerge-other-face,
1169         smerge-other-re, smerge-keep-other, smerge-diff-base-lower.
1170         Update all uses.
1171         (smerge-basic-map): Add "l" and "u" bindings.
1172         (smerge-mode-menu): Update menu bindings for renaming.
1173         (smerge-font-lock-keywords): Update face names.
1174         (smerge-match-names): Update names.
1175         (smerge-diff-upper-lower): Rename from smerge-diff-mine-other.
1176         (smerge-match-conflict, smerge-ediff): Rename local variables.
1177         (smerge-makeup-conflict): Relabel markers.
1178         (smerge-parsep-re): Use renamed variables.
1180 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
1182         Port recent my_edata change to MS-Windows
1184         * src/lastfile.c (my_edata): Also define if WINDOWSNT.
1186 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
1188         Pacify GCC on C library without glibc API
1190         Without this change, with --enable-gcc-warnings GCC would complain
1191         “error: redundant redeclaration of ‘aligned_alloc’”.
1192         * configure.ac: Simplify aligned_alloc testing.
1193         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
1194         since the simplified configure.ac no longer checks for that.
1195         Don’t declare if HAVE_ALIGNED_ALLOC.
1196         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
1198 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
1200         Tell Automake the new lib/Makefile.am is OK
1202         * lib/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
1204 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
1206         Make it easy to override preferred-branch test
1208         * Makefile.in (preferred-branch-is-current):
1209         Rename from emacs-25-branch-is-current.  All uses changed.
1210         (PREFERRED_BRANCH): New macro.
1212 2016-01-30  Glenn Morris  <rgm@gnu.org>
1214         * lisp/net/browse-url.el (browse-url-default-browser):
1215         Lower priority of non-free Chrome.
1217 2016-01-30  Glenn Morris  <rgm@gnu.org>
1219         Improve the custom type of some user options.
1221         * lisp/desktop.el (desktop-minor-mode-table):
1222         * lisp/man.el (Man-frame-parameters):
1223         * lisp/midnight.el (midnight-delay):
1224         * lisp/speedbar.el (speedbar-select-frame-method):
1225         * lisp/tooltip.el (tooltip-frame-parameters):
1226         * lisp/tree-widget.el (tree-widget-space-width):
1227         * lisp/type-break.el (type-break-keystroke-threshold):
1228         * lisp/woman.el (woman-imenu-generic-expression):
1229         * lisp/cedet/ede.el (ede-debug-program-function):
1230         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
1231         * lisp/emulation/viper-keym.el (viper-toggle-key):
1232         * lisp/erc/erc-networks.el (erc-server-alist):
1233         * lisp/gnus/message.el (message-deletable-headers, message-signature):
1234         * lisp/mail/mailalias.el (mail-directory-stream):
1235         * lisp/play/tetris.el (tetris-x-colors):
1236         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
1238 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
1240         Highlight CSS variables with variable name face
1242         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
1243         (css--font-lock-keywords): Highlight variables in
1244         `font-lock-variable-name-face'.
1246 2016-01-30  Glenn Morris  <rgm@gnu.org>
1248         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
1250 2016-01-30  Glenn Morris  <rgm@gnu.org>
1252         Mark some user options that can get evalled as risky.
1254         * lisp/allout.el (allout-title):
1255         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
1256         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
1257         * lisp/progmodes/gud.el (gud-tooltip-display):
1258         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
1259         Mark as risky.
1261 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
1263         Disable DebPrint in sys_read on MS-Windows
1265         * src/w32.c (sys_read): Disable a debugging print that is normal
1266         when non-blocking reads are retried.
1268 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
1270         ;Fix ChangeLog entry
1272 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
1274         Fix typos in Introduction to Emacs Lisp manual
1276         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
1277         (kill-new function, Digression into C)
1278         (Complete forward-sentence, Divide and Conquer, Find a File)
1279         (lengths-list-many-files, Columns of a graph, defcustom)
1280         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
1281         <dbastos@toledo.com>.
1283 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
1285         Shrink static heap a bit
1287         * src/sheap.h: Include lisp.h, for Lisp_Object.
1288         (STATIC_HEAP_SIZE): Now an enum constant, not a macro.
1289         Make it 2 MiB * sizeof (Lisp_Object), which is a bit more
1290         conservative than the old value.
1291         (Bug#22086)
1293 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
1295         Fix extern symbols defined and not used
1297         * src/alloc.c: Always include <signal.h>.
1298         (malloc_warning) [!SIGDANGER && (SYSTEM_MALLOC || HYBRID_MALLOC)]:
1299         Do not define; unused.
1300         * src/emacs.c, src/lisp.h (might_dump) [!DOUG_LEA_MALLOC]: Now static.
1301         * src/gmalloc.c (gdefault_morecore): Rename from __default_morecore,
1302         to avoid collision with glibc.  Now static.  All uses changed.
1303         * src/lastfile.c (my_edata): Define only if
1304         ((!defined SYSTEM_MALLOC && !defined HYBRID_MALLOC && !defined
1305         WINDOWSNT) \ || defined CYGWIN || defined DARWIN_OS).
1306         (Bug#22086)
1308 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
1310         Build lib/e-*.o only on platforms that need it
1312         * configure.ac (hybrid malloc): Simplify configuration.
1313         (SHEAP_OBJ): Remove; no longer needed.
1314         (HYBRID_MALLOC): New var. Subst it.
1315         (HYBRID_MALLOC_LIB): New Automake conditional.
1316         * lib/Makefile.am (noinst_LIBRARIES): Add libegnu.a only if
1317         HYBRID_MALLOC_LIB.
1318         (libegnu_a_CPPFLAGS): Omit AM_CPPFLAGS; not needed.
1319         (MOSTLYCLEANFILES): Add libegnu.a.
1320         * src/Makefile.in (SHEAP_OBJ): Remove.
1321         (HYBRID_MALLOC): New macro.
1322         (base_obj): Use it to conditionally add sheap.o.
1323         (LIBEGNU_ARCHIVE): New macro.
1324         ($(LIBEGNU_ARCHIVE)): New rule, replacing $(lib)/libegnu.a.
1325         All uses of the latter replaced by the former.
1326         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify configuration.
1327         Correct misspelling ALIGNED_ALLOC to HAVE_ALIGNED_ALLOC.
1328         * src/gmalloc.c: Update comment.
1329         * src/lisp.h (aligned_alloc)
1330         [!DOUG_LEA_MALLOC && !HYBRID_MALLOC && !SYSTEM_MALLOC]:
1331         New decl.
1332         (Bug#22086)
1334 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
1336         Include <malloc.h> when advisable
1338         This should help insulate us better from future glibc changes.
1339         It is good hygiene to include .h files for APIs that Emacs uses.
1340         Fix type clashes between Emacs and GNU <malloc.h> (Bug#22086).
1341         * configure.ac: Check for malloc.h.
1342         * src/alloc.c: Include <malloc.h> depending on HAVE_MALLOC_H,
1343         not on DOUG_LEA_MALLOC.
1344         * src/emacs.c, src/gmalloc.c (malloc_enable_thread):
1345         Remove decl (now in lisp.h).
1346         * src/gmalloc.c: Include stddef.h earlier, for ptrdiff_t.
1347         [emacs]: Include lisp.h.
1348         [HAVE_MALLOC_H]: Include <malloc.h>.
1349         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
1350         (__after_morecore_hook, __malloc_initialize_hook, __morecore)
1351         (__default_morecore):
1352         [!HAVE_MALLOC_H]: New decls near non-inclusion of <malloc.h>.
1353         (calloc): Make it clear that the macro should not be used.
1354         Remove unused decl.
1355         (malloc_info): New macro, to avoid clash with glibc <malloc.h>.
1356         (__morecore, __default_morecore, __after_morecore_hook)
1357         (__malloc_extra_blocks, __malloc_initialize_hook, __free_hook)
1358         (__malloc_hook, __realloc_hook, __memalign_hook, memory_warnings):
1359         Remove later decls.
1360         (gmalloc_hook, gfree_hook, grealloc_hook):
1361         Rename from __malloc_hook, __free_hook, __realloc_hook to
1362         avoid type collision with glibc <malloc.h>.  All uses changed.
1363         (gmalloc_hook):
1364         (__malloc_extra_blocks) [DOUG_LEA_MALLOC||HYBRID_MALLOC||SYSTEM_MALLOC]:
1365         Now static.
1366         (gmalloc_hook, __malloc_extra_blocks): Define even if [!HYBRID_MALLOC].
1367         (__malloc_initialize_hook, __after_morecore_hook):
1368         Declare with types compatible with glibc.
1369         (__memalign_hook, hybrid_calloc) [HYBRID_MALLOC]:
1370         Remove.  All uses removed.
1371         * src/lisp.h (__malloc_extra_blocks, malloc_enable_thread): New decls.
1372         * src/ralloc.c, src/vm-limit.c:
1373         Simplify includes and include <malloc.h> if available.
1375 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
1377         * src/alloc.c: Include "sheap.h".
1379         (alloc_unexec_pre, alloc_unexec_post) [HYBRID_MALLOC]:
1380         Set and clear bss_sbrk_did_unexec, on all platforms not just Cygwin.
1381         * src/lisp.h (alloc_unexec_pre, alloc_unexec_post) [!DOUG_LEA_MALLOC]:
1382         Declare unconditionally.
1383         * src/unexcw.c, src/unexelf.c (bss_sbrk_did_unexec): Remove decl.
1384         (unexec): Don’t set or clear bss_sbrk_did_unexec;
1385         the caller now does this.
1386         (Bug#22086)
1388 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
1390         Pacify --enable-gcc-warnings when HYBRID_MALLOC
1392         * src/buffer.c (init_buffer):
1393         * src/emacs.c (main):
1394         * src/xsmfns.c (smc_save_yourself_CB, x_session_initialize):
1395         Use emacs_get_current_dir_name, not get_current_dir_name.
1396         * src/conf_post.h (aligned_alloc) [HYBRID_MALLOC && emacs]: New macro.
1397         (HYBRID_GET_CURRENT_DIR_NAME, get_current_dir_name): Remove.
1398         * src/emacs.c: Include "sheap.h".
1399         (report_sheap_usage): Remove decl.
1400         (Fdump_emacs) [HYBRID_MALLOC]: Report usage directly.
1401         Don't assume ptrdiff_t can be printed as int.
1402         * src/gmalloc.c [HYBRID_MALLOC]:
1403         Include "sheap.h" rather than declaring its contents by hand.
1404         (get_current_dir_name, gget_current_dir_name)
1405         (hybrid_get_current_dir_name): Remove.
1406         (emacs_abort): Remove duplicate decl.
1407         (aligned_alloc): Undef, like malloc etc.
1408         (ALLOCATED_BEFORE_DUMPING): Now a static function, not a macro.
1409         Make it a bit more efficient.
1410         (malloc_find_object_address): Remove unused decl.
1411         (enum mcheck_status, mcheck, mprobe, mtrace, muntrace, struct mstats)
1412         (mstats, memory_warnings): Declare only if GC_MCHECK.
1413         * src/lisp.h (emacs_get_current_dir_name):
1414         New decl, replacing get_current_dir_name.
1415         * src/sheap.c: Include sheap.h first.
1416         (STATIC_HEAP_SIZE): Remove; now in sheap.h.
1417         (debug_sheap): Now static.
1418         (bss_sbrk_buffer_end): Remove; no longer used.
1419         (bss_sbrk_ptr): Now static and private.
1420         (bss_sbrk_did_unexec): Now bool.
1421         (BLOCKSIZE): Remove, to avoid GCC warning about its not being used.
1422         (bss_sbrk): Don't treat request_size 0 as special, since the code
1423         works without this being a special case.
1424         Avoid overflow if request size exceeds INT_MAX.
1425         (report_sheap_usage): Remove; now done in emacs.c.
1426         * src/sheap.h: New file.
1427         * src/sysdep.c (get_current_dir_name): Remove macro.
1428         Include "sheap.h".
1429         (emacs_get_current_dir_name): Rename function from
1430         get_current_dir_name.  Handle HYBRID_MALLOC here;
1431         this is simpler.
1432         (Bug#22086)
1434 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
1436         Report static heap usage on non-Cygwin, too
1438         * src/emacs.c (Fdump_emacs) [HYBRID_MALLOC]: Report sheap usage here ...
1439         * src/unexcw.c (unexec): ... instead of here, since sheap can be used
1440         on platforms other than Cygwin (Bug#22086).
1442 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
1444         Pacify GCC on extern decls
1446         * src/unexelf.c (bss_sbrk_did_unexec): Move decl to top level
1447         to pacify recent GCC (Bug#22086).
1449 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
1451         Add musl patch to support HYBRID_MALLOC on elf systems
1453         * src/gmalloc.c: Adjust for HYBRID_MALLOC in the non CYGWIN case.
1454         (__default_morecore): Here, in particular.
1455         * configure.ac: Define HYBRID_MALLOC when unexelf.o is used.
1456         New variable SHEAP_OBJ.
1457         * src/Makefile.in: Use it.
1458         (Bug#22086)
1460 2016-01-30  Rich Felker  <dalias@libc.org>  (tiny change)
1462         unexelf.c hook to support HYBRID_MALLOC on ELF
1464         * src/unexelf.c (unexec) [HYBRID_MALLOC]:
1465         Define bss_sbrk_did_unexec (Bug#22086).
1467 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
1469         Link temacs with gnulib compiled with -Demacs
1471         This is done to support HYBRID_MALLOC, since some static variables
1472         (e.g., last_environ in putenv.c) hold pointers to memory malloced
1473         before dumping (Bug#22086).
1474         * lib/Makefile.am: Add incantation to install libegnu.a.
1475         * src/Makefile.in ($(lib)/libgnu.a): Replace with libegnu.a
1476         (temacs$(EXEEXT)): Use it.
1478 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
1480         Internal linkage for gmalloc etc. if HYBRID_MALLOC
1482         This avoids clashes with symbols if the after-dump malloc is
1483         derived from Doug Lea's implementation (Bug#22086).
1485         * src/gmalloc.c (emacs_abort, __morecore, __default_morecore):
1486         Move declarations up.  For HYBRID_MALLOC, turn all `extern'
1487         declarations below to `static' ones.
1488         (aligned_alloc): Declare for !MSDOS as well.
1489         (heapsize, _fraghead): Move resp. copy declaration downwards.
1490         For HYBRID_MALLOC, conditionalize out the other definitions,
1491         since the previous `static' declarations double as tentative
1492         definitions, anyway.
1493         (_malloc, _free, _realloc, __free_hook, _aligned_blocks)
1494         (__realloc_hook, __memalign_hook): Conditionalize out.
1495         (cfree, memalign, valloc): Ditto.
1497 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
1499         Merge from origin/emacs-25
1501         3f481ad Rename xref-query-replace to xref-query-replace-in-results
1502         62f4ed4 Update cl-defgeneric and cl-defmethod docstrings
1503         2111e0e Comment out next-error-function integration in xref
1504         4e11ad3 Correct a use of "which" in intro.texi
1505         a1865bc Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
1506         76045f7 Don't operate on menu bar of nonexistent frame
1507         c32f3bc Unbreak the GNUstep build.
1509 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
1511         Re-enable checks in member, memql, delete to complain about non-lists
1513         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
1515 2016-02-04  Martin Rudalics  <rudalics@gmx.at>
1517         Minor doc(-string) tweaks
1519         * lisp/window.el (window-in-direction): Fix doc-string typo.
1520         * doc/lispref/frames.texi (Frame Font): Mention canonical
1521         character width/height.
1522         * doc/lispref/windows.texi (Windows and Frames): Clarify
1523         handling of minibuffer window for `window-in-direction'.
1524         (Window Sizes): Minor tweaks in descriptions of
1525         `window-max-chars-per-line', `window-min-width' and
1526         `window-min-size'.
1527         (Deleting Windows): Minor tweak in `delete-window' description.
1528         (Selecting Windows): Clarify window use time description.
1529         (Cyclic Window Ordering): Minor tweak.
1530         (Switching Buffers): Clarify description of
1531         `switch-to-buffer-in-dedicated-window'.
1533 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
1535         Remove some useless-use-of eval.
1537         * lisp/gnus/gnus.el (gnus-load-hook): Don't use eval.
1538         * lisp/gnus/nnrss.el (xml): Simply require it.
1539         (xml-rpc-method-call): Use declare-function.
1541 2016-01-28  Glenn Morris  <rgm@gnu.org>
1543         Don't use eval to quieten prolog.el compilation.
1545         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
1546         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
1548 2016-01-28  Glenn Morris  <rgm@gnu.org>
1550         Mark some risky prolog variables.
1552         * lisp/progmodes/prolog.el (prolog-system-version)
1553         (prolog-keywords, prolog-types, prolog-mode-specificators)
1554         (prolog-determinism-specificators, prolog-directives)
1555         (prolog-program-name, prolog-program-switches)
1556         (prolog-consult-string, prolog-compile-string)
1557         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
1558         Mark anything processed by prolog-find-value-by-system as risky.
1560 2016-01-28  Glenn Morris  <rgm@gnu.org>
1562         * lisp/custom.el (defcustom): Doc fix.
1564         * doc/lispref/customize.texi (Variable Definitions):
1565         Defcustom should always have a type.
1567 2016-01-28  Glenn Morris  <rgm@gnu.org>
1569         * lisp/emacs-lisp/bytecomp.el (byte-compile-nogroup-warn):
1570         Warn if defcustom has no type.  (Bug#16276)
1572         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
1573         Fix :type.
1575         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
1577 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
1579         Fix Bug#22452
1581         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
1582         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
1583         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
1584         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
1585         Mark it as connected.
1587         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
1588         connection property "connected" is set.  (Bug#22452)
1590 2016-01-27  Glenn Morris  <rgm@gnu.org>
1592         * test/lisp/vc/vc-hg.el: Move from test/automated/.
1594         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
1596         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
1597         if not compiled with xwidgets.
1599 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
1601         C-u C-x = example doc fix
1603         * doc/emacs/mule.texi (International Chars):
1604         Adjust example to match current behavior of C-u C-x =.
1606 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
1608         malloc.h hygiene
1610         This attempts to future-proof Emacs a bit against possible glibc
1611         changes, by having Emacs use <malloc.h> declarations rather than
1612         coding them up by hand.  Problem noted by Florian Weimer in:
1613         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
1614         Implement this mainly by moving malloc.h-related functions from
1615         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
1616         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
1617         New function.
1618         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
1619         (alloc_unexec_pre, alloc_unexec_post): New functions.
1620         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
1621         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
1622         (__malloc_initialize_hook): Use it.
1623         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
1624         Move here from ...
1625         * src/emacs.c: ... here.
1626         (malloc_get_state, malloc_set_state): Remove extern decls.
1627         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
1628         All uses changed to similarly-named new function.
1629         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
1630         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
1631         New decls.
1633 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
1635         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
1637 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
1639         Remove never-set var handle_user_signal_hook
1641         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
1642         Remove never-set var.  All uses removed.
1644 2016-01-26  Anders Lindgren  <andlind@gmail.com>
1646         Fixed NextStep fullscreen issue (bug#22468)
1648         When in fullscreen mode, `[screen visibleFrame]' sometimes
1649         includes, sometimes excludes the menu bar. This could cause
1650         a frame to be placed too low when in fullscreen mode.
1652         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
1653         (constrain_frame_rect): New parameter, isFullscreen, when true don't
1654         query the height of the menu bar.
1655         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
1656         `constrain_frame_rect'.
1657         ([EmacsView initFrameFromEmacs:]): Trace.
1658         ([EmacsView isFullscreen]): Trace.
1659         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
1660         state to `constrain_frame_rect'.
1662 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1664         * lisp/files.el: Use a fixed file name for the second dir-locals file
1666         (dir-locals-file): Revert to its original fixed value.
1667         (dir-locals-file-2): New const.
1668         (dir-locals--all-files): Don't use `file-name-all-completions'.
1669         Instead, just check for the 2 dir-locals files and return a list
1670         of the ones that exit (if any).
1672         * etc/NEWS: Document the change.
1674         * doc/emacs/custom.texi (Directory Variables): Document the change.
1676         * doc/lispref/variables.texi (Directory Local Variables): Update
1677         accordingly.
1679 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1681         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
1683         Change a variable name to be more meaningful, and reorder some of
1684         the code with no change in behaviour.
1686 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1688         * lisp/files.el (dir-locals-find-file): Refactor return values
1690         Returning a cache remains unchanged, but the case of returning a
1691         file (or pattern) is now changed to return the contaning
1692         directory.
1694         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
1695         and make obsolete.
1696         (dir-locals-read-from-dir): Simplify accordingly.
1697         (hack-dir-local-variables): Simplify accordingly and rename a
1698         variable.
1700 2016-01-25  Glenn Morris  <rgm@gnu.org>
1702         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
1703         Declare.
1705         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
1707         * configure.ac (--with-cairo): Say it's experimental.
1709         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
1710         Rename using American spelling.  Update all uses.
1712 2016-01-25  Glenn Morris  <rgm@gnu.org>
1714         Yet more xwidget doc fixes.
1716         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
1717         (xwidget-insert, xwidget-webkit-browse-url)
1718         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
1719         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
1720         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
1721         (xwidget-webkit-show-id-element)
1722         (xwidget-webkit-show-id-or-named-element)
1723         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
1724         (xwidget-webkit-execute-script-rv)
1725         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
1726         (xwidget-put):  Doc fixes.
1727         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
1728         (xwidget-webkit-show-id-element)
1729         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
1731 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
1733         * lisp/gnus/gnus-art.el (gnus-blocked-images):
1734         Add explicit nil choice and tags.
1736 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
1738         Spelling fixes
1740 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
1742         (rng-c-fix-escaped-newlines): Use subst-char-in-string
1744         * lisp/nxml/rng-cmpct.el (rng-c-fix-escaped-newlines):
1745         Use subst-char-in-string.
1747 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
1749         * lisp/textmodes/sgml-mode.el (sgml-forward-sexp): New function
1751         (sgml-cursor-sensor, sgml-pretty-print, sgml-parse-tag-backward)
1752         (sgml-calculate-indent): Use it.
1754 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
1756         * lisp/org: Fix some compiler warnings
1758         * lisp/org/ob-core.el (org-babel-check-confirm-evaluate)
1759         (org-babel-map-src-blocks): Don't emit warnings if added vars are not used.
1760         (*this*): Declare as dyn-bound.
1761         (org-babel-expand-src-block, org-babel-load-in-session)
1762         (org-babel-switch-to-session-with-code, org-babel-get-rownames):
1763         Mark unused args.
1764         (org-babel-combine-header-arg-lists): Remove unused var `args'.
1765         (org-babel-find-named-block): Remove unused var `msg'.
1767         * lisp/org/org-src.el (org-inhibit-startup, org-src-fontify-natively):
1768         Declare as dyn-bound.
1769         (org-edit-src-code): Remove unused var `lfmt'.
1770         (org-edit-fixed-width-region): Remove unused var `preserve-indentation'.
1772 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
1774         * lisp/font-lock.el: Use #' to quote function symbols
1776 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
1778         (font-lock-ensure-function): Fix bug#22399
1780         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
1781         font-lock-mode is not enabled (bug#22399).
1783 2016-01-25  Alan Mackenzie  <acm@muc.de>
1785         Expunge "allow" + infinitive from source and doc, part 2.
1787         Do the same for "permit", "enable", "prevent", and (where appropriate)
1788         "require".
1790         doc/misc/reftex.texi:
1791         doc/misc/url.texi:
1792         lib/get-permissions.c:
1793         lib/strftime.c:
1794         lisp/org/org-element.el:
1795         lisp/org/org-mobile.el:
1796         lisp/textmodes/reftex-vars.el:
1797         src/bidi.c:
1798         src/emacs.c:
1799         src/xdisp.c:
1800         test/etags/c-src/emacs/src/lisp.h:
1802         Expunge the likes of "This allows to do something" from the above files.
1804 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1806         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
1808         `special-mode' is already read-only.
1810 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1812         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
1814 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
1816         Port "$@" to OpenIndiana ksh93
1818         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
1819         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
1820         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
1821         bug in long-dead shells, so remove the workaround.
1822         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
1823         Use plain "$@" rather than ${1+"$@"}.
1825 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
1827         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
1829 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
1831         Improve wording for SMB support
1833         * doc/misc/tramp.texi (External methods): Improve and modernize
1834         wording for discussion of smbclient.  There is no longer any
1835         need to mention the laundry list of old MS Windows implementations
1836         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
1838 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
1840         Merge from gnulib
1842         This incorporates:
1843         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
1844         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
1845         2016-01-15 detect utimes() correctly on OS/2 kLIBC
1846         2016-01-15 openat_proc_name: port to OS/2 kLIBC
1847         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
1848         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
1849         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
1850         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
1851         2016-01-14 sig2str: list all signals on FreeBSD >= 7
1852         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
1853         2016-01-12 mktime: rename macro to avoid glibc clash
1854         2016-01-12 Port "$@" to OpenIndiana ksh93
1855         2016-01-12 Port Universal Time settings to strict POSIX
1856         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
1857         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
1858         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
1859         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
1860         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
1861         * m4/fcntl.m4, m4/utimes.m4:
1862         Copy from gnulib.
1863         * m4/gnulib-comp.m4: Regenerate.
1865 2016-01-24  Alan Mackenzie  <acm@muc.de>
1867         Expunge "allow" + infinitive without direct object from source and doc.
1869         Do the same for "permit", "enable", and "prevent".
1871         * doc/emacs/mule.texi:
1872         * doc/lispref/control.texi:
1873         * doc/lispref/display.texi:
1874         * doc/lispref/frames.texi:
1875         * doc/lispref/functions.texi:
1876         * doc/lispref/nonascii.texi:
1877         * doc/lispref/streams.texi:
1878         * doc/lispref/windows.texi:
1879         * doc/misc/dbus.texi:
1880         * doc/misc/eww.texi:
1881         * doc/misc/flymake.texi:
1882         * doc/misc/octave-mode.texi:
1883         * doc/misc/org.texi:
1884         * doc/misc/reftex.texi:
1885         * doc/misc/tramp.texi:
1886         * doc/misc/wisent.texi:
1887         * etc/NEWS:
1888         * lisp/autorevert.el:
1889         * lisp/cedet/mode-local.el:
1890         * lisp/cedet/semantic/senator.el:
1891         * lisp/cedet/semantic/wisent.el:
1892         * lisp/dos-fns.el:
1893         * lisp/frameset.el:
1894         * lisp/gnus/gnus-agent.el:
1895         * lisp/gnus/mm-util.el:
1896         * lisp/international/characters.el:
1897         * lisp/ldefs-boot.el:
1898         * lisp/mail/mailclient.el:
1899         * lisp/man.el:
1900         * lisp/mh-e/mh-search.el:
1901         * lisp/net/tramp-cmds.el:
1902         * lisp/net/tramp-gvfs.el:
1903         * lisp/org/org-crypt.el:
1904         * lisp/org/org-element.el:
1905         * lisp/org/org-feed.el:
1906         * lisp/org/org.el:
1907         * lisp/org/ox-ascii.el:
1908         * lisp/org/ox-icalendar.el:
1909         * lisp/org/ox-publish.el:
1910         * lisp/org/ox.el:
1911         * lisp/play/gamegrid.el:
1912         * lisp/play/gomoku.el:
1913         * lisp/progmodes/antlr-mode.el:
1914         * lisp/progmodes/python.el:
1915         * lisp/progmodes/vhdl-mode.el:
1916         * lisp/strokes.el:
1917         * lisp/textmodes/ispell.el:
1918         * lisp/tree-widget.el:
1919         * lisp/vc/pcvs.el:
1920         * lisp/window.el:
1921         * src/lisp.h:
1922         * src/w32.c:
1923         * src/w32heap.c:
1924         * src/w32term.c:
1925         * src/window.c:
1926         * src/xfaces.c:
1928         Replace solecisms like "This allow to do something" with a correct
1929         alternative, such as "This allow you to do something", "This allows
1930         something to be done" or "This allows the doing of something".
1932 2016-01-24  l3thal  <kwhite@gnu.org>
1934         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
1936 2016-01-24  Kelvin White  <kwhite@gnu.org>
1938         Add NEWS entry for asynchronous reconnect in ERC
1940 2016-01-24  l3thal  <kwhite@gnu.org>
1942         Add NEWS entry for asynchronous reconnect in ERC
1944 2016-01-24  Kelvin White  <kwhite@gnu.org>
1946         browse-url.el: Add 'google-chrome' to supported browsers.
1948 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
1950         Port Tramp manual to latest Texinfo
1952         Otherwise, 'make pdf' did not work (Bug#22416).
1953         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
1954         (trampfn): Specialize to the case where METHOD is nonempty.
1955         The 2nd argument is now user@host, not 2nd user and 3rd host args.
1956         All uses changed.
1957         (trampf): New macro.
1959 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
1961         * eww.el (eww-render): Protect against empty content-types.
1963 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
1965         authors.el updates
1967         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
1968           Additions.
1970 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
1972         Rename xref-query-replace to xref-query-replace-in-results
1974         * lisp/progmodes/xref.el(xref-query-replace):
1975         Rename to xref-query-replace-in-results.
1976         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
1978         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
1979         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
1980         * doc/emacs/dired.texi (Operating on Files):
1981         * doc/emacs/maintaining.texi (Xref Commands)
1982         (Identifier Search, Identifier Search): Update accordingly.
1984 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
1986         Update cl-defgeneric and cl-defmethod docstrings
1988         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
1989         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
1990         (cl-defmethod): Mention that multiple dispatch arguments are
1991         allowed.  Document supported types.  (Bug#22336)
1993 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
1995         Comment out next-error-function integration in xref
1997         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
1998         Comment out next-error-function integration
1999         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
2001 2016-01-23  John Wiegley  <johnw@newartisans.com>
2003         Correct a use of "which" in intro.texi
2005 2016-01-23  Alan Mackenzie  <acm@muc.de>
2007         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
2009         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
2010         context of case labels (including "default") more rigorously.
2011         (c-guess-basic-syntax CASE 15): Consequential amendment.
2013         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
2015 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
2017         Don't operate on menu bar of nonexistent frame
2019         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
2020         is valid before redisplaying its menu. Fixes bug#22438.
2022 2016-01-23  Anders Lindgren  <andlind@gmail.com>
2024         Unbreak the GNUstep build.
2026         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
2027         predefined "caution" image. Add trace.
2028         (x_set_window_size): Remove unused variables `cols' and `rows'.
2029         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
2030         GNUstep is used.
2031         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
2032         ([EmacsWindow zoom:]): Remove unused variable `f'.
2034 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
2035             John Wiegley  <johnw@gnu.org>
2036             Michael Heerdegen  <michael_heerdegen@web.de>
2038         Improve documentation of 'pcase'
2040         * doc/lispref/control.texi (Pattern matching case statement):
2041         Reorganize, expand, and improve wording.
2043         * etc/NEWS: Mention that 'pcase' changes are documented.
2045 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
2047         * etc/NEWS: Say that Cairo is experimental.
2049 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
2051         Report error for PNG under Cairo
2053         * src/image.c (lookup_rgb_color): Signal a file error instead
2054         of dumping core when mishandling an image.
2056 2016-01-23  Arash Esbati  <esbati@gmx.de>
2058         Delete a spurious backquote (tiny change)
2060         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
2061         spurious backquote which raises an error with emacs 25.
2063 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
2065         Pacify --enable-gcc-warnings --with-cairo
2067         Problem reported by Alexander Kuleshov in:
2068         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
2069         * src/gtkutil.c (xg_get_page_setup):
2070         Use switch rather than if-then-else.
2071         * src/image.c (COLOR_TABLE_SUPPORT):
2072         Define directly rather than via #define and optional later #undef.
2073         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
2074         Crash when the pixel is undefined, as there is a genuine bug
2075         here (Bug#22442).
2076         * src/image.c (tiff_load, gif_load, svg_load_image)
2077         (x_kill_gs_process) [USE_CAIRO]:
2078         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
2079         Omit unused locals, or move them to where they’re needed.
2080         (x_clear_area1): Now ATTRIBUTE_UNUSED.
2082 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
2084         Update documentation for Dired search and replace
2086         * doc/emacs/dired.texi (Operating on Files): Update descriptions
2087         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
2088         'dired-do-find-regexp-and-replace'.
2090         * etc/NEWS: Mention xref-related changes in Dired.
2092 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
2094         Port recent xdisp.c fix to picky C compilers
2096         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
2097         putting #if inside the arguments to a standard function, which
2098         the C standard says has undefined behavior.
2100 2016-01-22  Alan Mackenzie  <acm@muc.de>
2102         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
2104         * cc-engine.el (c-forward-declarator): New function.
2105         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
2106         contained in the preceding arg list.
2108         * cc-fonts.el (c-font-lock-declarators): Use the new function
2109         `c-forward-declarator' in place of inline code.
2111 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
2113         Fix the build with --enable-checking=glyphs
2115         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
2116         build without xwidget support.
2118 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
2120         Document cl-generic.el
2122         * doc/lispref/functions.texi (Generic Functions): New section.
2123         (Bug#22336)
2124         (Functions): Update the chapter menu.
2125         * doc/lispref/elisp.texi: Update the master menu.
2127 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
2129         xwidgets style cleanup
2131         Adjust the newly-added Xwidgets code so that it uses a more-typical
2132         Emacs style.  This should not affect behavior, except that in
2133         a few places it adds runtime checks that Lisp arguments are of
2134         the proper type, and in one place it uses more-precise arithmetic.
2135         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
2136         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
2137         Include xwidget.h unconditionally.
2138         * src/buffer.c (Fkill_buffer):
2139         * src/dispnew.c (update_window):
2140         * src/emacs.c (main):
2141         * src/print.c (print_object):
2142         * src/window.c (Fdelete_window_internal):
2143         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
2144         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
2145         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
2146         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
2147         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
2148         Call xwidget functions and macros without worrying about
2149         HAVE_XWIDGETS when the code is a no-op on non-xwidget
2150         platforms.
2151         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
2152         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
2153         (struct it.xwidget):
2154         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
2155         Always define.
2156         * src/emacsgtkfixed.h: Omit unnecessary comment.
2157         * src/keyboard.c: Fix spacing.
2158         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
2159         Define to be a no-op if not HAVE_XWIDGETS.
2160         * src/xwidget.c: Include xwidget.h first (after config.h)
2161         to make sure that it can stand by itself.
2162         (Fmake_xwidget, Fxwidget_webkit_execute_script):
2163         Fix typo in doc string.
2164         (Fmake_xwidget): Check type of args.
2165         (Fmake_xwidget, offscreen_damage_event)
2166         (webkit_document_load_finished_cb, webkit_download_cb)
2167         (webkit_new_window_policy_decision_requested_cb)
2168         (webkit_navigation_policy_decision_requested_cb)
2169         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
2170         (xwidget_osr_event_set_embedder, xwidget_init_view):
2171         Omit unnecessary casts.
2172         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
2173         (xwidget_show_view, xwidget_hide_view)
2174         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
2175         (xwidget_touched):
2176         * src/xwidget.h (struct xwidget.kill_without_query)
2177         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
2178         Use bool for boolean.
2179         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
2180         Simplify by using list functions.
2181         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
2182         (Fxwidget_resize): Check type of integer args
2183         before doing any work.  Check that they are nonnegative.
2184         (Fxwidget_set_adjustment): Check type of integer arg.
2185         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
2186         Simplify.  Use double, not float.
2187         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
2188         (valid_xwidget_spec_p): Simplify.
2189         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
2190         * src/xwidget.h: Include lisp.h first, so that includers do
2191         not need to worry about doing that before including this file.
2192         Make this .h file safe to include even on non-HAVE_XWIDGETS
2193         configurations, to simplify the includers.
2194         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
2195         (xwidget_end_redisplay, lookup_xwidget)
2196         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
2197         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
2198         (struct glyph_matrix, struct glyph_string, struct xwidget)
2199         (struct xwidget_view, struct window):
2200         New forward or incomplete decls, so that includers need not
2201         assume the corresponding .h files are already included, or that
2202         HAVE_XWIDGETS is defined.
2203         (struct xwidget_type, xwidget_from_id): Remove; unused.
2205 2016-01-22  John Wiegley  <johnw@newartisans.com>
2207         Further corrections to the pcase docstring
2209 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
2211         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
2213 2016-01-21  Stephen Leake  <stephen_leake@stephe-leake.org>
2215         In xref-collect-references, force backends to respect the 'dir' arg
2217         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
2218         to use `default-directory'.
2220 2016-01-21  John Wiegley  <johnw@newartisans.com>
2222         Minor correction to pcase docstring
2224 2016-01-21  John Wiegley  <johnw@newartisans.com>
2226         Write a new docstring for the pcase macro
2228         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
2230 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
2232         Avoid byte-compiler warning in todo-mode (bug#21953)
2234         * todo-mode.el (todo-convert-legacy-files): Add limit argument
2235         to looking-back to comply with advertised-calling-convention.
2237 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
2239         Fix desktop support in todo-mode and doc-view (bug#22377)
2241         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
2242         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
2244         * lisp/calendar/todo-mode.el (todo-modes-set-2):
2245         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
2247 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
2249         No need to configure gobject-introspection
2251         It wasn’t needed for the recently-installed xwidget_mvp code; see:
2252         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
2253         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
2254         (HAVE_GIR):
2255         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
2256         Remove.  All uses removed.
2257         * configure.ac (emacs_config_features): Don’t worry about GIR.
2259 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
2261         Don’t export C symbols not used elsewhere
2263         These were recently added, mostly as part of xwidget code.
2264         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
2265         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
2266         Now static functions here, not macros in emacsgtkfixed.h.
2267         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
2268         Remove.  All uses replaced by definiens.
2269         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
2270         Remove; these are now static functions in emacsgtkfixed.c.
2271         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
2272         Remove; unused.
2273         (emacs_fixed_get_type): Remove decl; no longer extern.
2274         * src/xwidget.c (offscreen_damage_event)
2275         (webkit_mime_type_policy_typedecision_requested_cb)
2276         (webkit_new_window_policy_decision_requested_cb)
2277         (webkit_navigation_policy_decision_requested_cb)
2278         (xwidget_spec_value, xwidget_view_lookup)
2279         (xwidget_start_redisplay, xwidget_touch):
2280         Now static.
2281         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
2282         Remove decls.
2284 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
2286         Support squiggly heredocs in ruby-mode
2288         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
2289         Support squiggly heredocs added in Ruby 2.3.
2291         * test/indent/ruby.rb: Add squiggly example.
2293 2016-01-20  Glenn Morris  <rgm@gnu.org>
2295         * configure.ac (emacs_config_features): Remove WEBKIT.
2297 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
2299         Port to platforms with gtk3 but not webkitgtk3
2301         I ran into this problem on my Fedora 23 installation;
2302         Emacs configured but did not build when --with-xwidgets was specified.
2303         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
2304         (DOES_XWIDGETS_USE_GIR): New var.
2305         If --with-xwidgets is specified, report an error if not
2306         doable, to be consistent with the other --with options.
2307         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
2308         not work at all without webkitgtk3.  Simplify use of
2309         EMACS_CHECK_MODULES.  Output message about gobject
2310         introspection only if xwidgets are used.
2311         * etc/NEWS: Users need webkitgtk3, not merely webkit.
2312         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
2313         since this file is no longer compiled if webkitgtk3 is not available.
2315 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
2317         Fix doc string of 'isearch-search-fun-function'
2319         * lisp/isearch.el (isearch-search-fun-function)
2320         (isearch-search-string): Doc fixes.  (Bug#22411)
2322 2016-01-19  Stefan Monnier  <monnier@iro.umontreal.ca>
2324         * lisp/xwidget.el: Nitpicks
2326         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
2327         Use with-current-buffer rather than save-excursion + set-buffer.
2329 2016-01-19  Glenn Morris  <rgm@gnu.org>
2331         Don't hard-code 1 as point-min.
2333         * lisp/image-mode.el (image-display-size):
2334         * lisp/xwidget.el (xwidget-webkit-last-session)
2335         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
2337 2016-01-19  Glenn Morris  <rgm@gnu.org>
2339         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
2341 2016-01-19  Glenn Morris  <rgm@gnu.org>
2343         Trivial doc copyedits.
2345         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
2346         (Fxwidget_webkit_get_title, Fxwidget_resize)
2347         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
2348         (Fxwidget_info, Fxwidget_view_lookup)
2349         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
2351 2016-01-19  Glenn Morris  <rgm@gnu.org>
2353         Avoid advising image-display-size for xwidgets.
2355         * lisp/xwidget.el (xwidget-image-display-size): Remove.
2356         (image-display-size): Remove advice.
2357         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
2358         (image-display-size): Incorporate xwidget code directly.
2360 2016-01-19  Glenn Morris  <rgm@gnu.org>
2362         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
2364         * lisp/xwidget.el (window-configuration-change-hook)
2365         (kill-buffer-query-functions): Only modify these hooks if
2366         compiled with xwidget support.
2368 2016-01-19  Glenn Morris  <rgm@gnu.org>
2370         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
2372         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
2374         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
2376         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
2378 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
2380         * lisp/gnus/nnir.el (nnir-request-update-mark):
2381         Default to the original mark.
2382         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
2383         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
2385 2016-01-19  Glenn Morris  <rgm@gnu.org>
2387         * lisp/xwidget.el (report-xwidget-bug): Remove.
2389         (top-level): No longer require reporter.
2391 2016-01-19  Joakim Verona  <joakim@verona.se>
2392             Grégoire Jadi  <daimrod@gmail.com>
2394         Support for the new Xwidget feature.
2396         * configure.ac:
2397         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
2398         * xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
2399         * xdisp.c:
2400         (handle_display_spec, handle_single_display_spec, push_it)
2401         (pop_it, set_iterator_to_next, dump_glyph)
2402         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
2403         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
2404         (produce_xwidget_glyph, x_produce_glyphs)
2405         (get_window_cursor_type):
2406         * window.c (Fdelete_window_internal):
2407         * termhooks.h (e):
2408         * print.c (print_object):
2409         * lisp.h (ptrdiff_t):
2410         * keyboard.c (kbd_buffer_get_event, make_lispy_event)
2411         (syms_of_keyboard):
2412         * emacs.c (main):
2413         * dispnew.c (update_window, scrolling_window):
2414         * dispextern.h (g, i):
2415         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
2416         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
2417         * keyboard.c (kbd_buffer_get_event):
2418         * emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
2419         (emacs_fixed_class_init): Add case for an xwidget view.
2421         * xwidget.c, xwidget.h, xwidget.el: New files for xwidgets
2424         Various improvements to the Xwidget feature.
2425         * xwidgets.c:
2426         * emacsgtkfixed.c:
2427         * xwidget.el:
2429 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
2431         Improve documentation of 'alist-get'
2433         * doc/lispref/variables.texi (Setting Generalized Variables): Add
2434         'alist-get' to the list of functions that can appear in PLACE
2435         argument of 'setf'.
2437 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
2439         Minor copyedits of doc/emacs/maintaining.texi
2441         * doc/emacs/maintaining.texi (List Identifiers): More accurate
2442         description of "C-M-i" wrt tags tables.
2443         (Tags Tables): Move the definition of "tag" to a footnote.
2445 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
2447         Unbreak the Cygwin-w32 build
2449         * src/w32fns.c (globals_of_w32fns): Move the initialization of
2450         resetstkoflw into a part that isn't compiled on Cygwin.
2451         (Bug#22403)
2453 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
2455         * shr.el (shr-table-body): Allow tables to have text children.
2457 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
2459         Cope with multiple overlapping faces.
2461         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
2462           left.
2463           (hfy-face-resolve-face): Handle font specification as well as font
2464           name. Documentation update. (Bug#21990)
2466 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
2468         Fix spurious escapes in describe-input-method
2470         Problem reported by Vincent Belaïche (Bug#22309).
2471         * lisp/international/mule-cmds.el (describe-language-environment):
2472         * lisp/international/quail.el (quail-help):
2473         Apply substitute-command-keys to doc strings before displaying them.
2475 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
2477         Bump version to 25.0.90
2479         * README:
2480         * configure.ac:
2481         * msdos/sed2v2.inp: Bump version to 25.0.90.
2483 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
2485         * etc/AUTHORS: Update the AUTHORS file
2487 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
2489         authors.el updates
2491         * admin/authors.el (authors-renamed-files-alist): Additions.
2493 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
2495         Make it possible to run make change-history on emacs-25
2497         * Makefile.in: Check if the current branch is emacs-25 instead of
2498           master.
2500 2016-01-30  lu4nx  <lx@shellcodes.org>
2502         Support Go language in 'etags'
2504         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
2505         <Go_help>: New help.
2506         <Go_suffixes>: New variable.
2507         (Go_functions): New function.
2508         <lang_names>: Add entry for Go.  (Bug#22370)
2510         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
2511         * doc/man/etags.1: Mention Go support.
2513         * etc/NEWS: Mention Go support.
2515         * test/etags/go-src/test.go:
2516         * test/etags/go-src/test1.go: New test files.
2517         * test/etags/Makefile (GOSRC): New variable.
2518         (SRCS): Add $(GOSRC).
2519         * test/etags/ETAGS.good_1:
2520         * test/etags/ETAGS.good_2:
2521         * test/etags/ETAGS.good_3:
2522         * test/etags/ETAGS.good_4:
2523         * test/etags/ETAGS.good_5:
2524         * test/etags/ETAGS.good_6:
2525         * test/etags/CTAGS.good: Adapt to addition of Go tests.
2527 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
2529         Improve Ruby support in 'etags'
2531         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
2532         singleton classes.  Remove class qualifiers from tags generated
2533         for method and constant names.  (Bug#22241)
2535         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
2536         are tagged by etags in Ruby.
2538         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
2540         * test/etags/ruby-src/test1.ruby: Add more tests.
2541         * test/etags/ETAGS.good_1:
2542         * test/etags/ETAGS.good_2:
2543         * test/etags/ETAGS.good_3:
2544         * test/etags/ETAGS.good_4:
2545         * test/etags/ETAGS.good_5:
2546         * test/etags/ETAGS.good_6:
2547         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
2548         tests.
2550 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
2552         Adjust etags test results to changes in copyright years
2554         * test/etags/CTAGS.good:
2555         * test/etags/ETAGS.good_1:
2556         * test/etags/ETAGS.good_2:
2557         * test/etags/ETAGS.good_3:
2558         * test/etags/ETAGS.good_4:
2559         * test/etags/ETAGS.good_5:
2560         * test/etags/ETAGS.good_6: Adjust to shift in characters and
2561         in line numbers.
2563 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
2565         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
2567         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
2569 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
2571         Make it possible to run make change-history on emacs-25
2573         * Makefile.in: Check if the current branch is emacs-25 instead of
2574           master.
2576 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
2578         Don't fiddle with DEFAULT
2580         * lisp/progmodes/project.el (project--completing-read-strict):
2581         Don't change DEFAULT, whether is has any matches in
2582         COLLECTION, or not.
2584 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
2586         Document xwidget commands and functions
2588         * doc/lispref/display.texi (Xwidgets): New section, describes some
2589         of the xwidget primitives.
2590         * doc/lispref/display.texi (Display): Update the chapter menu.
2591         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
2592         * doc/emacs/emacs.texi (Top): Update the master menu to include
2593         the xwidget node.
2595 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
2597         Build fix for shr.el
2599         * shr.el (seq): Require.
2601 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
2603         Improve project-find-file yet again!
2605         * lisp/progmodes/project.el (project--completing-read-strict):
2606         New function.
2607         (project-find-file-in): Use it.
2608         (project-file-completion-table): Move the default
2609         implementation inside the cl-defgeneric form.
2610         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
2612 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
2614         Don't pass DIR to 'hg status'
2616         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
2617         Don't pass DIR to 'hg status' (bug#22481).
2619 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
2621         Fix typo in previous commits
2623         * lisp/progmodes/project.el (project-find-file-in):
2624         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
2625         commit.
2627 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
2629         Improve project-find-file
2631         * lisp/progmodes/project.el (project-file-completion-table): New.
2632         (project-find-file, project-or-external-find-file): Default to filename
2633         at point.
2634         (project-file-completion-table): New, split out from
2635         project--find-file-in.
2636         (project-find-file-in): Renamed from project--find-file-in, use
2637         project-file-completion-table.
2639         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
2640         (xref--find-ignores-arguments): Add doc string.
2642 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
2644         Implement vc-mtn-find-ignore-file, fix some doc strings
2646         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
2648         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
2650         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
2652         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
2654 2016-01-23  Michael Albinus  <michael.albinus@gmx.de>
2656         Improve user name completion in Tramp
2658         * lisp/net/tramp.el (tramp-parse-passwd, tramp-parse-etc-group):
2659         Call also "getent passwd" or "getent group", if possible.
2660         (tramp-parse-putty): Cache the result.
2662 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
2664         * etc/NEWS: Move kqueue entries to Emacs 25.1 sections.
2666 2016-01-20  Glenn Morris  <rgm@gnu.org>
2668         Remove handling of non-string time-stamp formats, obsolete for 20 years.
2670         * lisp/time-stamp.el (time-stamp-format): Doc fix.
2671         (time-stamp-old-format-warn, time-stamp-fconcat): Remove.
2672         (time-stamp-string): Ignore non-string formats.
2674 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
2676         Anoter fix for problematic merge from emacs-25
2678         * src/w32fns.c (globals_of_w32fns): Move initialization of
2679         resetstkoflw to a non-Cygwin part.
2681 2016-01-20  Michael Albinus  <michael.albinus@gmx.de>
2683         * test/Makefile.in (mostlyclean): Use ${LOGFILES}.
2685 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
2687         Fix MS-Windows build broken by a botched merge from emacs-25
2689         * src/w32.c (w32_crypto_hprov): New static variable.
2690         (globals_of_w32): Initialize w32_crypto_hprov.
2691         (w32_init_crypt_random, w32_init_random): New functions.
2692         Include wincrypt.h.
2693         * src/w32.h (w32_init_random): Add prototype.
2695 2016-01-20  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2697         Correct a whole bunch of bugs coming with renamed cell relocation.
2699         * lisp/ses.el (ses-localvars): rename variable
2700         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
2701         and adjust the comment about it.
2702         (ses-plist-delq): new defun.
2703         (ses--ses-buffer-list): new defvar.
2704         (ses--unbind-cell-name): new defun.
2705         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
2706         (ses-relocate-formula): Undo change of
2707         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
2708         preventing relocation for named cell --- now doing this is delegated
2709         to function `ses-relocate-symbol'.
2710         (ses-relocate-range): In docstring, undo change of
2711         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
2712         lower case as it is not a variable.
2713         (ses-relocate-all): Cell name relocation : 1) check that cell is a
2714         renamed cell by testing `ses-cell' property to :ses-named, rather than
2715         comparing name to corresponding standard name. Set rowcol of renamed
2716         cell into the hashmap --- `ses-cell' property must not be used for
2717         that as the same name can be used for different locations in different
2718         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
2719         `local-variable-p' to check if cell name is already in use in this
2720         sheet or needs initialisation.
2721         (ses-relocate-all): Cell value relocation : 1) like for name
2722         relocation use the `ses-cell' property rather than comparing actual
2723         name to corresponding standard name. 2) Correct bug introduced in
2724         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
2725         made the other way round than the intention --- ie value relocation
2726         was disabled for standard cell, not for renamed cell as was the
2727         intention.
2728         (ses-relocate-all): Add loop for unbinding deleted renamed cells
2729         names.
2730         (ses-killbuffer-hook): new defun.
2731         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
2732         kill buffer hook, plus pushing current buffer if new in list.
2733         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
2734         into `ses--in-killing-named-cell-list'.
2735         (ses-rename-cell): Remove update of variable
2736         `ses--renamed-cell-symb-list', this variable is renamed to
2737         `ses--in-killing-named-cell-list', and its setting is done in
2738         functions `ses-delete-row' and , `ses-delete-column' now.
2739         (ses-rename-cell): Make cell new name a buffer local variable.
2740         (ses-rename-cell): Change correction of
2741         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
2742         computation of the range over which `cursor-intangible' property was
2743         to be updated. This correction was ok for non spilling cells, but not
2744         for cells spilling over following blank cells. Simply use
2745         `next-single-property-change' rather than computing the end column
2746         from column widths.
2748 2016-01-19  John Wiegley  <johnw@newartisans.com>
2750         Merge from origin/emacs-25
2752         3ae7934 ; * etc/NEWS: Mark entries that don't need further treatment.
2753         6165c36 * lisp/files.el (dir-locals--all-files): Respect absolute file-names
2754         2ffdf15 * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
2755         71ecd62 * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
2756         f0b82b3 * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
2757         86e4513 Fix incompatbilities with MS-Windows 2000 and older
2758         4e96521 Mention in PROBLEMS an issue with MS-Windows NT4
2759         15c23aa Ensure 8-byte aligned memory allocation on MS-Windows 9X
2760         39afa42 Fix tests for active region in hideif.el
2761         05df666 Fix interactive specs in some hideif.el commands
2763 2016-01-19  John Wiegley  <johnw@newartisans.com>
2765         -
2767 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
2769         Avoid stdio in SIGINT handler
2771         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
2772         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
2773         * lib/ignore-value.h: New file, from gnulib.
2774         * src/keyboard.c: Include it.
2775         (write_stdout, read_stdin): New functions.
2776         (handle_interrupt): Use them instead of printf and getchar,
2777         and avoid fflush when handling signals.
2779 2016-01-19  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
2781         Refactor mml-smime.el, mml1991.el, mml2015.el
2783         (Maybe this is the last merge from Gnus git to Emacs git)
2785         Cf. discussion on ding mailing list, messages in
2786         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
2787         Common code from the three files mml-smime.el, mml1991.el, and
2788         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
2789         to gnus-util.el.
2791         The code is supported by test cases with necessary test keys.
2793         Documentation in message.texi is updated.
2795         * doc/misc/message.texi (Security, Using S/MIME):
2796         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
2797         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
2798         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
2800         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
2801         New functions.
2803         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
2804         (epa--select-keys): Autoload.
2805         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
2806         (mml-secure-openpgp-signers): New user option;
2807         make mml1991-signers and mml2015-signers obsolete aliases to it.
2808         (mml-secure-smime-signers): New user option;
2809         make mml-smime-signers an obsolete alias to it.
2810         (mml-secure-openpgp-encrypt-to-self): New user option;
2811         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
2812         aliases to it.
2813         (mml-secure-smime-encrypt-to-self): New user option;
2814         make mml-smime-encrypt-to-self an obsolete alias to it.
2815         (mml-secure-openpgp-sign-with-sender): New user option;
2816         make mml2015-sign-with-sender an obsolete alias to it.
2817         (mml-secure-smime-sign-with-sender): New user option;
2818         make mml-smime-sign-with-sender an obsolete alias to it.
2819         (mml-secure-openpgp-always-trust): New user option;
2820         make mml2015-always-trust an obsolete alias to it.
2821         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
2822         New user options.
2823         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
2824         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
2825         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
2826         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
2827         (mml-secure-passphrase-callback, mml-secure-check-user-id)
2828         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
2829         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
2830         (mml-secure-fingerprint, mml-secure-filter-keys)
2831         (mml-secure-normalize-cust-name, mml-secure-select-keys)
2832         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
2833         (mml-secure-self-recipients, mml-secure-recipients)
2834         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
2836         * lisp/gnus/mml-smime.el: Require epg;
2837         refactor declaration and autoloading of epg functions.
2838         (mml-smime-use): Doc fix.
2839         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
2840         Obsolete.
2841         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
2842         Use format instead of gnus-format-message.
2843         (mml-smime-epg-secret-key-id-list): Remove variable.
2844         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
2845         (mml-smime-epg-find-usable-secret-key): Remove functions.
2846         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
2848         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
2849         (mml1991-passphrase-cache-expiry): Obsolete.
2850         (mml1991-epg-secret-key-id-list): Remove variable.
2851         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
2852         (mml1991-epg-find-usable-secret-key): Remove functions.
2853         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
2855         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
2856         (mml2015-passphrase-cache-expiry): Obsolete.
2857         (mml2015-epg-secret-key-id-list): Remove variable.
2858         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
2859         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
2860         (mml2015-epg-find-usable-secret-key): Remove functions.
2861         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
2862         (mml2015-epg-encrypt): Refactor.
2864 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
2866         Merge from gnulib
2868         This mostly just updates copyright dates of gnulib files.
2869         It also updates to the latest version of texinfo.tex.
2871 2016-01-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2873         Move variables to inner loop, preparing for Mac port merge
2875         * src/keyboard.c (command_loop_1): Move variables `cmd',
2876         `keybuf', and `i' to inner loop.
2878 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
2880         Minor improvements to (random t) documentation
2882         * doc/lispref/numbers.texi (Random Numbers):
2883         * src/fns.c (Frandom):
2884         Omit unnecessary details about randomness fallback.
2885         Say that it is a fallback.
2887 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
2889         Rename methods in Ruby etags example file
2891         * test/etags/ruby-src/test.rb: Rename the example methods to
2892         correspond to the common terminology used in Ruby.
2893         * test/etags/CTAGS.good:
2894         * test/etags/ETAGS.good_1:
2895         * test/etags/ETAGS.good_2:
2896         * test/etags/ETAGS.good_3:
2897         * test/etags/ETAGS.good_4:
2898         * test/etags/ETAGS.good_5:
2899         * test/etags/ETAGS.good_6: Adjust accordingly.
2901 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
2903         Propertize backtick in 'def `(abc)' as symbol constituent
2905         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
2906         Propertize backtick in 'def `(abc)' as symbol constituent.
2907         (ruby-syntax-propertize-function):
2908         Rename to ruby-syntax-propertize.
2910 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
2912         Fix scrolling under scroll-preserve-screen-position on TTY
2914         * src/window.c (window_scroll_line_based): When setting point to
2915         preserve screen coordinates, don't let cursor enter either of the
2916         two scroll margins.  (Bug#22395)
2918 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
2920         Fix shr table rendering of nested tables
2922         * shr.el (shr-table-body): Don't include all tbodies in nested
2923         tables in the levels above.
2925 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
2927         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
2929 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
2931         Add xref-based replacements for Dired search commands
2933         * lisp/dired-aux.el (dired-do-find-regexp)
2934         (dired-do-find-regexp-and-replace): New commands.
2935         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
2937         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
2938         `Q' to the new commands.
2940         * lisp/progmodes/xref.el (xref-query-replace)
2941         (xref-collect-matches): Add progress reporters.
2942         (xref--find-ignores-arguments): Return nil for zero ignores.
2943         (xref--show-xrefs): Add an optional argument.
2944         (xref-collect-matches): Drop the assert.  'find' accepts a
2945         regular file in place of directory argument, too.
2947 2016-01-18  Alan Mackenzie  <acm@muc.de>
2949         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
2951 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
2953         Improve user documentation of Xref
2955         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
2956         (Looking Up Identifiers, Identifier Search, List Identifiers):
2957         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
2958         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
2959         for the details.
2961 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
2963         Fix scrolling under scroll-preserve-screen-position and margins
2965         * src/window.c (window_scroll_pixel_based): When setting point to
2966         preserve screen coordinates, don't let cursor enter either of the
2967         two scroll margins.  Fix incorrect usage of
2968         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
2969         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
2971 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
2973         Unbreak the MS-Windows build
2975         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
2976         WINDOWSNT, to avoid link failure.  (Bug#22202)
2978 2016-01-18  Alan Mackenzie  <acm@muc.de>
2980         Desktop: protect users against inadvertant upgrading of desktop file.
2982         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
2984         * etc/NEWS: Add an entry about upgrading a desktop file.
2986         * lisp/desktop.el (desktop-file-version): Amend doc string.
2987         (desktop-native-file-version, desktop-io-file-version): new variables.
2988         (desktop-clear): Set desktop-io-file-version to nil.
2989         (desktop-buffer-info): make the presence of the last item on the list
2990         conditional on (>= desktop-io-file-version 208).
2991         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
2992         Amend the doc string.  Add code to determine the output file version.
2993         (desktop-create-buffer): Set desktop-io-file-version to the input file's
2994         version.
2996 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
2998         Initialize GnuTLS before calling gnutls_rnd
3000         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
3001         Don’t set gnutls_global_initialized if gnutls_global_init fails.
3002         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
3003         if 2.12 or later, which has gnutls_rnd.
3004         (emacs_gnutls_global_init, gnutls_rnd): New fallback
3005         placeholder macros if before 2.12.
3006         (init_random): Initialize gnutls globals before trying to
3007         use gnutls_rnd.
3009 2016-01-17  Andreas Schwab  <schwab@linux-m68k.org>
3011         Don't use GnuTLS before it is initialized
3013                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
3015 2016-01-17  Bill Wohler  <wohler@newt.com>
3017         * mh-e.el (mh-version): Add +git to version.
3019 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
3021         Port cleanup attribute to OpenBSD
3023         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
3024         sprintf, and this messes up 'configure' when it tests for the cleanup
3025         attribute.  Work around the problem by using __has_attribute directly.
3026         Problem reported by Joakim Jalap (Bug#22385).
3027         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
3028         * m4/ax_gcc_var_attribute.m4: Remove.
3029         * src/conf_post.h (__has_attribute): Provide a substitute, for
3030         non-GCC or older GCC compilers.  All uses changed to assume
3031         the substitute.  Check for the cleanup attribute.
3032         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
3034 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
3036         Prefer GnuTLS when acquiring random seed
3038         This attempts to improve on the fix for Bug#22202.
3039         * configure.ac (HAVE_DEV_URANDOM): Remove.
3040         Check /dev/urandom existence at run time, not at build time,
3041         since the device could exist in the former but not the latter.
3042         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
3043         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
3044         (random_seed): New typedef.
3045         (set_random_seed): New static function.
3046         (seed_random): Use them.
3047         (init_random): Use random_seed instead of uintmax_t, so as to
3048         not consume more entropy than needed.  Prefer gnutls_rnd if it
3049         works; this avoids a redundant open of /dev/urandom on
3050         GNU/Linux with modern GnuTLS.
3052 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
3054         Improve documentation of dynamic modules
3056         * doc/lispref/loading.texi (How Programs Do Loading): Update the
3057         description of searching for files in 'load' when Emacs was built
3058         with support for dynamic modules.
3060 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
3062         * INSTALL: Document --with-modules.
3064 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
3066         Document 'function-put'
3068         * doc/lispref/symbols.texi (Symbol Plists): Document
3069         'function-put'.  Update documentation of 'function-get'.
3071 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
3073         Document 'funcall-interactively'
3075         * doc/lispref/commands.texi (Interactive Call): Document
3076         'funcall-interactively'.
3077         * doc/lispref/functions.texi (Calling Functions): Mention
3078         'funcall-interactively' and provide a cross-reference.
3080 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
3082         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
3084         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
3086 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
3088         Document renaming of selection-related functions
3090         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
3091         functions into the corresponding "gui-*" functions.  Make the
3092         description slightly less X-centric.
3094 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
3096         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
3098 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
3100         Document 'define-inline'
3102         * doc/lispref/functions.texi (Defining Functions): Document
3103         'define-inline' and related macros.
3105         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
3107 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
3109         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
3111         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
3113 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
3115         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
3117         instead of manually writing a dir-locals file.
3119 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
3121         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
3123         (dir-locals-file)
3124         * lisp/files-x.el (modify-dir-local-variable)
3125         * lisp/dos-fns.el (dosified-file-name)
3126         * lisp/help-fns.el (describe-variable): Change accordingly.
3128 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
3130         Fix incompatbilities with MS-Windows 2000 and older
3132         * src/w32.c <multiByteToWideCharFlags>: New global variable.
3133         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
3134         Use it instead of the literal MB_ERR_INVALID_CHARS.
3135         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
3136         appropriate for the underlying OS version.  For details, see
3137         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
3138         * src/w32.h: Declare multiByteToWideCharFlags.
3139         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
3140         (add_tray_notification): Use multiByteToWideCharFlags instead of
3141         the literal MB_ERR_INVALID_CHARS.
3142         (_resetstkoflw_proc): New typedef.
3143         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
3144         pointer, as this function is absent in msvcrt.dll shipped with W2K
3145         and older systems.
3147 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
3149         Mention in PROBLEMS an issue with MS-Windows NT4
3151         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
3152         on Windows NT4.  For the details, see
3153         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
3155 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
3157         Ensure 8-byte aligned memory allocation on MS-Windows 9X
3159         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
3160         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
3161         (malloc_after_dump_9x, realloc_after_dump_9x)
3162         (free_after_dump_9x): New functions.  (Bug#22379)  See also
3163         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
3164         for more details about the original problem.
3166         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
3167         (free_after_dump_9x): Add prototypes.
3169 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
3171         Fix tests for active region in hideif.el
3173         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
3174         'use-region-p' to test whether to operate on region, instead of
3175         testing 'mark-active'.
3177 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
3179         Fix interactive specs in some hideif.el commands
3181         * lisp/progmodes/hideif.el (hif-evaluate-macro)
3182         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
3183         in commands that should only act on the region if it's active.
3185 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
3187         Enable test selector from command line
3189         * test/automated/Makefile.in: Change variable manipulation to avoid
3190           over-writing selector.
3192 2016-01-15  Alan Mackenzie  <acm@muc.de>
3194         Don't confuse "::" with ":" when trying to parse member initializers.
3196         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
3197         more robustly for ":" token when searching backwards for it.
3199         * lisp/progmodes/cc-langs (c-:$-multichar-token-regexp): New language
3200         variable.
3202 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
3204         Ensure positive number of glyphs for margins of positive width
3206         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
3207         positive value when a non-zero width of the marginal area was
3208         requested.  (Bug#22356)
3210 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
3212         Fix crashes when mini-window has non-zero margins
3214         * src/window.c (resize_frame_windows): Use 'new_size' to set
3215         minibuffer window's 'total_cols' value, as 'size' might be in
3216         pixels.  (Bug#22356)
3218 2016-01-15  Alan Mackenzie  <acm@muc.de>
3220         In comment-dwim with style `extra-line', respect indent-tabs-mode.
3222         This fixes bug #22369.
3224         * lisp/newcomment.el (comment-make-bol-ws): New function.
3225         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
3227 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
3229         Make 'random' seeds cryptographically secure if possible
3231         * configure.ac: Check for "/dev/urandom".
3233         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
3234         for the seed from "/dev/urandom".
3235         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
3236         * src/fns.c (Frandom): Update the doc string to indicate that
3237         system entropy is used when available.
3238         * src/w32.c: Include wincrypt.h.
3239         (w32_init_crypt_random, w32_init_random): New functions, use the
3240         CryptGenRandom API.
3241         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
3242         * src/w32.h (w32_init_random): Add prototype.
3244         * doc/lispref/numbers.texi (Random Numbers): Document more details
3245         about 't' as the argument to 'random'.
3247         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
3248         strong seed if possible.
3250         (Bug#22202)
3252 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
3254         Unhide the --no-line-directive option to 'etags'
3256         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
3257         option.  (Bug#22306)
3259         * doc/man/etags.1: Document the --no-line-directive option.
3261 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
3263         Fix picture-mode wrt double-width characters
3265         * lisp/textmodes/picture.el (picture-insert): Check the width of
3266         the character being replaced, not just that of the replacement.
3267         (Bug#1808)
3269 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
3271         Honor docstring of gnus-group-get-new-news
3273         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
3274         but non-numeric, unconditionally consider all groups to need updating.
3276 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
3278         Disallow parenthesis in non-pseudo CSS selectors
3280         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
3281         parenthesis in selectors except for in the function notation that
3282         might appear right after a pseudo-class.
3283         * test/indent/scss-mode.scss: Add a test for it.
3285 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
3287         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
3289 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
3291         check-maybe shall run only default tests
3293         * test/automated/Makefile.in (check, check-expensive): Depend on
3294         mostlyclean.
3295         (check-maybe): Re-run only default tests.
3296         (check-doit): Use code of check-maybe.
3297         (mostlyclean): Move *.log files away.
3299 2016-01-13  Mark Oteiza  <mvoteiza@udel.edu>
3301         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
3303 2016-01-13  Dmitry Gutov  <dgutov@yandex.ru>
3305         Un-obsolete tags-loop-continue
3307         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
3308         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
3310 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
3312         Document obsoletion of 'intangible' and 'point-entered/left'
3314         * doc/lispref/text.texi (Special Properties): Document the new
3315         properties 'cursor-intangible' and 'cursor-sensor-functions'.
3316         Document the obsolete status of 'intangible', 'pointer-left',
3317         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
3318         * doc/lispref/display.texi (Overlay Properties): Document that
3319         'intangible' overlay property is obsolete.
3321         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
3323 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
3325         Updater documentation of 'looking-back'
3327         * doc/lispref/searching.texi (Regexp Search): Update documentation
3328         of 'looking-back'.  Fix markup.
3330 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
3332         Document 'pre-redisplay-functions'
3334         * doc/lispref/hooks.texi (Standard Hooks):
3335         * doc/lispref/display.texi (Forcing Redisplay): Document
3336         'pre-redisplay-functions'.
3338 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
3340         Document the new deafault value of 'load-read-function'
3342         * doc/lispref/loading.texi (How Programs Do Loading): Document the
3343         change in the default value of 'load-read-function'.
3345 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
3347         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
3349         * doc/lispref/nonascii.texi (Text Representations): Document
3350         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
3352 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
3354         Document the new prefix-command hooks
3356         * doc/lispref/hooks.texi (Standard Hooks): Document
3357         `prefix-command-echo-keystrokes-functions' and
3358         `prefix-command-preserve-state-hook'.
3360 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
3362         Fix one more misuse of time-stamp-time-zone
3364         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
3365         than the unportable "GMT" for time zone.
3367 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
3369         Fix NNTP NEWGROUPS off-by-a-few-hours bug
3371         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
3372         in Universal Time, since we’re telling the server “GMT”.
3374 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
3376         Update publicsuffix.txt from upstream
3378         * etc/publicsuffix.txt: Update from
3379         https://publicsuffix.org/list/effective_tld_names.dat
3380         dated 2016-01-12 11:52:01 UTC.
3382 2016-01-12  Glenn Morris  <rgm@gnu.org>
3384         Fix some declarations.
3386         * lisp/descr-text.el (internal-char-font):
3387         * lisp/cedet/mode-local.el (xref-item-location):
3388         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
3389         (epg-sub-key-capability, epg-sub-key-validity):
3390         * lisp/international/mule-util.el (internal-char-font):
3391         Fix declarations.
3393 2016-01-12  Glenn Morris  <rgm@gnu.org>
3395         Fix some custom types.
3397         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
3398         * lisp/gnus/gnus.el (gnus-valid-select-methods):
3399         * lisp/mail/rmail.el (rmail-get-coding-function):
3400         * lisp/net/newst-treeview.el (newsticker-groups-filename):
3401         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
3402         * lisp/textmodes/tildify.el (tildify-space-predicates):
3403         * lisp/url/url-tramp.el (url-tramp-protocols):
3404         Fix custom types.
3406 2016-01-12  Glenn Morris  <rgm@gnu.org>
3408         Add some missing version tags.
3410         * lisp/electric.el (electric-quote-comment)
3411         (electric-quote-string, electric-quote-paragraph):
3412         * lisp/epg-config.el (epg-gpgconf-program):
3413         * lisp/rect.el (rectangle-preview):
3414         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
3415         * lisp/emacs-lisp/package.el (package-selected-packages)
3416         (package-hidden-regexps):
3417         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
3418         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
3419         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
3420         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
3421         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
3422         (mml-smime-sign-with-sender, mml2015-always-trust)
3423         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
3424         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
3425         (browse-url-conkeror-arguments):
3426         * lisp/net/newst-reader.el (newsticker-download-logos):
3427         * lisp/progmodes/gud.el (gud-guiler-command-name):
3428         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
3429         * lisp/progmodes/project.el (project-vc):
3430         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
3431         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
3432         (python-shell-completion-native-disabled-interpreters)
3433         (python-shell-completion-native-enable)
3434         (python-shell-completion-native-output-timeout)
3435         (python-shell-completion-native-try-output-timeout):
3436         * lisp/progmodes/xref.el (xref):
3437         * lisp/term/screen.el (xterm-screen-extra-capabilities):
3438         * lisp/term/xterm.el (xterm-max-cut-length):
3439         Add missing version tags.
3441 2016-01-12  Glenn Morris  <rgm@gnu.org>
3443         * test/automated/core-elisp-tests.el
3444         (core-elisp-tests-1-defvar-in-let): Add a custom type.
3446 2016-01-12  Glenn Morris  <rgm@gnu.org>
3448         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
3450         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
3452 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
3454         Merge from gnulib
3456         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
3457         It also updates to the latest version of texinfo.tex.
3458         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
3459         * build-aux/update-copyright, doc/misc/texinfo.tex:
3460         Update from gnulib.
3462 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
3464         Update documentation of 'process-running-child-p'
3466         * doc/lispref/processes.texi (Input to Processes): Document the
3467         changes in return value of 'process-running-child-p'.
3469 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
3471         Update documentation of 'deactivate-mark'.
3473         * doc/lispref/markers.texi (The Mark): Document that
3474         'deactivate-mark' is now buffer-local when set.
3476 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
3478         Update documentation of 'completion-table-dynamic'
3480         * doc/lispref/minibuf.texi (Programmed Completion): Document the
3481         new optional argument to 'completion-table-dynamic'.
3483 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
3485         Document changes in 'read-buffer' and 'read-buffer-function'
3487         * doc/lispref/minibuf.texi (High-Level Completion): Document the
3488         4th argument to 'read-buffer' and 'read-buffer-function'.
3490 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
3492         Fix time-stamp-time-zone bugs introduced in July
3494         This fixes a bug introduced when the July changes to
3495         format-time-string installed, as the changes were not
3496         correctly handled in this module (Bug#22302).
3497         Also, document time stamp time zones.
3498         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
3499         (time-stamp--format): New private function.
3500         (time-stamp-string, time-stamp-string-preprocess)
3501         (time-stamp-do-number): Use it.
3502         * doc/emacs/files.texi (Time Stamps): Mention time zones.
3503         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
3505 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
3507         Make piping to subprocesses more robust on MS-Windows
3509         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
3510         buffer can hold.  Don't return -1 if something has been written to
3511         the pipe.  Zero out 'errno' before calling '_write', to avoid
3512         returning a stale value.  (Bug#22344)
3513         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
3514         * src/w32.c (pipe2): Use it to request a user-defined size for the
3515         pipe being created.
3517         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
3519         * doc/emacs/msdos.texi (Windows Processes): Document
3520         'w32-pipe-buffer-size'.
3522 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
3524         * lisp/emacs-lisp/syntax.el (syntax-ppss-table): New var
3526         (syntax-ppss):
3527         * lisp/font-lock.el (font-lock-fontify-syntactically-region): Use it.
3529 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
3531         lisp/nxml: Use syntax-tables for comments
3533         * lisp/nxml/nxml-mode.el (nxml-set-face): Prepend.
3534         (nxml-mode): Set syntax-ppss-table.
3535         Use sgml-syntax-propertize-function for syntax-propertize-function.
3536         Let font-lock highlight strings and comments.
3537         (nxml-degrade): Don't touch "nxml-inside" property any more.
3538         (nxml-after-change, nxml-after-change1): Remove functions.
3539         (comment): Don't set fontify rule any more.
3540         (nxml-fontify-attribute): Don't highlight the value any more.
3541         (nxml-namespace-attribute-value-delimiter, nxml-namespace-attribute-value)
3542         (nxml-comment-delimiter, nxml-comment-content): Remove faces.
3544         * lisp/nxml/nxml-rap.el (nxml-scan-end): Remove.
3545         (nxml-get-inside, nxml-inside-start, nxml-inside-end): Use syntax-ppss.
3546         (nxml-clear-inside, nxml-set-inside): Remove.
3547         (nxml-scan-after-change): Remove function.
3548         (nxml-scan-prolog, nxml-tokenize-forward): Simplify.
3549         (nxml-ensure-scan-up-to-date): Use syntax-propertize.
3550         (nxml-move-outside-backwards):
3551         * lisp/nxml/nxml-outln.el (nxml-section-tag-backward): Adjust to new
3552         nxml-inside-start behavior.
3554         * lisp/nxml/nxml-util.el (nxml-debug-set-inside)
3555         (nxml-debug-clear-inside): Remove macros.
3557         * lisp/nxml/xmltok.el (xmltok-forward-special): Remove function.
3558         (xmltok-scan-after-comment-open): Simplify.
3560 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
3562         * elisp-mode.el (elisp--font-lock-flush-elisp-buffers): Fix comment
3564 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
3566         * lisp/nxml: Use standard completion; it also works for company-mode
3568         * lisp/nxml/nxml-mode.el (nxml-complete): Obsolete.
3569         (nxml-completion-at-point-function): Remove.
3570         (nxml-mode): Don't set completion-at-point-functions.
3571         * lisp/nxml/rng-nxml.el (rng-nxml-mode-init): Set it here instead.
3572         (rng-completion-at-point): Rename from rng-complete and mark it
3573         non-interactive.  It is now to be used as completion-at-point-function.
3574         (rng-complete-tag, rng-complete-end-tag, rng-complete-attribute-name)
3575         (rng-complete-attribute-value): Don't perform completion, but return
3576         completion data instead.
3577         (rng-complete-qname-function, rng-generate-qname-list): Add a few
3578         arguments, previously passed via dynamic coping.
3579         (rng-strings-to-completion-table): Rename from
3580         rng-strings-to-completion-alist.  Don't return an alist.  Don't both
3581         sorting and uniquifying.
3583         * lisp/nxml/rng-util.el (rng-complete-before-point): Delete function.
3584         (rng-completion-exact-p, rng-quote-string): Delete functions.
3586         * lisp/nxml/rng-valid.el (rng-recover-start-tag-open)
3587         (rng-missing-attributes-message, rng-missing-element-message)
3588         (rng-mark-missing-end-tags): Use explicit ".." in formats rather than
3589         calling rng-quote-string everywhere.
3591 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
3593         Use sgml-electric-tag-pair-mode also in nxml-mode
3595         * lisp/nxml/rng-nxml.el: Require sgml-mode.
3596         (rng-nxml-easy-menu): Add entry for sgml-electric-tag-pair-mode.
3597         (rng-complete-qname-function): Use complete-with-action.
3599         * lisp/textmodes/sgml-mode.el (sgml-electric-tag-pair-before-change-function):
3600         Let-bind forward-sexp-function, since nxml-mode binds it to
3601         something incompatible.
3603         * lisp/nxml/nxml-mode.el: Use setq-local and defvar-local.
3605 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
3607         * xmltok.el: Mark the "sole --" rather than the comment opener
3609         * lisp/nxml/xmltok.el (xmltok-scan-after-comment-open): Put the error
3610         marker on the "sole --" rather than on the comment opener.
3612 2016-01-15  Sam Steingold  <sds@gnu.org>
3614         replace `tramp-compat-split-string' (removed) with `split-string'
3616         (python-shell-tramp-refresh-process-environment)
3617         (python-shell-calculate-pythonpath): use `split-string'
3618         instead of defunct `tramp-compat-split-string'
3620 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
3622         Update nXML to use Emacs's Unicode support, and lexical-binding
3624         * etc/nxml/*.el: Remove obsolete char-name files.
3625         * lisp/nxml/xsd-regexp.el (xsdre-range-list-difference): Remove unused
3626         var `next'.
3627         * lisp/nxml/rng-nxml.el (rng-set-state-after): Don't assume point-min==1.
3628         * lisp/nxml/rng-match.el (rng-update-match-state): Simplify.
3629         * lisp/nxml/nxml-outln.el (nxml-outline-state-transform-exceptions)
3630         (nxml-target-section-pos, nxml-depth-in-target-section)
3631         (nxml-outline-state-transform-alist)
3632         (nxml-outline-display-section-tag-function): Move decl before first use.
3633         * lisp/nxml/nxml-mode.el (nxml-char-name-ignore-case)
3634         (nxml-char-name-alist, nxml-char-name-table)
3635         (nxml-autoload-char-name-set-list, nxml-named-char-history): Remove vars.
3636         (nxml-enable-char-name-set, nxml-disable-char-name-set)
3637         (nxml-char-name-set-enabled-p, nxml-autoload-char-name-set)
3638         (nxml-define-char-name-set, nxml-get-char-name): Remove functions.
3639         (nxml-insert-named-char): Use read-char-by-name instead.
3640         (nxml-char-ref-display-extra): Use get-char-code-property.
3641         * lisp/nxml/nxml-maint.el (nxml-create-unicode-char-name-sets):
3642         Remove function.
3643         * lisp/nxml/nxml-glyph.el, lisp/nxml/nxml-uchnm.el: Remove files.
3645 2016-01-15  Michael Albinus  <michael.albinus@gmx.de>
3647         Add "sg" method to Tramp
3649         * doc/misc/tramp.texi (Inline methods): Add "sg" method.
3650         (Customizing Completion): Add function `tramp-parse-etc-group'.
3652         * lisp/net/tramp-sh.el (tramp-methods) <sg>: Add.  (Bug#22329)
3653         (tramp-completion-function-alist-sg): New defconst.
3654         (top): Completion function for "sg" is
3655         `tramp-completion-function-alist-sg'.
3657         * lisp/net/tramp.el (tramp-completion-function-alist): Adapt docstring.
3658         (tramp-parse-etc-group, tramp-parse-etc-group-group): New defuns.
3660 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
3662         Remove XEmacs compatibility in Tramp
3664         * doc/misc/tramp.texi: Replace flags by their hard coded name.
3665         Remove unused flags and the enclosed alternative text for XEmacs.
3667         * doc/misc/trampver.texi: Use "Tramp" CamelCase.  Rename "emacs"
3668         and "xemacs" flags to "unified" and "separate".  Remove flags
3669         "emacsgw", "emacsname", "emacsdir", "ftppackagename",
3670         "emacsothername", "emacsotherdir" and "emacsotherfilename".
3671         (trampver):
3672         * lisp/net/trampver.el (tramp-version): Set to "2.3.0-pre".
3674         * lisp/net/tramp.el (bkup-backup-directory-info)
3675         (directory-sep-char, ls-lisp-use-insert-directory-program)
3676         (outline-regexp, tramp-backup-directory-alist)
3677         (tramp-default-method, tramp-shell-prompt-pattern, tramp-syntax)
3678         (tramp-file-name-regexp-unified)
3679         (tramp-file-name-regexp-separate)
3680         (tramp-completion-file-name-regexp-unified)
3681         (tramp-completion-file-name-regexp-separate, tramp-chunksize)
3682         (tramp-get-method-parameter, tramp-find-method, tramp-find-user)
3683         (tramp-debug-message, tramp-progress-reporter-update)
3684         (with-tramp-progress-reporter)
3685         (tramp-rfn-eshadow-setup-minibuffer)
3686         (rfn-eshadow-setup-minibuffer-hook, tramp-unload-hook)
3687         (tramp-rfn-eshadow-update-overlay)
3688         (rfn-eshadow-update-overlay-hook, tramp-default-file-modes)
3689         (tramp-file-name-for-operation)
3690         (tramp-completion-file-name-handler)
3691         (tramp-autoload-file-name-handler, tramp-completion-mode-p)
3692         (tramp-handle-directory-files)
3693         (tramp-handle-directory-files-and-attributes)
3694         (tramp-handle-dired-uncache, tramp-handle-find-backup-file-name)
3695         (tramp-handle-insert-file-contents, tramp-handle-load)
3696         (tramp-handle-shell-command)
3697         (tramp-handle-verify-visited-file-modtime)
3698         (tramp-handle-file-notify-valid-p, tramp-accept-process-output)
3699         (tramp-check-for-regexp, tramp-wait-for-regexp)
3700         (tramp-send-string, tramp-mode-string-to-int)
3701         (tramp-get-local-gid, tramp-check-cached-permissions)
3702         (tramp-get-remote-tmpdir, tramp-make-tramp-temp-file)
3703         (auto-save-file-name-transforms)
3704         (tramp-handle-make-auto-save-file-name, tramp-read-passwd)
3705         (tramp-clear-passwd, tramp-time-diff):
3706         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp)
3707         (directory-sep-char, tramp-adb-file-name-handler-alist)
3708         (tramp-adb-parse-device-names)
3709         (tramp-adb-handle-expand-file-name)
3710         (tramp-adb-handle-file-truename, tramp-adb--gnu-switches-to-ash)
3711         (tramp-adb-handle-file-local-copy)
3712         (tramp-adb-handle-write-region, tramp-adb-handle-set-file-modes)
3713         (tramp-adb-handle-rename-file, tramp-adb-handle-process-file)
3714         (tramp-adb-handle-shell-command)
3715         (tramp-adb-handle-start-file-process, tramp-adb-get-device)
3716         (tramp-adb-maybe-open-connection):
3717         * lisp/net/tramp-cache.el (tramp-persistency-file-name)
3718         (tramp-cache-print):
3719         * lisp/net/tramp-cmds.el (tramp-cleanup-all-connections)
3720         (tramp-bug, tramp-reporter-dump-variable)
3721         (tramp-load-report-modules, tramp-append-tramp-buffers):
3722         * lisp/net/tramp-compat.el (tramp-compat-funcall)
3723         (tramp-advice-file-expand-wildcards)
3724         (tramp-compat-temporary-file-directory)
3725         (tramp-compat-make-temp-file, tramp-compat-copy-file)
3726         (tramp-compat-delete-directory, )
3727         (tramp-compat-process-running-p):
3728         * lisp/net/tramp-ftp.el (tramp-methods) <ftp>:
3729         (tramp-default-method-alist, tramp-foreign-file-name-handler-alist):
3730         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
3731         (tramp-gvfs-do-copy-or-rename-file, tramp-gvfs-handle-copy-file)
3732         (tramp-gvfs-handle-file-local-copy)
3733         (tramp-gvfs-handle-file-name-all-completions)
3734         (tramp-gvfs-handle-file-notify-add-watch)
3735         (tramp-gvfs-monitor-file-process-filter)
3736         (tramp-gvfs-handle-file-readable-p)
3737         (tramp-gvfs-handle-rename-file, tramp-gvfs-handle-write-region)
3738         (tramp-gvfs-file-name, tramp-gvfs-handler-askquestion)
3739         (tramp-gvfs-maybe-open-connection)
3740         (tramp-gvfs-parse-device-names):
3741         * lisp/net/tramp-gw.el (tramp-gw-aux-proc-sentinel)
3742         (tramp-gw-open-connection, tramp-gw-open-network-stream):
3743         * lisp/net/tramp-sh.el (directory-sep-char)
3744         (tramp-sh-file-name-handler-alist)
3745         (tramp-sh-handle-file-truename)
3746         (tramp-sh-handle-set-visited-file-modtime)
3747         (tramp-sh-handle-verify-visited-file-modtime)
3748         (tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
3749         (tramp-sh-handle-file-acl)
3750         (tramp-sh-handle-file-name-all-completions)
3751         (tramp-sh-handle-copy-file, tramp-sh-handle-rename-file)
3752         (tramp-do-copy-or-rename-file-directly)
3753         (tramp-do-copy-or-rename-file-out-of-band)
3754         (dired-compress-file-suffixes, dired-remove-file)
3755         (tramp-sh-handle-dired-compress-file)
3756         (tramp-sh-handle-insert-directory)
3757         (tramp-sh-handle-expand-file-name)
3758         (tramp-sh-handle-start-file-process)
3759         (tramp-sh-handle-process-file, tramp-sh-handle-file-local-copy)
3760         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
3761         (tramp-sh-handle-file-notify-add-watch)
3762         (tramp-sh-gvfs-monitor-dir-process-filter)
3763         (tramp-sh-inotifywait-process-filter, tramp-maybe-send-script)
3764         (tramp-find-executable)
3765         (tramp-open-connection-setup-interactive-shell)
3766         (tramp-find-inline-encoding, tramp-compute-multi-hops)
3767         (tramp-maybe-open-connection, tramp-convert-file-attributes)
3768         (tramp-get-remote-path, tramp-get-remote-touch):
3769         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
3770         (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
3771         (tramp-smb-handle-delete-directory)
3772         (tramp-smb-handle-directory-files, tramp-smb-handle-file-acl)
3773         (tramp-smb-handle-make-directory-internal)
3774         (tramp-smb-handle-process-file, tramp-smb-handle-rename-file)
3775         (tramp-smb-handle-set-file-acl, tramp-smb-handle-set-file-modes)
3776         (tramp-smb-handle-write-region, tramp-smb-get-file-entries)
3777         (tramp-smb-get-cifs-capabilities)
3778         (tramp-smb-maybe-open-connection):
3779         * lisp/net/trampver.el (tramp-repository-get-version):
3780         Remove XEmacs compat code.
3782         * lisp/net/tramp-cmds.el (mml-mode, mml-insert-empty-tag)
3783         (reporter-dump-variable): Declare functions.
3785         * lisp/net/tramp.el (tramp-bkup-backup-directory-info)
3786         (tramp-advice-minibuffer-electric-separator)
3787         (tramp-advice-minibuffer-electric-tilde)
3788         (tramp-handle-unhandled-file-name-directory):
3789         * lisp/net/tramp-compat.el (tramp-compat-with-temp-message)
3790         (tramp-compat-font-lock-add-keywords)
3791         (tramp-compat-load, tramp-compat-number-sequence)
3792         (tramp-compat-split-string, tramp-compat-delete-dups):
3793         * lisp/net/tramp-sh.el (tramp-sh-handle-insert-file-contents-literally):
3794         Remove.
3796         * lisp/net/tramp-sh.el (tramp-methods) <psftp>: This does not work
3797         recursively.
3799 2016-01-14  K. Handa  <handa@gnu.org>
3801         fix previous change of src/ftfont.c (ftfont_shape_by_flt)
3803         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
3804         second glyph only when there are enough glyphs.
3806 2016-01-13  Glenn Morris  <rgm@gnu.org>
3808         * src/buffer.c (Fset_buffer_major_mode): Allow default major-mode,
3810         or its hook, to move point.  (Bug#22348)
3812 2016-01-12  Michael Albinus  <michael.albinus@gmx.de>
3814         Merge missing commit from emacs-25 branch
3816         * test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE, SELECTOR):
3817         New variables.
3818         (check-expensive, check-doit): New targets.
3820         * Makefile.in (check-expensive): New target.
3822         * test/lisp/autorevert-tests.el
3823         (auto-revert-test01-auto-revert-several-files):
3824         * test/lisp/filenotify-tests.el (file-notify--deftest-remote)
3825         (file-notify-test06-many-events):
3826         * test/lisp/net/tramp-tests.el (tramp-test26-process-file)
3827         (tramp-test27-start-file-process, tramp-test28-shell-command)
3828         (tramp-test29-vc-registered)
3829         (tramp-test31-special-characters-with-stat)
3830         (tramp-test31-special-characters-with-perl)
3831         (tramp-test31-special-characters-with-ls)
3832         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
3833         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
3834         (tramp-test35-unload): Tag the tests as :expensive-test.
3836 2016-01-12  John Wiegley  <johnw@newartisans.com>
3838         Merge from origin/emacs-25
3840         1f6898d test/automated/vc-hg.el: Support out-of-tree build
3841         3adb56e Minor change in tramp-tests.el
3842         2b535ba ; * etc/NEWS: Update the js.el entry.
3843         76b518c * etc/HELLO: Add Armenian and Mongolian greetings.
3844         b51f1ef Java Mode: Fontify identifiers in the presence of annotations.
3845         36b9539 Avoid an infloop when we run out of memory
3846         2006752 Avoid unnecessary failures of auto-saving after fatal error
3847         eef6784 Simplify HAVE_MODULES use in mark_maybe_pointer
3848         552694a Revert attempt to use 'noexcept' in typedef
3849         6ad0d39 Update documentation of 'indirect-function'
3850         c6a5314 ; * etc/NEWS: Move entry of 'inhibit-point-motion-hooks'.
3851         303141a Update documentation for obsoleting 'syntax-begin-function'
3852         4e6f61c ; * etc/NEWS: Mark documented and not-to-be-documented entries.
3853         e667bbb Document new features if Eshell
3854         9c4e4e0 ; * etc/NEWS: Update EUDC entries.
3855         1089dc9 Handle too long commands in Tramp
3856         684eb58 * .gitattributes: *.cur and *.pif are binary files too.
3857         d2c7fda * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
3858         bd3f53d * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
3859         09b2b8a * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
3860         cca0f93 ; Account for spaces before the filename
3861         c71e1e8 Use short date for 'hg annotate', and output the author
3862         f50027b Spelling fix
3863         c7dff67 ; * etc/NEWS: Fix the Xref entries that got separated.
3864         cc140bc Document user-level functions in project.el
3865         f8208b6 Document the user-level features of the Xref package
3866         b131fb8 * loading.texi: Add `define-type' entry for load-history
3867         db3c2a8 Improve doc strings and prompts in xref.el
3868         f6117ef Allow the use of `font-lock-extend-region-multiline' in CC Mode.
3869         90fd798 Fix coding system for Tramp on OS X.
3870         e985a0e ; * etc/NEWS: Mark the 'check-expensive' entry not to be documented.
3871         9dfcbf0 Update 'load-history' docs
3872         207e191 Fix (error ...) error
3873         457738f Correctly analyze brace arguments in templated C++ function declarations.
3874         d57724a * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
3875         2a9532d * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
3876         1a6b084 * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
3877         8be046f Respect fontification region calculated by major mode.  Fixes bug #22316.
3878         4b37cba Improve documentation of Delete Selection mode
3879         a034dd3 Fix two project-find-file issues
3880         30abf29 Clarify doc string of 'dired-current-directory'
3881         e990bb2 Use the face of preceding text for displaying the ellipsis
3882         5810ac3 Suppress Chinese file name test for OSX in tramp-tests.el
3883         eeb710a ; * lisp/startup.el: Sentences end with two spaces.
3884         428b3de * admin/admin.el (set-version): Also handle the NEWS file.
3885         648de81 ; Add NEWS entry for project.el
3886         671862f apropos-library: Skip obvious duplicates; don't error on generics
3887         51668a5 ; Grammar fix
3888         ed41d11 Add project-find-file and project-or-external-find-file
3889         056da45 ; Improve commentary in 'setup_for_ellipsis'
3890         269d008 ; Improve docstring for `inhibit-startup-echo-area-message'
3892 2016-01-12  John Wiegley  <johnw@newartisans.com>
3894         Merge from origin/emacs-25
3896         ce4a052 Add defvar-local to lisp-imenu-generic-expression
3897         a0121bc Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
3898         76fe2d5 * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
3899         1ae088f * lisp/emacs-lisp/autoload.el (autoload-find-destination):
3900         b6b47af Properly encode/decode base64Binary data in SOAP
3901         c632466 Obey coding-system-for-write when writing stdout/stderr in batch
3902         2f32cb5 * doc/misc/efaq.texi (Packages that do not come with Emacs):
3903                 Update the URI of MELPA and marmalade-repo.
3904                 Reported by CHENG Goa <chenggao@royau.me> in
3905                 https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
3906         d2937aa * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
3907         5330c25 * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
3908         7380990 Remove function wrongly on AWK Mode value of context
3909         fontification hook.
3910         d400753 * src/buffer.c: Stick with ASCII in doc string.
3911         221240c Reword transient-mark-mode doc string
3912         977d3ea Update doc string of 'selective-display'
3913         229c3fa Make C++ buffers writeable when writing their initial text
3914                 properties.
3915         f5c762c Additional changes for "make check-expensive"
3916         1729cf3 ; * admin/MAINTAINERS: Remove myself.
3917         33219d3 Apply text properties for <, > in new after-change function
3918                 (C++ Java Modes).
3920 2016-01-12  John Wiegley  <johnw@newartisans.com>
3922         Merge from origin/emacs-25
3924         9fb185a shr-tag-video bug fix
3925         6300655 Minor fixes in tramp-tests.el
3926         50575b1 Ensure redisplay when 'truncate-lines' is set
3927         0d9e80d Fix a doc string of 'transient-mark-mode'
3928         0000ae5 MS-Windows followup to latest gnulib update
3929         4bc5e02 Spelling fix
3930         f1093f7 Do secure signed Bcc handling
3932 2016-01-12  John Wiegley  <johnw@newartisans.com>
3934         Merge from origin/emacs-25
3936         861022f * doc/misc/texinfo.tex: Revert unwanted copyright change.
3937         46e47a5 ; * etc/refcards/ru-refcard.tex (cyear): Update via M-x set-copyright.
3938         71ea138 * lisp/align.el (align): Simplify a lambda
3939         5618a50 * lisp/align.el (align): Fix arg order in call to `align-region'
3940         1f680db Fix compilation next-error in buffers with selective-display
3941         d20a948 * nsm.el (nsm-check-protocol): Fix typo in the message.
3942         1da116f Add SHA1 warnings for high network security settings
3943         e48bacd ; * etc/NEWS: Typo fix.
3945 2016-01-12  John Wiegley  <johnw@newartisans.com>
3947         Merge from origin/emacs-25
3949         43662a2 ; Clarify that xref is still experimental
3950         0a6e6ca ; * admin/release-process: Remove some obsolete records.
3951         c2e9e3d * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
3952         8637f3d (semantic-symref-derive-find-filepatterns): Return a list
3953         0a7ad07 ; Re-arrange xref-related entries in NEWS.
3954         fe903ef Fix xref-find-references on MS-Windows
3955         55a28d8 ; Fixed visual bell artifact problem on NextStep.
3956         d064034 Document new features of tildify-mode
3957         964bea7 Document new features of Whitespace mode
3958         cd68f47 Improve documentation of new Hide-IfDef features
3959         723b8bf Fix regression in font-locking cl-assert and cl-check-type
3961 2016-01-12  John Wiegley  <johnw@newartisans.com>
3963         Merge from origin/emacs-25
3965         ef33bc7 Spelling and grammar fixes
3966         9c3dbab Fix copyright years by hand
3967         0e96320 Update copyright year to 2016
3969 2016-01-12  John Wiegley  <johnw@newartisans.com>
3971         Merge from origin/emacs-25
3973         9ee6ecb lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
3974         526d80c Port chart.el methods to cl-generic.
3975         410bb69 Add nt/INSTALL.W64 build instructions
3976         8f5b524 Add new input method 'programmer-dvorak'
3977         6d11f6e Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
3978         bb83bb1 Fix EWW rendering of long RTL lines
3979         b1a8509 fix  bug#21054
3980         ce5ad12 Clean up cairo printing code
3982 2016-01-12  John Wiegley  <johnw@newartisans.com>
3984         Merge from origin/emacs-25
3986         6ee327d Add handle_user_signal_hook
3987         47580e0 Avoid writing to purespace
3988         0588be7 Remove unused variable
3989         89e7483 * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
3990         3b95e9c Use posix_openpt instead of openpty on Darwin
3991         86312ff Document support for ':documentation' in Lisp mode
3992         c930e75b Document new features of TeX mode
3993         7c83d84 Clarify docs of hscroll in RTL text
3994         4c8f8db Fix rendering of HTML pages that use character composition
3995         a8d37ca Avoid some compiler warnings in w32.c
3996         ce106f3de Undo ill-advised change
3997         be0bba4 Unbreak completion in python-mode buffers
3999 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
4001         test/automated/vc-hg.el: Support out-of-tree build
4003         * test/automated/vc-hg.el
4004         (vc-hg-annotate-extract-revision-at-line-with-filename)
4005         (vc-hg-annotate-extract-revision-at-line-with-both):
4006         Don't refer to source-directory.
4007         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
4009 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
4011         Minor change in tramp-tests.el
4013         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
4014         Use `dired-uncache' instead of a Tramp internal function.
4016 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
4018         * etc/HELLO: Add Armenian and Mongolian greetings.
4020         (Bug#22346)
4022 2016-01-11  Alan Mackenzie  <acm@muc.de>
4024         Java Mode: Fontify identifiers in the presence of annotations.
4026         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
4027         Don't move point when the defun fails.
4028         (c-forward-decl-or-cast-1): Correct a usage of match data.
4030         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
4031         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
4032         removed variable.
4034         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
4036 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
4038         Avoid an infloop when we run out of memory
4040         * src/alloc.c (garbage_collect_1): Don't bother saving and
4041         restoring the echo-area message if we are GC'ing after running out
4042         of memory.  This avoids an infloop due to repeated attempts to
4043         allocate memory for the cons cell needed to save the message,
4044         which signals the memory-full error, which attempts to save the
4045         echo-area message, which signals memory-full again, etc.
4047 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
4049         Avoid unnecessary failures of auto-saving after fatal error
4051         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
4052         the benefit of FAT volumes if we are called as part of shutting
4053         down due to a fatal error, which probably means we are trying to
4054         auto-save the session.
4055         * src/lread.c (check_obarray): Don't bother making the obarray
4056         valid if we are shutting down due to a fatal error.  This avoids
4057         interfering with auto-saving the crashed session.
4059 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
4061         Simplify HAVE_MODULES use in mark_maybe_pointer
4063         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
4064         so that later code can use 'if' rather than '#ifdef'.
4065         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
4066         always working.
4068 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
4070         Revert attempt to use 'noexcept' in typedef
4072         This use of 'noexcept' runs afoul of the C++11 standard.
4073         Problem reported by Philipp Stephani in:
4074         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
4075         * src/emacs-module.c (emacs_finalizer_function):
4076         Move this typedef here ...
4077         * src/emacs-module.h: ... from here, and use only the C
4078         version of the typedef.  The typedef is now private since it
4079         is never used in the .h file now and anyway it seemed to be
4080         causing more confusion than it cured.
4081         (make_user_ptr, get_user_finalizer, set_user_finalizer):
4082         Open-code the type instead.
4084 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
4086         Update documentation of 'indirect-function'
4088         * doc/lispref/eval.texi (Function Indirection): Update the
4089         documentation of 'indirect-function'.
4091 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
4093         Update documentation for obsoleting 'syntax-begin-function'
4095         * doc/lispref/syntax.texi (Position Parse): Undocument
4096         'syntax-begin-function' that is now obsolete.
4098 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
4100         Document new features if Eshell
4102         * doc/misc/eshell.texi (Input/Output): Document the new
4103         '#<bufname>' syntax.
4104         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
4105         Disable "Key Index" generation, as there are no @kindex entries in
4106         this manual.
4108 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
4110         Handle too long commands in Tramp
4112         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
4113         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
4114         order to not exceed shell command line limit.
4116         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
4117         (tramp--test-utf8): Include Arabic file name, again.
4119 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
4121         * .gitattributes: *.cur and *.pif are binary files too.
4123 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
4125         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
4127 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
4129         * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
4131         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
4132         within $(...).
4133         * test/indent/shell.sh: Add corresponding test.
4135 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
4137         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
4139         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
4140         cast to Lisp_Object.
4142 2016-01-09  Dmitry Gutov  <dgutov@yandex.ru>
4144         Use short date for 'hg annotate', and output the author
4146         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
4147         Change '-d' to '-dq'.  (Bug#21805)
4148         (vc-hg-annotate-switches): Default to "-u" "--follow".
4149         (vc-hg-annotate-re): Update to recognize the short date format
4150         and the optional username.
4151         (vc-hg-annotate-time)
4152         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
4154         * test/automated/vc-hg.el: New file.
4156 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
4158         Spelling fix
4160 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
4162         Document user-level functions in project.el
4164         * lisp/progmodes/project.el (project-find-file)
4165         (project-or-external-find-file): Add doc strings.
4167 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
4169         Document the user-level features of the Xref package
4171         * doc/emacs/maintaining.texi (Maintaining): Add a list of
4172         described features.
4173         (Xref): New section, made out of thoroughly rewritten "Tags"
4174         section.
4175         (Find Identifiers, Looking Up Identifiers, Xref Commands)
4176         (Identifier Search, List Identifiers): New subsections,
4177         incorporating the old tags commands and the new xref commands.
4178         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
4179         Section and subsections demoted to a lower level.
4180         * doc/emacs/search.texi (Search):
4181         * doc/emacs/windows.texi (Pop Up Window):
4182         * doc/emacs/frames.texi (Creating Frames):
4183         * doc/emacs/programs.texi (Imenu, Symbol Completion):
4184         * doc/emacs/building.texi (Grep Searching):
4185         * doc/emacs/dired.texi (Operating on Files):
4186         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
4188 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
4190         * loading.texi: Add `define-type' entry for load-history
4192         * doc/lispref/loading.texi (Where Defined): Remove incorrect
4193         cl-defmethod description, and add missing define-type entry.
4195 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
4197         Improve doc strings and prompts in xref.el
4199         * lisp/progmodes/xref.el (xref-backend-functions)
4200         (xref-find-definitions): Doc fixes.
4201         (xref-query-replace): Doc fix.  Improve prompts for arguments.
4203 2016-01-09  Alan Mackenzie  <acm@muc.de>
4205         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
4207         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
4208         `font-lock-extend-regions-wholelines' from
4209         `font-lock-extend-region-functions' rather than setting the latter to
4210         nil.
4212 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
4214         Fix coding system for Tramp on OS X.
4216         * lisp/net/tramp-compat.el: Require ucs-normalize.
4218         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
4219         Set coding system to `utf-8-hfs' for Mac OS X.
4221         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
4222         Flush directory properties when needed.
4223         (tramp--test-utf8): Include Chinese file name, again.
4225 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
4227         Update 'load-history' docs
4229         * doc/lispref/loading.texi (Where Defined): Update the list of
4230         forms in 'load-history' by adding the forms created for the
4231         'cl-generic' generics.  (Bug#21422)
4233 2016-01-08  Paul Eggert  <eggert@cs.ucla.edu>
4235         Fix (error ...) error
4237         Problem reported by Glenn Morris in:
4238         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
4239         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
4240         introduced in my Aug 28 change, where I got confused by the
4241         two meanings of (error ...).
4243 2016-01-08  Alan Mackenzie  <acm@muc.de>
4245         Correctly analyze brace arguments in templated C++ function declarations.
4247         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
4248         POS and LIMIT parameters, like the other c-go-list-* functions have.
4250         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
4251         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
4252         followed by template specifiers.
4254 2016-01-08  Glenn Morris  <rgm@gnu.org>
4256         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
4258         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
4260 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
4262         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
4264 2016-01-08  Alan Mackenzie  <acm@muc.de>
4266         Respect fontification region calculated by major mode.  Fixes bug #22316.
4268         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
4269         fontification region has been calculated by a function on
4270         font-lock-extend-after-change-region-function use this region rather than
4271         changing the end position to somewhere else.
4273 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
4275         Improve documentation of Delete Selection mode
4277         * lisp/delsel.el (delete-selection-mode)
4278         (delete-selection-helper): Update and expand the doc strings.
4279         (Bug#22296)
4281         * doc/emacs/mark.texi (Using Region): Document the behavior of
4282         delete commands in Delete Selection mode.  (Bug#22296)
4284         * doc/lispref/markers.texi (The Mark): Document how to add the
4285         support for Delete Selection mode to Lisp programs. (Bug#22296)
4287 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
4289         Fix two project-find-file issues
4291         * lisp/progmodes/project.el (project--value-in-dir):
4292         Temporarily set enable-local-variables to :all.
4293         (project-find-file, project-or-external-find-file):
4294         All autoloads.
4295         (project--find-file-in): Require xref.
4297 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
4299         Clarify doc string of 'dired-current-directory'
4301         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
4302         the return value might not end in a slash when called with the
4303         optional argument non-nil.  (Bug#6273)
4305 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
4307         Use the face of preceding text for displaying the ellipsis
4309         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
4310         text in it->saved_face_id for displaying the ellipsis, and ignore
4311         the face, if any, of the invisible text.  (Bug#22320)
4313 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
4315         Suppress Chinese file name test for OSX in tramp-tests.el
4317         * test/automated/tramp-tests.el (tramp--test-utf8):
4318         Remove instrumentation.  Suppress Chinese file name test for OSX.
4320 2016-01-07  Glenn Morris  <rgm@gnu.org>
4322         * admin/admin.el (set-version): Also handle the NEWS file.
4324 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
4326         apropos-library: Skip obvious duplicates; don't error on generics
4328         * lisp/apropos.el (apropos-library): Skip "was an autoload"
4329         entries, to avoid obvious duplicates.  For each cl-defmethod
4330         entry, take just its function symbol (bug#21422).
4332 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
4334         Add project-find-file and project-or-external-find-file
4336         * lisp/minibuffer.el (completion-category-defaults):
4337         Add `project-file' category.
4339         * lisp/progmodes/project.el (project-find-file)
4340         (project-or-external-find-file): New commands.
4341         (project--find-file-in): New private function.
4343         * lisp/progmodes/xref.el (xref-collect-matches): Use
4344         `expand-file-name' on DIR, to expand the tildes.
4345         (xref--find-ignores-arguments): Extract from
4346         `xref--rgrep-command'.
4348 2016-01-06  Leo Liu  <sdl.web@gmail.com>
4350         Add defvar-local to lisp-imenu-generic-expression
4352         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
4353           defvar-local.
4355 2016-01-06  Leo Liu  <sdl.web@gmail.com>
4357         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
4359         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
4360           Don't declare (indent 1).
4362 2016-01-06  Glenn Morris  <rgm@gnu.org>
4364         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
4366 2016-01-06  Glenn Morris  <rgm@gnu.org>
4368         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
4370         Avoid specifying the length of a time object (it has not been "2"
4371         for some time).
4373 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
4375         Properly encode/decode base64Binary data in SOAP
4377                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
4378                 base64Binary value as utf-8.
4379                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
4381 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
4383         Obey coding-system-for-write when writing stdout/stderr in batch
4385         * src/print.c (printchar_to_stream):
4386         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
4387         a non-nil value, use it to encode output in preference to
4388         locale-coding-system.  See the discussions in
4389         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
4390         for the details.
4392         * doc/lispref/os.texi (Terminal Output): Document how to send
4393         non-ASCII text via 'send-string-to-terminal'.
4394         (Batch Mode): Document how text written to standard streams is
4395         encoded.  Fix inaccuracy regarding which output streams are used
4396         by output functions in batch mode.
4398 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
4400         * doc/misc/efaq.texi (Packages that do not come with Emacs):
4401         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
4402         <chenggao@royau.me> in
4403         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
4405 2016-01-05  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
4407         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
4409         Fix backslash.  (Bug#22224)
4411 2016-01-05  Federico Beffa  <beffa@ieee.org>  (tiny change)
4413         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
4415         Make it actually work.  (Bug#22265)
4417 2016-01-05  Alan Mackenzie  <acm@muc.de>
4419         Remove function wrongly on AWK Mode value of context fontification hook.
4421         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
4422         swap order of entries so that awk's entry isn't superseded by the default.
4424         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
4425         to handle nil value of c-before-context-fontification-functions.
4427 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
4429         * src/buffer.c: Stick with ASCII in doc string.
4431 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
4433         Reword transient-mark-mode doc string
4435         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
4436         The value 'lambda (literally) can be interpreted as (quote lambda),
4437         which is not intended here; we want just the lambda symbol.
4439 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
4441         Update doc string of 'selective-display'
4443         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
4444         using it with the value of 't' is obsolete.  (Bug#1092)
4446 2016-01-05  Alan Mackenzie  <acm@muc.de>
4448         Make C++ buffers writeable when writing their initial text properties.
4450         This is a correction to yesterday's CC Mode patch.
4452         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
4453         c-save-buffer-state around the function rather than a mere `let'.
4455 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
4457         Additional changes for "make check-expensive"
4459         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
4460         Explain make target `check-expensive'.
4462         * etc/NEWS: Mention new make target `check-expensive'.
4464         * test/automated/Makefile.in (check-doit): New target.
4465         (check, check-expensive): Use it.
4467 2016-01-04  Alan Mackenzie  <acm@muc.de>
4469         Apply text properties for <, > in new after-change function (C++ Java Modes).
4471         These are category/syntax-table properties to give < and > paren syntax.
4472         Also apply certain `c-type' text properties to the insides of <..> constructs
4473         to ensure that identifiers contained by them get fontified.  This patch fixes
4474         bug #681.
4476         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
4477         after-change action.
4479         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
4480         change region to include <s and >s which might not be already marked as
4481         parens, rather than just when paren text properties are removed.
4482         (c-restore-<>-properties): New after-change function, which applies text
4483         properties marking < and > with paren syntax.
4485         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
4486         properties are applied to the interiors of <...> constructs, to ensure
4487         fontification of identifiers there.
4489         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
4490         c-restore-<>-properties to this list for C++ and Java.
4492         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
4493         c-before-font-lock-functions, exclude c-restore-<>-properties from the
4494         functions invoked.
4495         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
4496         to allow modification by before-change functions.
4497         (c-after-change): Amend c-new-END here, rather than initializing it and
4498         c-new-BEG.
4500 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
4502         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
4504 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
4506         Introduce check-expensive tests.
4508         * Makefile.in (check-expensive):
4509         * test/automated/Makefile.in (check-expensive): New target.
4511         * test/automated/auto-revert-tests.el
4512         (auto-revert-test01-auto-revert-several-files):
4513         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
4514         * test/automated/tramp-tests.el (tramp-test26-process-file)
4515         (tramp-test27-start-file-process, tramp-test28-shell-command)
4516         (tramp-test29-vc-registered)
4517         (tramp-test31-special-characters-with-stat)
4518         (tramp-test31-special-characters-with-perl)
4519         (tramp-test31-special-characters-with-ls)
4520         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
4521         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
4522         (tramp-test35-unload): Tag the tests as :expensive-test.
4524 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
4526         shr-tag-video bug fix
4528         * shr.el (shr-tag-video): Protect against the `poster' being
4529         empty.
4531 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
4533         Minor fixes in tramp-tests.el
4535         * test/automated/tramp-tests.el (tramp-test26-process-file):
4536         Move point properly.
4537         (tramp-test29-vc-registered): Work with relative file names.
4539 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
4541         Ensure redisplay when 'truncate-lines' is set
4543         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
4544         (Bug#22303)
4546 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
4548         Fix a doc string of 'transient-mark-mode'
4550         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
4551         "lambda" in doc string from becoming a link to lambda expressions.
4553 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
4555         MS-Windows followup to latest gnulib update
4557         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
4559 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
4561         Spelling fix
4563 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
4565         Do secure signed Bcc handling
4567         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
4568         (bug#18718).
4570 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
4572         Avoid stdio in SIGINT handler
4574         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
4575         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
4576         * lib/ignore-value.h: New file, from gnulib.
4577         * src/keyboard.c: Include it.
4578         (write_stdout, read_stdin): New functions.
4579         (handle_interrupt): Use them instead of printf and getchar,
4580         and avoid fflush when handling signals.
4582 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
4584         * doc/misc/texinfo.tex: Revert unwanted copyright change.
4586 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
4588         * lisp/align.el (align): Simplify a lambda
4590         * lisp/align.el (align): Fix arg order in call to `align-region'
4592 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
4594         Fix compilation next-error in buffers with selective-display
4596         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
4597         function.
4598         (compilation-internal-error-properties)
4599         (compilation-next-error-function, compilation-set-window): Use
4600         it.  (Bug#1092)
4602 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
4604         * nsm.el (nsm-check-protocol): Fix typo in the message.
4606 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
4608         Add SHA1 warnings for high network security settings
4610         * nsm.el (nsm-check-protocol): When using high security, warn
4611         about SHA1 certificates, which are now believed to be open to
4612         spoofing.
4614 2016-01-02  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
4616         Refactor mml-smime.el, mml1991.el, mml2015.el
4618         (Maybe this is the last merge from Gnus git to Emacs git)
4620         Cf. discussion on ding mailing list, messages in
4621         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
4622         Common code from the three files mml-smime.el, mml1991.el, and
4623         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
4624         to gnus-util.el.
4626         The code is supported by test cases with necessary test keys.
4628         Documentation in message.texi is updated.
4630         * doc/misc/message.texi (Security, Using S/MIME):
4631         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
4632         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
4633         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
4635         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
4636         New functions.
4638         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
4639         (epa--select-keys): Autoload.
4640         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
4641         (mml-secure-openpgp-signers): New user option;
4642         make mml1991-signers and mml2015-signers obsolete aliases to it.
4643         (mml-secure-smime-signers): New user option;
4644         make mml-smime-signers an obsolete alias to it.
4645         (mml-secure-openpgp-encrypt-to-self): New user option;
4646         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
4647         aliases to it.
4648         (mml-secure-smime-encrypt-to-self): New user option;
4649         make mml-smime-encrypt-to-self an obsolete alias to it.
4650         (mml-secure-openpgp-sign-with-sender): New user option;
4651         make mml2015-sign-with-sender an obsolete alias to it.
4652         (mml-secure-smime-sign-with-sender): New user option;
4653         make mml-smime-sign-with-sender an obsolete alias to it.
4654         (mml-secure-openpgp-always-trust): New user option;
4655         make mml2015-always-trust an obsolete alias to it.
4656         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
4657         New user options.
4658         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
4659         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
4660         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
4661         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
4662         (mml-secure-passphrase-callback, mml-secure-check-user-id)
4663         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
4664         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
4665         (mml-secure-fingerprint, mml-secure-filter-keys)
4666         (mml-secure-normalize-cust-name, mml-secure-select-keys)
4667         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
4668         (mml-secure-self-recipients, mml-secure-recipients)
4669         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
4671         * lisp/gnus/mml-smime.el: Require epg;
4672         refactor declaration and autoloading of epg functions.
4673         (mml-smime-use): Doc fix.
4674         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
4675         Obsolete.
4676         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
4677         Use format instead of gnus-format-message.
4678         (mml-smime-epg-secret-key-id-list): Remove variable.
4679         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
4680         (mml-smime-epg-find-usable-secret-key): Remove functions.
4681         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
4683         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
4684         (mml1991-passphrase-cache-expiry): Obsolete.
4685         (mml1991-epg-secret-key-id-list): Remove variable.
4686         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
4687         (mml1991-epg-find-usable-secret-key): Remove functions.
4688         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
4690         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
4691         (mml2015-passphrase-cache-expiry): Obsolete.
4692         (mml2015-epg-secret-key-id-list): Remove variable.
4693         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
4694         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
4695         (mml2015-epg-find-usable-secret-key): Remove functions.
4696         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
4697         (mml2015-epg-encrypt): Refactor.
4699 2016-01-02  Glenn Morris  <rgm@gnu.org>
4701         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
4703         Explicitly ignore case.  (Bug#22262)
4705 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
4707         (semantic-symref-derive-find-filepatterns): Return a list
4709         * lisp/cedet/semantic/symref/grep.el
4710         (semantic-symref-derive-find-filepatterns): Return a list.
4711         (semantic-symref-perform-search): Quote the result here once and for all.
4713 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
4715         Fix xref-find-references on MS-Windows
4717         * lisp/cedet/semantic/symref/grep.el
4718         (semantic-symref-derive-find-filepatterns): Use
4719         'shell-quote-argument' instead of manually quoting in a way that
4720         only works with Posix shells.  (Bug#22289)
4722 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
4724         Document new features of tildify-mode
4726         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
4727         (tildify-mode): Spelling fixes in doc strings.
4729         * etc/NEWS: Reformat the tildify-mode entry.
4731 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
4733         Document new features of Whitespace mode
4735         * doc/emacs/display.texi (Useless Whitespace): Document
4736         'whitespace-toggle-options' and the new 'big-indent' style.
4737         Document 'whitespace-big-indent-regexp'.  Document the Global
4738         Whitespace mode.
4740 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
4742         Improve documentation of new Hide-IfDef features
4744         * etc/NEWS: Expand and reword Hide-IfDef section.
4746 2016-01-02  Leo Liu  <sdl.web@gmail.com>
4748         Fix regression in font-locking cl-assert and cl-check-type
4750         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
4751           el-errs-re.
4753 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
4755         Spelling and grammar fixes
4757 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
4759         Fix copyright years by hand
4761         These are dates that admin/update-copyright did not update, or
4762         updated incorrectly.
4764 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
4766         Update copyright year to 2016
4768         Run admin/update-copyright.
4770 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
4772         Merge from gnulib
4774         This mostly just updates copyright dates of gnulib files.
4775         It also updates to the latest version of texinfo.tex.
4777 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
4779         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
4781 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
4783         Port chart.el methods to cl-generic.
4785         cl-call-next-method cannot be used inside EIEIO's defmethod.
4786         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
4787         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
4788         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
4789         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
4790         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
4791         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
4793 2015-12-31  Brian Burns  <bburns.km@gmail.com>
4795         Add nt/INSTALL.W64 build instructions
4797         * nt/INSTALL.W64: New file.
4798         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
4800 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
4802         Add new input method 'programmer-dvorak'
4804         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
4805         input method.
4807         * etc/NEWS: Mention it.
4809 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
4811         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
4813         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
4814         original M-TAB binding in a buffer-local variable.
4815         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
4816         if that is recorded, when point is in a place where flyspell
4817         should not be active (e.g., because the user turned on
4818         'flyspell-prog-mode').  (Bug#18533)
4820 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
4822         Fix EWW rendering of long RTL lines
4824         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
4825         of the selected window before filling its lines.  (Bug#22250)
4827 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
4829         fix  bug#21054
4831         * ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
4833 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4835         Clean up cairo printing code
4837         * src/gtkutil.c (xg_get_page_setup): Use listn.
4838         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
4839         decode_window_system_frame and FRAME_VISIBLE_P.
4840         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
4841         of Fdisplay.
4842         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
4843         instead of Fdisplay.  Temporarily unblock_input around QUIT.
4845 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4847         Add handle_user_signal_hook
4849         * src/keyboard.h (handle_user_signal_hook): New declaration.
4850         * src/keyboard.c (handle_user_signal_hook): New variable.
4851         (handle_user_signal): Call it.
4853 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4855         Avoid writing to purespace
4857         * src/alloc.c (Fmake_string): Don't write to empty string contents.
4858         (allocate_vector): Don't write to empty vector size.
4859         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
4860         Don't call unnecessary XSETCAR or XSETCDR.
4861         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
4862         write to empty string size_byte.
4864 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4866         Remove unused variable
4868         * lisp/international/mule-cmds.el: Remove unused variable
4869         `mac-system-coding-system'.
4871 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4873         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
4875 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4877         Use posix_openpt instead of openpty on Darwin
4879         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
4880         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
4881         Darwin-specific definitions.  Use posix_openpt instead.
4883 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
4885         Document support for ':documentation' in Lisp mode
4887         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
4888         (lisp-string-after-doc-keyword-p)
4889         (lisp-font-lock-syntactic-face-function): Add doc strings.
4891 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
4893         Document new features of TeX mode
4895         * doc/emacs/text.texi (TeX Print): Document
4896         'tex-print-file-extension'.
4897         * doc/emacs/programs.texi (Misc for Programs): Document support
4898         for Prettify Symbols mode in TeX mode.
4900 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
4902         Clarify docs of hscroll in RTL text
4904         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
4905         meaning of a window's horizontal scroll amount for RTL paragraphs.
4907 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
4909         Fix rendering of HTML pages that use character composition
4911         * src/indent.c (Fvertical_motion): Fix the case when point starts
4912         in the middle of a composition, as in shr-vertical-motion.
4913         (Bug#22250)
4915 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
4917         Avoid some compiler warnings in w32.c
4919         * src/w32.c (codepage_for_filenames, crlf_to_lf)
4920         (ansi_encode_filename, socket_to_fd, sys_write)
4921         (check_windows_init_file): Avoid compiler warnings about
4922         differences in pointer signedness.
4924 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
4926         Undo ill-advised change
4928         * lisp/progmodes/xref.el (xref-collect-matches): Undo
4929         ill-advised change.  The hits come in the order that `find'
4930         produces them in, which isn't alphabetical.
4932 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
4934         Unbreak completion in python-mode buffers
4936         * lisp/progmodes/python.el (python-shell-completion-at-point):
4937         Unbreak in python-mode buffers.
4939 2016-01-09  Andrew Hyatt  <ahyatt@gmail.com>
4941         Adding example replies to bug-triage.
4943         * admin/notes/bug-triage: Added example replies. Also, as requested,
4944           making the process notes into more of a checklist.
4946 2016-01-08  Andrew Hyatt  <ahyatt@gmail.com>
4948         Rename the notes/admin/triage file to bug-triage.
4950         * CONTRIBUTE: Change reference to the triage file name.
4951         * admin/notes/triage: Rename file to admin/notes/bug-triage.
4953 2016-01-07  Glenn Morris  <rgm@gnu.org>
4955         Allow creation of loaddefs files without timestamps.
4957         * lisp/emacs-lisp/autoload.el (autoload-timestamps): New variable.
4958         (autoload-generate-file-autoloads, update-directory-autoloads):
4959         If autoload-timestamps is nil, write "t" instead of file timestamp.
4960         (autoload-find-destination, update-directory-autoloads):
4961         If timestamp is "t", use the modtime of the output file instead.
4963 2016-01-06  Glenn Morris  <rgm@gnu.org>
4965         Doc tweaks.
4967         * lisp/calendar/cal-hebrew.el (diary-hebrew-list-entries):
4968         * lisp/calendar/cal-iso.el (calendar-iso-to-absolute)
4969         (calendar-iso-from-absolute):
4970         * lisp/calendar/cal-tex.el (cal-tex-comment):
4971         * lisp/calendar/solar.el (calendar-time-display-form): Doc tweaks.
4973 2016-01-06  Glenn Morris  <rgm@gnu.org>
4975         Build tweaks related to tags files.
4977         * lib-src/Makefile.in (tagsfiles): New variable.
4978         (TAGS): Also depend on the source files.  Use our own etags program.
4979         * lisp/Makefile.in (ETAGS): Add EXEEXT.
4980         (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
4981         Remove.
4982         (tagsfiles): New, replacing lisptagsfiles1 etc.
4983         Remove irrelevant source files here rather than in the TAGS rule.
4984         (${ETAGS}): New rule.
4985         (TAGS): Also depend on the etags executable.
4986         * lwlib/Makefile.in (EXEEXT): New, set by configure.
4987         (ETAGS): Add EXEEXT.
4988         (${ETAGS}): New rule.
4989         (ctagsfiles): Use "wildcard".
4990         (TAGS): Also depend on the etags executable.
4991         * nt/Makefile.in (ETAGS, tagsfiles): New variables.
4992         (${ETAGS}): New rule.
4993         (TAGS): Fix dependencies.
4994         * oldXMenu/Makefile.in (EXEEXT): New, set by configure.
4995         (ETAGS): New variable, replacing $TAGS.  Use our own etags program.
4996         Remove "-t" argument.
4997         (${ETAGS}): New rule.
4998         (tagsfiles): New variable.
4999         (TAGS): New rule, with proper dependencies.
5000         * src/Makefile.in (ETAGS): Add EXEEXT.  Add a build rule.
5001         (ctagsfiles1, ctagsfiles2): Use "wildcard".
5002         (ctagsfiles3): Remove.
5003         (TAGS): Depend on etags.
5004         (../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
5005         directories decide if updates are needed.
5007 2016-01-06  Glenn Morris  <rgm@gnu.org>
5009         * lisp/Makefile.in (CAL_SRC): Skip calendar.el.
5011 2016-01-06  Glenn Morris  <rgm@gnu.org>
5013         * test/lisp/emacs-lisp/package-tests.el
5015         (package-test-macro-compilation): Fixup branch merge.
5017 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
5019         Fix fallout from merging emacs-25 branch in test/
5021         * .gitignore: Update for the new place of biditest.txt.
5022         * test/automated/: Directory removed.  All files moved to their
5023         proper places.
5024         * test/etags/: Directory removed.  All files moved to their proper
5025         places.
5026         * test/automated/url-parse-tests.el: File removed; it was an exact
5027         copy of the same file in test/lisp/url/.
5028         * test/automated/url-expand-tests.el: Moved to test/lisp/url/.
5030 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
5032         Spelling fixes.
5034 2016-01-04  Daniel Colascione  <dancol@dancol.org>
5036         Let users disable unsafe signal handling code
5038         * src/keyboard.c (syms_of_keyboard): New user variables
5039         `attempt-stack-overflow-recovery' and
5040         `attempt-orderly-shutdown-on-fatal-signal'.
5041         * src/sysdep.c (stack_overflow): Check
5042         `attempt-stack-overflow-recovery'.
5043         * src/emacs.c (terminate_due_to_signal): Check
5044         `attempt-orderly-shutdown-on-fatal-signal'.
5046 2016-01-03  Michael Albinus  <michael.albinus@gmx.de>
5048         * configure.ac: Add error message for gfile on Nextstep.
5050 2016-01-03  John Wiegley  <johnw@newartisans.com>
5052         Merge branch 'emacs-25-merge'
5054 2016-01-02  Vincent Belaïche  <vincentb1@users.sourceforge.net>
5056         Align textually on fix done for emacs-25 branch for bug#21054
5058         * lisp/ses.el (ses-check-curcell): Suppress ``temporary fix'' comment,
5059         and useless `(if t ...)' in order to align textually on fix done for
5060         emacs-25 branch for bug#21054.
5062 2016-01-02  K. Handa  <handa@gnu.org>
5064         support rendering of wider range of combinging characters by ftfont backend
5066         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
5067         supports rendering of combining characters, call
5068         font-shape-gstring.
5070         * src/font.c (Ffont_get): Handle `combining-capability' property.
5071         (syms_of_font): New symbol ":combining-capability'.
5073         * src/font.h (struct font_driver): New member combining_capability.
5075         * src/ftfont.c: Include "category.h".
5076         (ftfont_driver): Initialize combining_capability to
5077         ftfont_combining_capability.
5078         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
5079         FLT in advance.
5080         (ftfont_combining_capability): New function.
5082 2016-01-01  Andrew Hyatt  <ahyatt@gmail.com>
5084         Add notes on bug triage procedure
5086         * CONTRIBUTE: In section on the issue tracker, point to new triage file.
5087         * admin/notes/triage: New file explaining triage procedure.
5089 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
5091         Correct ses-rename-cell cursor-intangible text prop updating.
5093         There were two problems:
5095         - First ses-rename-cell has to work when called non interactively
5096           (with non-nil CELL argument), so in this case the start pos of
5097           put-text-property cannot be plainly (point), you need a
5098           ses-goto-print call before
5100         - Second, the range itself was computed erronously, only the first
5101           char was affected instead of the full cell width. This was not
5102           noticeable prior to changes (Deprecate `intangible' and
5103           `point-entered' properties) made by Stefan on 2015-04-13T19:51:15Z
5105         * lisp/ses.el (ses-rename-cell): Correct computation of position range
5106         to which the 'cursor-intangible text property has to be set to cell
5107         new name.
5109 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
5111         Don't fake empty cells value by "" when printing with a lambda.
5113         When using a lambda expression printer function the user should be
5114         free to format differently a really empty cell, ie. containing nil,
5115         from a cell containing an empty string "".
5117         * ses.el (ses-call-printer): Replace `(or value "")' by just `value'
5118         in the case of a lambda expression printer function.
5120         * ses.texi (Printer functions): Add example and description about
5121         lambda expression printer function handling all the possible values,
5122         including unexpected ones.
5124 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
5126         Quick temporary hack to fix curcell refreshing.
5128         The problem was caused by change: 2015-04-13 Deprecate `intangible'
5129         and `point-entered' properties. The problem is that this change has
5130         removed the (setq ses--curcell t) setting in the ses-command-hook
5131         function.
5133         * ses.el (ses-check-curcell): replace `(eq ses--curcell t)' by just `t' as
5134         a condition to call function `ses-set-curcell'. Comment this as a quick
5135         temporary hack to make it work, as I don't know yet whether a definite
5136         correction would be to make the ses-set-curcell at every ses-check-curcell,
5137         or to revert to the previous approach, ie marking ses--curcell as out-of-date
5138         at every potentially cursor motion command.
5140 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5142         Restrictive URL checking tweaks
5144         * lisp/net/eww.el (eww): Check whether the domain is
5145         restrictive instead of the string
5146         (http://македонија.icom.museum is restrictive even if each
5147         part is from a different script).
5149 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5151         New function `puny-highly-restrictive-domain-p'
5153         * lisp/net/puny.el (puny-highly-restrictive-string-p): Rename.
5154         (puny-highly-restrictive-domain-p): New function.
5156 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5158         eww build fix (require puny)
5160 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5162         Transform non-restrictive domains to punycode for display
5164         * lisp/net/eww.el (eww): Check whether the domain is Highly
5165         Restrictive in the Unicode IDNA sense.
5167 2015-12-30  John Wiegley  <johnw@newartisans.com>
5169         Merge emacs-25 into master (using imerge)
5171 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
5173         Fix typos in CC Mode manual
5175         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
5176         typos.  (Bug#22267)
5178 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
5180         Avoid assertion violations in compact_font_cache_entry
5182         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
5183         avoid assertion violation in ASIZE.  (Bug#22263)
5185 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
5187         Fix filling text with bidirectional characters in shr.el
5189         * lisp/net/shr.el (shr-insert-document): Bind
5190         bidi-display-reordering to nil while filling lines.  This is
5191         required for when a line includes characters whose bidi
5192         directionality is opposite to the base paragraph direction,
5193         because columns are counted in the logical order.  (Bug#22250)
5195 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
5197         Further Unicode restrictive fixups
5199         * puny.el (puny-highly-restrictive-p): Include the extra
5200         identifier characters from table 3.
5202 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
5204         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
5206 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
5208         Sync with Tramp 2.2.13
5210         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
5212         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
5213         Use `tramp-compat-funcall'.
5215         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
5216         Make `split-string' call compatible with older Emacsen.
5218         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
5220 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
5222         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
5224 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
5226         Mention that tls.el is secure by default, and will fail
5228 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
5230         Make tls.el use trustfiles by default
5232         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
5233         (open-tls-stream): Insert the trustfile by looking at
5234         `gnutls-trustfiles'.
5236 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
5238         Refactor out gnutls-trustfiles
5240         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
5242 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
5244         Remove --insecure from gnutls-cli invocation
5246         * tls.el (tls-program): Default to using secure TLS
5247         connections (bug#19284).
5249 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
5251         Add a new function to say whether a string is restrictive
5253         * puny.el (puny-highly-restrictive-p): New function.
5255 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
5257         Spelling fix
5259 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
5261         Port report-emacs-bug to deterministic builds
5263         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
5264         recent "built on" change to deterministic builds where
5265         emacs-build-system will be nil.  See:
5266         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
5268 2015-12-28  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
5270         Fix URL auth error message
5272         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
5273         message more correct (bug#20069).
5275 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
5277         Mention the new puny.el library
5279 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
5281         IDNA-related fixes for the URL library
5283         * lisp/url/url-http.el (url-http-create-request): IDNA-encode
5284         the Host: header.
5286         * lisp/url/url-util.el (url-encode-url): Don't hex-encode
5287         domain names, but leave them as UTF-8, so that they can be
5288         IDNA-encoded later when contacting the host.
5290 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
5292         IDNA-encode all domain names in `open-network-stream'
5294         * network-stream.el (open-network-stream)
5295         (network-stream-open-plain, network-stream-open-starttls):
5296         IDNA-encode all domain names, if needed.
5298 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
5300         Fix puny-encoding all-non-ASCII domains
5302         * puny.el (puny-encode-string): Fix the all-non-ASCII encoding case.
5304 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
5306         * lisp/net/shr.el (shr-next-link): Don't bug out on adjacent links.
5308 2015-12-28  Tom Tromey  <tom@tromey.com>
5310         set :safe on css-indent-offset
5312         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
5314 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
5316         * eww.el (eww-mode): Remove superfluous bidi reset.
5318 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
5320         Make chunked encoding trailer detection more compliant
5322         * lisp/url/url-http.el
5323         (url-http-chunked-encoding-after-change-function): Make
5324         trailer detection more compliant (bug#16345).
5326 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
5328         Reconnect erc even on server errors
5330         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Try to
5331         reconnect even if a server error has occurred (bug#18527).
5333 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
5335         Fix punycode short circuit logic
5337         * puny.el (puny-encode-domain): Fix short-circuit logic.
5339 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
5341         Fix Bug#10873 in `report-emacs-bug'
5343         * lisp/mail/emacsbug.el (report-emacs-bug): If
5344         `report-emacs-bug-no-explanations' is nil, make sure we can show
5345         mail and warnings buffer on this frame (Bug#10873).
5347 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
5349         IDNA speed up
5351         * puny.el (puny-encode-domain): Make the common non-IDNA case faster
5353 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
5355         Add IDNA domain encode/decode functions
5357         * puny.el (puny-decode-domain): New function.
5358         (puny-encode-domain): Ditto.
5359         (puny-decode-digit): Fix digit decoding error.
5361 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
5363         Rename idna.el to puny.el
5365         * puny.el: Renamed from idna.el to avoid name collisions with
5366         the external idna.el library.
5368 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
5370         Always reset the bidi direction
5372         * eww.el (eww-display-html): Always reset the bidi direction
5373         to `left-to-right' (bug#22257).
5375 2015-12-28  Alan Mackenzie  <acm@muc.de>
5377         Allow line comments ending with escaped NL to be continued to the next line.
5379         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
5381         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
5382         (forw-comment, back-comment): On encountering an end of comment character,
5383         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
5385         * doc/lispref/syntax.texi (Control Parsing): Describe
5386         `comment-end-can-be-escaped'.
5388         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
5390         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
5392 2015-12-28  Katsumi Yamaoka  <yamaoka@jpl.org>
5394         lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Keep old Emacsen compatibility
5396         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe):
5397         Don't use split-string with 4th arg for old Emacsen compatibility.
5399 2015-12-27  Dmitry Gutov  <dgutov@yandex.ru>
5401         Rename project-library-roots to project-external-roots
5403         * lisp/progmodes/project.el (project-library-roots): Rename to
5404         project-external-roots.
5405         (project-library-roots-function): Rename to
5406         project-vc-external-roots-function.  Only use it in the VC
5407         backend, for now.  Update project-external-roots accordingly.
5408         (project-vc-library-roots): Remove.
5409         (project-or-libraries-find-regexp):
5410         Rename to project-or-external-find-regexp.
5412         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
5413         Rename to elisp-load-path-roots.
5415         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
5416         an anonymous function for the default value of
5417         project-vc-external-roots-function.
5419 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
5421         * idna.el (idna-decode-string-internal): Implement decoding.
5423 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
5425         Further IDNA tweaks
5427         (idna-encode-string): Make idna-encode-string safe for
5428         non-ASCII use.
5430 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
5432         Clean up the code slightly
5434 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
5436         Added basic idna encoding support
5438         * lisp/net/idna.el: New file.
5440 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
5442         Disconnection fixes for erc
5444         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Don't
5445         reconnect if the user has disconnected explicitly (bug#4589).
5447 2015-12-27  Thomas Riccardi  <riccardi.thomas@gmail.com>  (tiny change)
5449         Further erc asynch fixes
5451         * lisp/erc/erc-backend.el (erc-process-sentinel-2): Make
5452         erc-server-connect to return even if the connection is not
5453         ready.  Then erc-open and erc-server-reconnect do the
5454         same. (bug#5650).
5456 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
5458         Make erc connect asynchronously
5460         * lisp/erc/erc-backend.el (erc-server-reconnect): Use it to
5461         reconnect asynchronously.
5463         * lisp/erc/erc-backend.el (erc-open-network-stream): New function (bug#5650).
5465 2015-12-27  Deniz Dogan  <deniz@dogan.se>
5467         Clear erc user list upon disconnection
5469         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
5470         lists upon disconnection.  This prevents invalid channel
5471         user lists when reconnecting (bug#10947).
5473 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
5475         Don't bug out in erc after waking from sleep
5477         * erc-backend.el (erc-server-send-ping): If the server has
5478         closed connection, this may already have been detected and
5479         `erc-server-last-received-time' has been set to nil (bug#13608).
5481 2015-12-27  David Edmondson  <dme@dme.org>
5483         Proxy error in erc with multiple clients
5485         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
5486         generated when multiple IRC clients talk to a single IRC proxy
5487         (bug#19034).
5489 2015-12-27  Dima Kogan  <dima@secretsauce.net>
5491         Ensure that we don't have several timers in erc
5493         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
5494         for existing timers in the alist before adding new ones.  If a
5495         timer already exists, it is cancelled and
5496         overwritten. (bug#19292).
5498 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
5500         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
5501         (bug#18718).
5503 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
5505         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
5506         at the start of the buffer, not at the end (bug#20496).
5508 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
5510         * lisp/net/eww.el (eww-setup-buffer): Restore left-to-right defaults.
5512 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
5514         Don't join erc channels doubly
5516         * erc-join.el (erc-autojoin-channels): Don't join channels
5517         more than once (if you have several nicks) (bug#20695).
5519 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
5521         Avoid leaving "ghost" of mouse pointer on MS-Windows
5523         * src/w32term.c (frame_set_mouse_pixel_position):
5524         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
5525         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
5526         * src/w32term.c (frame_set_mouse_pixel_position): Include
5527         w32common.h.
5529 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
5531         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Fix typo in last check-in.
5533 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
5535         Identify unsafe combinations of Bcc and encryption
5537         * lisp/gnus/gnus-util.el (gnus-subsetp): New function
5538         * lisp/gnus/mml-sec.el (mml-secure-safe-bcc-list): New variable
5539         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): New function
5541 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
5543         Fix auth source lookups from erc with port numbers
5545         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
5546         numbers (bug#20541).
5548 2015-12-27  Fran Litterio  <flitterio@gmail.com>
5550         Run erc-kill-channel-hook always on exit
5552         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
5553         when erc-kill-queries-on-quit is set (bug#21187).
5555 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
5557         Spelling fix
5559         * test/automated/url-parse-tests.el:
5560         (url-generic-parse-url/same-document-reference):
5561         Rename from url-generic-parse-url/same-decument-reference.
5563 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
5565         Reword initial *scratch* for brevity, appearance
5567         * lisp/startup.el (initial-scratch-message):
5568         Reword to avoid apostrophes, and to make it shorter.
5569         See the thread starting in:
5570         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
5572 2015-12-26  Leo Liu  <sdl.web@gmail.com>
5574         Add ert-deftest to lisp-mode.el
5576         * lisp-mode.el (lisp-imenu-generic-expression,
5577           lisp-el-font-lock-keywords-1): Add ert-deftest.
5579 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
5581         Mark imap changes as not needing doc changes
5583         * imap.el (imap-ssl-open): Remove
5585 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
5587         Use built-in encryption in imap.el
5589         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
5590         (imap-starttls-open): Use open-network-stream instead of starttls.el.
5591         (imap-tls-open): Use open-network-stream instead of tls.el.
5593 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
5595         Don't try using /bin/sh in artist.el on MS-Windows
5597         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
5598         New function.
5599         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
5600         (Bug#20167)
5602 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
5604         Always define gmalloc etc. in src/gmalloc.c
5606         This is a work-around to prevent the compiler from using semantic
5607         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
5608         with -O2 replaces most of calloc's definition by a call to calloc;
5609         see Bug#22085.
5610         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
5611         (aligned_alloc, free): Do not undef.  Instead, define these as
5612         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
5614 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
5616         Fix documentation of browse-url browser-related functions
5618         * lisp/net/browse-url.el (browse-url)
5619         (browse-url-default-browser, browse-url-default-windows-browser)
5620         (browse-url-default-macosx-browser, browse-url-chromium)
5621         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
5622         and NEW-WINDOW arguments in these functions.  (Bug#19421)
5624 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
5626         Propagate Bug#14412 fix to backtrace_eval_unrewind
5628         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
5629         becomes accurate again. This shouldn’t affect behavior.
5630         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
5632 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
5634         Don't produce non-ASCII characters in *scratch*
5636         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
5637         avoid producing non-ASCII characters in the *scratch* buffer's
5638         commentary.
5640 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
5642         Document changes in 'compare-windows'
5644         * lisp/vc/compare-w.el (compare-windows-removed)
5645         (compare-windows-added): Doc fix.
5647         * doc/emacs/files.texi (Comparing Files): Document the changes in
5648         window selection by 'compare-windows'.
5650 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
5652         Document 'vc-annotate-background-mode'
5654         * doc/emacs/maintaining.texi (Old Revisions): Document
5655         'vc-annotate-background-mode'.
5657 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
5659         Document 'vc-region-history'
5661         * doc/emacs/maintaining.texi (VC Change Log): Document
5662         'vc-region-history'.
5664 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
5666         Improve documentation of 'vc-push'
5668         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
5669         improve the documentation of 'vc-push'.
5671         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
5673 2015-12-26  Alain Schneble  <a.s@realize.ch>
5675         Include the tests for the URL parsing fixes
5677 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
5679         Document 'url-user-agent'.
5681         * lisp/url/url-http.el (url-user-agent): Move from here...
5682         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
5683         keep all the URL defcustoms in one place, and also have it defined
5684         whenever the URL library is loaded.
5686         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
5688 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
5690         Document protocols supported by URL library via Tramp
5692         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
5693         supported via Tramp.
5694         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
5695         Tramp.
5697 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
5699         Document changes in Shell-script mode
5701         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
5702         the 'sh-shell' file-local variable.
5703         (top level): Add an auto-load form to avoid byte-compiler warning
5704         about 'comint-send-string'.
5706 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
5708         Fix documentation of 'ses-define-local-printer'
5710         * doc/misc/ses.texi (Printer functions): Fix whitespace between
5711         sentences and punctuation.  Add an index entry for
5712         'ses-define-local-printer'.
5714 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
5716         Document 'ert-summarize-tests-batch-and-exit'
5718         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
5719         'ert-summarize-tests-batch-and-exit'.
5721 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
5723         Avoid assertion violation in unbind_to
5725         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
5726         if we get here with an object that is not a symbol.  (Bug#14412)
5728 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
5730         Don't treat /foo/bar:mumble as ange-ftp address
5731         * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
5732         only in the first component.  (bug#5362)
5734 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
5736         Make sure *scratch* etc. use forward slashes in its default-directory
5738         * lisp/startup.el (normal-top-level): On MS-Windows, convert
5739         backslashes to forward slashes while decoding default-directory
5740         of the initially-created buffers.
5742 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
5744         Restore info about the build host in bug reports
5746         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
5747         which Emacs was built.  This is important information for
5748         investigating bug reports reported by users who don't build their
5749         Emacs.
5751 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
5753         Fix bootstrap broken by changes related to OS X file-name encoding
5755         * lisp/international/ucs-normalize.el (eval-when-compile): Make
5756         sure char-code-property-alist includes elements that allow access
5757         to 'decomposition' and 'canonical-combining-class' Unicode
5758         properties, as compiling ucs-normalize.el requires that.
5759         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
5760         only of charprop.el was already loaded.
5762         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
5763         New order-only dependency.
5765 2015-12-25  Leo Liu  <sdl.web@gmail.com>
5767         * lisp/ido.el (ido-add-virtual-buffers-to-list):
5768         Use bookmark-get-filename.
5770 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
5772         Make tramp-test29-vc-registered more robust
5774         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
5775         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
5776         Remove instrumentation.
5778 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5780         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
5782 2015-12-23  Katsumi Yamaoka  <yamaoka@jpl.org>
5784         Fix `gnus-union' so as to behave like `cl-union'
5786         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
5787         Make gnus-union use `equal' to compare items in lists.
5789         * lisp/gnus/gnus-util.el (gnus-union):
5790         Make it behave like cl-union partially.
5792 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
5794         Fix dired.c typo with ptrdiff_t vs Lisp_Object
5796         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
5797         an integer type, fixing a problem introduced in the recent fix for
5798         Bug#22169.
5800 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
5802         Document default process sentinel more prominently
5804         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
5805         defaults for process filter and sentinel.  Provide cross-references.
5806         (Process Information): Provide cross-references to where filters
5807         and sentinels are described.
5808         (Filter Functions): Add an index entry for "default filter".
5809         (Sentinels): Add a few status messages not documented previously.
5810         Resolve the "killed" confusion.  Document and describe the default
5811         sentinel.  (Bug#22220)
5813 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
5815         Fix file-name completion on OS X
5817         * src/dired.c (file_name_completion): Reject false matches due to
5818         file-name-coding-systems that decompose characters when encoding
5819         file names, by comparing decoded file names as well.  (Bug#22169)
5820         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
5822         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
5823         non-nil 'decomposed-characters' property.
5825 2015-12-23  Anders Lindgren  <andlind@gmail.com>
5827         File-name completion of non-ASCII characters on OS X (bug#22169)
5829         The coding system `utf-8-nfd', locally defined in ns-win.el,
5830         didn't provide a :pre-write-conversion method, causing file name
5831         completion of non-ASCII characters to fail.  Solved by using the
5832         `utf-8-hfs' coding system provided by `ucs-normalize'.
5834         * lisp/loadup.el: Load international/ucs-normalize (when building
5835         for ns).
5837         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
5838         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
5839         as the file name coding system.
5841         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
5843 2015-12-22  Tom Tromey  <tom@tromey.com>
5845         Fix bug #18588 by making bug-reference-bug-regexp more lenient
5847         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
5848         "bug NNNN".  (Bug #18588)
5850 2015-12-22  Tom Tromey  <tom@tromey.com>
5852         add some cl-* aliases to lisp-mode imenu
5854         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
5855         cl-defgeneric, and cl-defmethod.
5857 2015-12-22  Tom Tromey  <tom@tromey.com>
5859         Make a variable buffer-local
5861         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
5862         font-lock-syntax-table buffer-local.  (Bug #21627)
5864 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
5866         Fix decoding of text in URLs retrieved by EWW
5868         * lisp/net/eww.el (eww-render): Pass 'charset' to
5869         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
5870         non-nil, to set 'buffer-file-coding-system' of the buffer where we
5871         show the URL.
5872         (eww-display-html, eww-display-raw): Decode the text correctly,
5873         using the charset found in the headers, and defaulting to UTF-8.
5874         If the user told us to use a specific encoding, override the
5875         charset from the headers.  (Bug#22222)
5877 2015-12-22  Alan Mackenzie  <acm@muc.de>
5879         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
5881         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
5882         variable `tmp'.
5883         After a failed search for a matching ">", restore point before continuing.
5885 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
5887         Instrument Tramp tests
5889         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
5890         (tramp--test-utf8): Instrument tests.
5892 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
5894         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
5896         * lisp/simple.el (display-message-or-buffer): Call
5897         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
5898         (Bug#22221).
5900 2015-12-21  Juri Linkov  <juri@linkov.net>
5902         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
5904         (save-places-to-alist, save-place-dired-hook):
5905         Check for dired-subdir-alist.  (Bug#19851)
5907 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
5909         Add FIXME comment re stack overflow and modules
5911 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
5913         Revert some recent emacs-module commentary
5915         Most of the recently-added commentary was incorrect, due to the
5916         possibility of stack overflow.
5918 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
5920         Spelling fix: prefer "cooperate" to "co-operate"
5922 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
5924         Port undo fixes to -fno-common
5926         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
5927         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
5928         (buffer_before_last_command_or_undo):
5929         Declare in keyboard.h, and define in keyboard.c,
5930         instead of assuming the traditional Unix relaxed ref-def linkage.
5932 2015-12-20  Philipp Stephani  <phst@google.com>
5934         Improve commentary for emacs-module.c
5936         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
5937         * src/emacs-module.c (module_non_local_exit_get): Document that we
5938         cannot use the current implementation.
5939         (module_is_not_nil, module_eq): Document assumptions about EQ and
5940         NILP.
5942 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
5944         Suppress test on Mac OS X
5946         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
5947         (tramp--test-utf8): Use it.
5949 2015-12-20  Alan Mackenzie  <acm@muc.de>
5951         Merge branch 'scratch/follow' into emacs-25
5953         This allows Isearch, etc., to work well when Follow Mode is active.
5955 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
5957         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option):
5958         Improve check.
5960 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
5962         Fix last commit
5964         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
5965         with numeric argument.
5967 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
5969         Document new features of Rmail
5971         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
5972         Document new behavior of 'd' and 'C-d' with numeric argument.
5973         (Rmail Display): Document the rendering of HTML MIME parts.
5975 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
5977         Improve documentation of new cl-lib functions
5979         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
5980         Fix wording.
5982 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
5984         Document the new feature of 'minibuffer-with-setup-hook'
5986         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
5987         added to `minibuffer-setup-hook'.
5989 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
5991         Document new features of Font Lock
5993         * doc/lispref/modes.texi (Other Font Lock Variables): Document
5994         'font-lock-flush-function' and 'font-lock-ensure-function'.
5995         (Font Lock Basics): Document the basic fontification functions
5996         referenced in "Other Font Lock Variables".
5998         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
6000 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
6002         Document new features of Rectangle mode
6004         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
6005         rectangle-mark-mode.
6007 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
6009         Manual followup to last change
6011         * doc/lispref/display.texi (Displaying Messages): Sync with the
6012         doc string.  (Bug#22210)
6014 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
6016         Clarify doc string of 'display-message-or-buffer'
6018         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
6019         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
6021 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
6023         * doc/emacs/emacs.texi (Top): Update top-level menus.
6025         * doc/lispref/elisp.texi (Top): Update top-level menus.
6027 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
6029         Document how to avoid file-local variables that aren't
6031         * doc/emacs/custom.texi (Specifying File Variables): Describe how
6032         to prevent Emacs from interpreting unrelated text as file-local
6033         variables.  (Bug#22166)
6035 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
6037         Fix a typo in eterm-color's termcap entry
6039         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
6040         entry.  (Bug#22184)
6042 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
6044         Allow 'browse-url-emacs' visit non-existent URLs
6046         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
6047         signal an error if VISIT is non-nil, to more faithfully emulate
6048         the behavior of 'insert-file-contents'.  (Bug#22160)
6050 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
6052         Remove SunOS 4.x cruft
6054         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
6055         * lib-src/pop.c [sun]: Remove no-longer-needed include.
6056         * lwlib/xlwmenu.c (SUNSO41): Remove.
6058 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
6060         Merge from gnulib
6062         This mostly commentary fixes.
6063         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
6064         * lib/gnulib.mk: Regenerate with new gnulib-tool.
6066 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
6068         Minor fixes in Tramp
6070         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
6071         Reorder ls arguments.
6073         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
6075 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
6077         Make tramp a built-in package
6079         * lisp/finder.el (finder-compile-keywords): Update
6080         `package--builtins' also when Version: keyword is available.
6082         * lisp/net/trampver.el: Add Version: keyword.
6083         (tramp-version): Change it to "2.2.13.25.1", in order to be
6084         compatible with `version-to-list'.
6086 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
6088         * etc/tutorials/TUTORIAL.it: Update and fix typos.  (Bug#22187)
6090 2015-12-18  Alan Mackenzie  <acm@muc.de>
6092         Rename `recenter-group' to `recenter-window-group'
6094         * doc/lispref/windows.texi (Textual Scrolling)
6095         * lisp/window.el (top level, recenter-group)
6096         * lisp/follow.el (follow-mode)
6097         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
6098         `recenter-window-group' and `recenter-group-function' to
6099         `recenter-window-group-function'.
6101 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
6103         Fix vertical-motion in tabulated-list mode
6105         * src/indent.c (Fvertical_motion): When moving from line beginning
6106         to point under line truncation, assume overshoot by one line only
6107         if point actually lies beyond the window's right margin.
6108         (Bug#22194)
6110 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
6112         Don't have help functions call x-display-pixel-width/-height on ttys
6114         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
6115         Don't call x-display-pixel-width/-height on ttys.
6117 2015-12-17  Dmitry Gutov  <dgutov@yandex.ru>
6119         Use 'hg id' in vc-hg-previous-revision
6121         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
6122         Use 'hg id' to retrieve it (bug#22032).
6124 2015-12-17  Alan Mackenzie  <acm@muc.de>
6126         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
6128 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
6130         Fix a typo in the Emacs manual
6132         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
6133         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
6135 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
6137         Fix parsing netrc entries with ports
6139         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
6140         make a list out of 't'.  (Bug#22188)
6142         * test/automated/auth-source-tests.el
6143         (auth-source-test-netrc-parse-entry): New test.
6145 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
6147         Fix typo in Doug Lea malloc configure log
6149         * configure.ac (emacs_cv_var_doug_lea_malloc):
6150         Fix typo that confused the log output of 'configure'.
6152 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
6154         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
6156 2015-12-16  Alan Mackenzie  <acm@muc.de>
6158         * etc/NEWS: Move entry on pcase to correct section
6160         (Accidentally omitted from previous commit)
6162 2015-12-16  Alan Mackenzie  <acm@muc.de>
6164         Add documentation for changes to Show Paren mode.
6166         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
6168         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
6169         options, including the new show-paren-when-point-inside-paren and
6170         show-paren-when-point-in-periphery.
6172         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
6173         Move an entry on pcase to the Lisp Changes section.
6175 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
6177         Document Eldoc changes
6179         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
6181 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
6183         Fix invocation of Python and Guile interpreters from gdb-mi
6185         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
6186         commands for interactive Python and Guile interpreters.
6187         (gdb-send): Recognize various ways of exiting from Python and
6188         Guile interpreters and returning to GDB.  For details, see
6189         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
6190         and http://stackoverflow.com/questions/31514741.
6192 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
6194         Remove attempt to use C11 threads
6196         C11 threads are not needed for Emacs now, and their use is causing
6197         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
6198         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
6199         * configure.ac: Do not check for C11 threads. Remove unnecessary
6200         fiddling with CPPFLAGS when configuring pthreads.
6201         * src/emacs-module.c (main_thread, check_main_thread)
6202         (module_init): Do not worry about C11 threads.
6204 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
6206         Set utf8 encoding with stty in Tramp
6208         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
6209         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
6210         encoding with stty.
6212 2015-12-15  Alan Mackenzie  <acm@muc.de>
6214         Tidy up documentation associated with window groups.
6216         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
6217         Groups".  Correct example function to `window-group-start'.
6218         (Window Start and End, Textual scrolling): Point to the new anchor.  State
6219         that (most of) the args in window group functions have the same meaning as for
6220         the corresponding window primitives.
6222         * doc/lispref/positions.texi (Screen Lines).  Same as above.
6224 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
6226         Complete last commit
6228         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
6229         Move uname check up.  Handle Mac OS X eol encoding.
6231 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
6233         Handle Mac OS X eol encoding in Tramp
6235         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
6236         Handle Mac OS X eol encoding.
6238 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6240         Fix variable name typo in compute_tip_xy
6242         * src/w32fns.c (compute_tip_xy):
6243         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
6244         when `right' is integer.
6246 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>  (tiny change)
6248         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
6250 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
6252         Revert "Fix rx matcher overflow without limiting"
6254         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
6256 2015-12-14  Alan Mackenzie  <acm@muc.de>
6258         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
6260         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
6261         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
6263 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
6265         Fix rx matcher overflow without limiting
6267         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
6268         change to the regexp without imposing a limit on the length of the
6269         options.
6271 2015-12-14  Alan Mackenzie  <acm@muc.de>
6273         Enhance ispell-skip-region-alist by generating part of it at runtime.
6275         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
6276         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
6277         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
6278         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
6279         Include the result of ispell--make-filename-or-URL-re in regexps.
6281 2015-12-14  Glenn Morris  <rgm@gnu.org>
6283         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
6285 2015-12-14  Alan Mackenzie  <acm@muc.de>
6287         Replace GROUP argument in six window primitives by new functions.
6289         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
6290         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
6291         from description of six window functions.  Add in description of new functions
6292         window-group-start, window-group-end, set-window-group-start,
6293         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
6294         together with the six variables indirecting to the pertinent group
6295         functions.
6297         * src/window.c
6298         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
6299         applies to these two files, which added the GROUP argument to six window
6300         primitives.
6302         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
6303         functions.
6305         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
6306         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
6307         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
6308         to window primitives (e.g. window-start) with a GROUP argument by calls to
6309         new functions (e.g. window-group-start).
6311         * lisp/ispell.el (ispell-command-loop): Replace call to
6312         pos-visible-in-window-p with pos-visible-in-window-group-p.
6314         * lisp/window.el (window-group-start, window-group-end)
6315         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
6316         (selected-window-group, move-to-window-group-line): New functions.
6317         (window-group-start-function, window-group-end-function)
6318         (set-window-group-start-function, recenter-group-function)
6319         (pos-visible-in-window-group-p-function, selected-window-group-function)
6320         (move-to-window-group-line-function): New variables.
6322 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
6324         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
6326 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
6328         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
6330 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
6332         Improve regex to not trigger stack overflow
6334         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
6335         order not to trigger a stack overflow in regex matcher with unbalanced
6336         brackets (bug#22146).
6338 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
6340         Fix visiting files with raw-text
6342         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
6343         when some stuff was actually read.  (Bug#22162)
6345 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
6347         Fix regex matching keyval labels
6349         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
6350         matching keyval labels.
6352 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
6354         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
6356         ... in case of Tramp.  (Bug#20821)
6358 2015-12-12  Paul Eggert  <eggert@cs.ucla.edu>
6360         Fix performance regression with gcc -O0
6362         This fixes the smaller performance hit that I noted in:
6363         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
6364         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
6365         * src/puresize.h (puresize_h_PURE_P)
6366         (puresize_h_CHECK_IMPURE):
6367         New macros, with the old contents of the functions.
6368         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
6369         * src/puresize.h (PURE_P, CHECK_IMPURE):
6370         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
6371         * src/conf_post.h (ATTRIBUTE_UNUSED):
6372         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
6374 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
6376         * lisp/emacs-lisp/package.el (package-unpack): Security check
6378         Check that we received the package we were offered.
6380 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
6382         * lisp/emacs-lisp/package.el (package--compile): Don't activate
6384         `package-unpack' takes care of all activations now (other than
6385         `package-initialize).  `package--compile' now only compiles.
6387 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
6389         Document the new bindings of <UP> and <DOWN> in the minibuffer
6391         * doc/emacs/mini.texi (Minibuffer History): Describe the new
6392         bindings of <UP> and <DOWN> in the minibuffer.
6394 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
6396         Document new features of Ido
6398         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
6400 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
6402         Fix frame height calculations with added menu bar on Windows (Bug#22105)
6404         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
6405         when simultaneously specifying multiple parameters for
6406         `modify-frame-parameters' that all may change the frame's size.
6407         * src/w32fns.c (x_set_menu_bar_lines): Don't set
6408         windows_or_buffers_changed here.
6409         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
6410         with third argument false.
6411         * src/w32menu.c (set_frame_menubar): Set
6412         windows_or_buffers_changed here.
6413         * src/w32term.c (x_set_window_size): Determine third argument of
6414         AdjustWindowRect from whether the frame has a menu bar and not
6415         from whether it wants one.
6417 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
6419         Document the change in interactive shell mode
6421         * doc/emacs/misc.texi (Interactive Shell): Document that the
6422         '*shell*' buffer by default displays in a new window.
6424 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
6426         Document new features of package.el
6428         * doc/emacs/package.texi (Package Menu): Document the 'external'
6429         status and the new menu commands.
6430         (Package Installation): Document archive priorities.
6432         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
6433         (package-menu-hide-low-priority): Doc fix.
6435 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
6437         Update and document new features of xterm support
6439         * doc/emacs/frames.texi (Text-Only Mouse): Document that
6440         track-mouse is supported by newer xterm versions.
6442 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
6444         Document new features of Prettify Mode
6446         * doc/emacs/programs.texi (Misc for Programs): Document
6447         'prettify-symbols-compose-predicate' and
6448         'prettify-symbols-unprettify-at-point'.
6450         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
6451         (prettify-symbols-default-compose-p)
6452         (prettify-symbols-compose-predicate)
6453         (prettify-symbols--compose-symbol): Doc fixes.
6455 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
6457         Document multi-mode indentation facilities
6459         * doc/lispref/text.texi (Mode-Specific Indent): Document
6460         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
6462         * lisp/progmodes/prog-mode.el (prog-indentation-context)
6463         (prog-widen): Doc fixes.
6465 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
6467         Document 'vc-refresh-state'
6469         * doc/emacs/maintaining.texi (Version Control): Document
6470         'vc-refresh-state'.
6472         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
6474 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
6476         Fix echo for "C-u"
6478         * src/keyboard.c (command_loop_1): Undo last change.  It caused
6479         duplicate echo of C-u.  (Bug#22107)
6481 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
6483         Avoid errors when creating files under SVN in new directory
6485         * lisp/vc/vc-svn.el (vc-svn-registered): Use
6486         file-accessible-directory-p, to avoid cd'ing to a non-existing
6487         directory, which signals an error on some systems.  (Bug#21984)
6488         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
6489         Use declare-function to avoid byte-compiler warnings.
6491 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
6493         Improve Lua support in etags
6495         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
6496         "function".
6498         * etc/NEWS: Mention improved Lua support by 'etags'.
6500         * test/etags/lua-src/test.lua (test): Add tests for indented
6501         function definitions.
6502         * test/etags/ETAGS.good_1:
6503         * test/etags/ETAGS.good_2:
6504         * test/etags/ETAGS.good_3:
6505         * test/etags/ETAGS.good_4:
6506         * test/etags/ETAGS.good_5:
6507         * test/etags/ETAGS.good_6:
6508         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
6510 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
6512         Fix 'this-command-keys' wrt prefix argument
6514         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
6515         was part of this-command-keys, but not of this-single-command-keys.
6516         (Bug#22107)
6518         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
6519         commentary about the function's return value.
6521 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
6523         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
6525 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
6527         Improve and document Ruby support in 'etags'
6529         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
6530         (Ruby_functions): Support "module" and overloaded operators.
6531         (Ruby_help): Mention "module".
6533         * test/etags/ruby-src/test.rb:
6534         * test/etags/ruby-src/test1.ruby: New files.
6535         * test/etags/Makefile (RBSRC): New tests.
6536         (SRCS): Add ${RBSRC}.
6537         * test/etags/ETAGS.good_1:
6538         * test/etags/ETAGS.good_2:
6539         * test/etags/ETAGS.good_3:
6540         * test/etags/ETAGS.good_4:
6541         * test/etags/ETAGS.good_5:
6542         * test/etags/ETAGS.good_6:
6543         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
6545         * doc/man/etags.1: Mention Ruby support.
6546         * etc/NEWS: Mention Ruby support.
6548 2015-12-11  Xi Lu  <lx@shellcodes.org>
6550         Initial support for Ruby in 'etags'
6552         * lib-src/etags.c <Ruby_suffixes>: New variable.
6553         (lang_names): Add an entry for Ruby.
6554         (Ruby_functions): New function.  (Bug#22116)
6556 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
6558         Clarify documentation of 'modify-frame-parameters'
6560         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
6561         PARMs" mean for 'modify-frame-parameters'.
6563         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
6564         PARMs" mean for this function.  (Bug#22104)
6566 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
6568         Fix setting buffer unibyte when reading from a device
6570         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
6571         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
6573 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
6575         Clarify documentation of 'values'
6577         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
6578         updated by any evaluation commands in 'lisp-interaction-mode'.
6579         (Bug#22056)
6581 2015-12-11  Anders Lindgren  <andlind@gmail.com>
6583         Fixed subversion vc error when opening file in new directory (bug#21984).
6585         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
6587 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
6589         Yet another fix for when point ends up in invisible text
6591         * src/xdisp.c (redisplay_window): When someone forced
6592         window-start, and honoring that failed to show the cursor, try
6593         moving out of invisible text, before falling back to the middle of
6594         the window.  (Bug#22098)
6596 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
6598         Fix error in Tramp perl script for cygwin
6600         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
6601         error if file doesn't exist.
6603 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6605         Remove font workaround for limited outdated versions
6607         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
6608         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
6610 2015-12-09  Anders Lindgren  <andlind@gmail.com>
6612         Don't add "." to load path (bug#21104)
6614         When configured with --enable-locallisppath=no, which is the
6615         default for OS X, the load-path incorrectly was populated with ".".
6617         * src/lread.c (init_lread): Don't call `decode_env_path' when
6618         PATH_SITELOADSEARCH is empty.
6620 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
6622         * lisp/emacs-lisp/package.el (package--with-response-buffer):
6624         Search for the blank-line in the right buffer.
6626 2015-12-08  Glenn Morris  <rgm@gnu.org>
6628         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
6629         for recent change.
6631 2015-12-08  Glenn Morris  <rgm@gnu.org>
6633         Fix some display-warning usage.
6635         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
6636         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
6637         * lisp/calendar/holidays.el (calendar-holiday-list):
6638         * lisp/mail/rmailout.el (rmail-output-read-file-name):
6639         Fix display-warning usage.
6641 2015-12-07  Glenn Morris  <rgm@gnu.org>
6643         * lisp/calendar/cal-html.el: Require diary-lib.
6645         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
6647 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
6649         Add Obsolete-since header to eudcb-ph.el
6651         * eudcb-ph.el: Add Obsolete-since header.
6653 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
6655         Spelling fixes
6657         * doc/misc/calc.texi (Predefined Units): Use the bland modern
6658         scientific style for spelling the units “ampere” and
6659         “angstrom” rather than the older style “Ampere” and
6660         “Ångstrom”.  The latter spelling was wrong anyway (it should
6661         have been “Ångström”).
6662         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
6663         Fix misspelling of ‘atom’ in code.
6665 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
6667         Improve documentation of kill commands
6669         * lisp/simple.el (region-extract-function, delete-backward-char)
6670         (delete-forward-char, kill-region, copy-region-as-kill)
6671         (kill-ring-save): Better document the optional argument REGION in
6672         the doc strings.  Mention in the doc strings that text put in the
6673         kill-ring can be filtered by 'filter-buffer-substring'.
6675         * doc/lispref/text.texi (Kill Functions): Mention that functions
6676         described in this subsection can filter text they put in the
6677         kill-ring.  Add a cross-reference to "Buffer Contents" and an
6678         index entry.  Document the optional argument 'region' and its
6679         effect.
6680         (Bug#21315)
6682 2015-12-07  Alan Mackenzie  <acm@muc.de>
6684         Further progress making Isearch, Ispell, Replace work with Follow Mode.
6686         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
6687         no longer exists.  Add follow-post-command-hook to  three special purpose
6688         hooks at setup, and remove them at tear down.
6690         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
6691         isearch-lazy-highlight-new-loop.
6692         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
6693         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
6694         it.
6695         (isearch-lazy-highlight-maybe-new-loop): function removed.
6697         * lisp/replace.el: (replace-update-post-hook): New hook variable.
6698         (perform-replace): Add second (nil) argument to looking-back.  Invoke
6699         replace-update-post-hook before calling replace-highlight.
6701         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
6702         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
6703         call of pos-visible-in-window-p.
6704         (ispell-display-buffer): Place *Choices* window at the top of the last window
6705         in a window group.
6707 2015-12-07  Alan Mackenzie  <acm@muc.de>
6709         Amend doc of `mapconcat': it can take sequences, not merely strings.
6711         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
6712         to say that SEPARATOR and the results from FUNCTION may be any character
6713         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
6715 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
6717         Fix an utf8 problem for Tramp on BSD
6719         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
6720         Make lax check for utf8.
6721         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
6723 2015-12-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
6725         Make eudcb-ph.el obsolete
6727         * doc/misc/eudc.texi: Bump version to 1.40.0.
6728         Remove PH/QI sections and mentions.
6729         * lisp/obsolete/eudcb-ph.el: Make obsolete.
6730         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
6731         (eudc-ph-bbdb-conversion-alist): Make obsolete.
6732         * etc/NEWS: Mention this.  (Bug#21191)
6734 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
6736         Remove overenthusiastic eassert
6738         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
6739         previous change.  It breaks on MS-Windows --with-wide-int.
6740         Problem reported by Eli Zaretskii in:
6741         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
6743 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
6745         Pacify gcc -Wparentheses
6747         * src/xdisp.c (row_containing_pos): Reparenthesize.
6749 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
6751         Port mod-test to 32-bit Emacs --without-wide-int
6753         * modules/mod-test/test.el (mod-test-sum-test):
6754         Bring back the 2**29 tests, but port them to 32-bit Emacs
6755         --without-wide-int.
6757 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
6759         Fix minor Tramp problems found on BSD
6761         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
6762         trailing slash.  Quote apostrophes.
6763         (tramp-sh-handle-file-truename): Do not append trailing slash in
6764         the "ls" case.
6765         (tramp-get-ls-command-with-w-option): New defun.
6766         (tramp-do-file-attributes-with-ls)
6767         (tramp-do-directory-files-and-attributes-with-stat): Use it.
6769         * test/automated/tramp-tests.el
6770         (tramp-test31-special-characters-with-perl)
6771         (tramp-test31-special-characters-with-ls)
6772         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
6773         Suppress also readlink.
6775 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
6777         Fix cursor display when invisible text is at line beginning
6779         * src/xdisp.c (redisplay_window): When scrolling fails to show
6780         point, prefer using the desired matrix if possible for finding the
6781         fallback glyph row for displaying the cursor.  (Bug#22098)
6782         (row_containing_pos): Exit the loop as soon as we hit the first
6783         disabled glyph row.  Otherwise we risk accessing garbled data and
6784         departing to the no-no land.
6786 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
6788         Improve module interface when WIDE_EMACS_INT
6790         * src/emacs-module.c (plain_values): New constant.
6791         (module_nil): Now a constant.
6792         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
6793         (syms_of_module): Use if, not #ifdef, so that both sides are
6794         checked at compile-time, and so that GCC doesn’t complain
6795         about an unused var in the typical case.  Also, depend on
6796         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
6797         that WIDE_EMACS_INT implies !USE_LSB_TAG.
6798         (value_to_lisp_bits, lisp_to_value_bits): New functions.
6799         Sign-extend integers rather than zero-extending them, as small
6800         negative integers are more likely.
6801         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
6802         functions.
6803         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
6804         (mark_modules): Remove.  All uses removed.
6805         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
6806         to GCALIGNMENT.
6807         (syms_of_module): Check that module_nil converts to Qnil.
6808         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
6809         we prefer signed to unsigned when either will do.
6810         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
6811         a bit better for emacs-module.c.
6813 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
6815         Port mod-test to x86-64 GNU/Linux running 32-bit
6817         * modules/mod-test/test.el (mod-test-sum-test):
6818         Don’t attempt to match descriptions to operating systems.
6819         It didn’t work on Fedora x86-64 running a 32-bit executable,
6820         and it’s not worth the trouble anyway.
6821         Port to 32-bit platforms by removing an assumption about
6822         fixnum widths.
6824 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
6826         Fix auto-revert-tests.el when filenotify isn't used
6828         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
6829         Make it working also when filenotify isn't used.
6831 2015-12-05  Juri Linkov  <juri@linkov.net>
6833         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
6835         Let-bind isearch-regexp-function to nil.  (Bug#22097)
6837 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
6839         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
6841         (package--with-response-buffer): NOERROR and ERROR-FORM only
6842         handle connection errors.
6843         (bad-signature): New error type.
6844         (package--check-signature-content): Use it.
6845         (package--check-signature): Properly distinguish connection errors
6846         from bad-signature errors.  Do the check for
6847         `package-check-signature' `allow-unsigned' here instead of forcing
6848         the callbacks to do it.  Add a new argument, UNWIND.
6849         (package--download-one-archive, package-install-from-archive):
6850         Update usage of `package--check-signature'.
6852 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
6854         Fix Bug#22092.
6856         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
6857           Clean up inconsistent line endings. (Bug#22092)
6858           (icalendar--clean-up-line-endings): New.
6859         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
6860           for Bug#22092.
6862 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
6864         Document 'bookmark-set-no-overwrite'
6866         * doc/emacs/regs.texi (Bookmarks): Document the new command
6867         'bookmark-set-no-overwrite' and its keybinding.
6869 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
6871         Document new binding of 'mouse-buffer-menu'
6873         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
6874         now also on C-F10.
6876 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
6878         Initial documentation of dynamic modules
6880         * doc/lispref/loading.texi (Dynamic Modules): New section with
6881         initial documentation for dynamic modules.
6882         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
6883         detailed menu
6885         * etc/NEWS: Fix typos in dynamic modules' entry.
6887 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
6889         Remove copyright statements from trivial test files
6891 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
6893         Add "Preliminaries" section to etc/DEBUG
6895         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
6896         Most of the content was suggested by Phillip Lord
6897         <phillip.lord@russet.org.uk>.  Remove the section about debugging
6898         with the Visual Studio, as building Emacs with the Microsoft
6899         compilers is no longer supported.  Minor fixes in some other
6900         sections.
6902 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
6904         Improve parsing of version strings
6906         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
6907         (version-to-list): More helpful error messages.
6908         (version-to-list): ".5" is valid (update docstring).  Make
6909         "22.8X3" invalid, as the doc string says.
6911         * test/automated/subr-tests.el (ert-test-version-parsing): New
6912         tests for version string processing.
6914 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
6916         Fix documentation of 'undo' changes
6918         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
6919         English conventions for spelling and whitespace between sentences.
6921         * etc/NEWS: Fix wording and spelling of undo-related entries.
6922         Mark them as documented.
6924 2015-12-04  Glenn Morris  <rgm@gnu.org>
6926         * lisp/net/net-utils.el: Small improvements.
6928         (net-utils--executable-find-sbin): New function.
6929         (ifconfig-program): Check sbin directories.
6930         Fallback to "ip".  (Bug#22091)
6931         (ifconfig-program-options): Check the actual program in use.
6932         (arp-program): Check sbin directories.
6934 2015-12-04  Arash Esbati  <esbati@gmx.de>  (tiny change)
6936         Fix wrong-type-argument integer-or-marker-p nil error
6938         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
6939         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
6941 2015-12-04  Alan Mackenzie  <acm@muc.de>
6943         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
6945         Merge necessitated by a rebase operation.
6947 2015-12-04  Alan Mackenzie  <acm@muc.de>
6949         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
6951 2015-12-04  Alan Mackenzie  <acm@muc.de>
6953         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
6955         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
6956         Windows" and new @defun selected-window-group.
6957         (Window Start and End): Describe new &optional parameter GROUP and
6958         ...-group-function for window-start, window-end, set-window-start, and
6959         pos-visible-in-window-p.
6960         (Textual Scrolling) Describe the same for recenter.
6961         doc/lispref/positions.texi (Screen Lines): Describe the same for
6962         move-to-window-line.
6964         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
6965         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
6966         new optional parameter "group".  At the beginning of each, check whether the
6967         corresponding ...-group-function is set to a function, and if so execute this
6968         function in place of the normal processing.
6969         (syms_of_window): Define symbols for the six new variables below.
6970         (window-start-group-function, window-end-group-function)
6971         (set-window-start-group-function, recenter-group-function)
6972         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
6973         New permanent local buffer local variables.
6974         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
6975         Fpos_visible_in_window_p.
6977         lisp/window.el (selected-window-group-function): New permanent local buffer
6978         local variable.
6979         (selected-window-group): New function.
6981         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
6982         enable, kill them at mode disable.  Add/remove follow-after-change to/from
6983         after-change-functions.
6984         (follow-start-end-invalid): New variable.
6985         (follow-redisplay): Manipulate follow-start-end-invalid.
6986         (follow-after-change, follow-window-start, follow-window-end)
6987         (follow-set-window-start, follow-pos-visible-in-window-p)
6988         (follow-move-to-window-line, follow-sit-for): New functions.
6990         lisp/isearch.el (isearch-call-message): New macro.
6991         (isearch-update, with-isearch-suspended, isearch-del-char)
6992         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
6993         (with-isearch-suspended): Rearrange code such that isearch-call-message is
6994         invoked before point is moved.
6995         (isearch-message): Add comment about where point must be at function call.
6996         (isearch-search): Remove call to isearch-message.
6997         (isearch-lazy-highlight-window-group): New variable.
6998         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
6999         the battery of tests to ...
7000         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
7001         Note: (sit-for 0) is still called.
7002         (isearch-lazy-highlight-update): Check membership of
7003         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
7004         property.
7005         (isearch-update, isearch-done, isearch-string-out-of-window)
7006         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
7007         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
7008         (isearch-lazy-highlight-update): Call the six amended primitives (see
7009         src/window.c above) with the new `group' argument set to t, to cooperate
7010         with Follow Mode.
7012 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
7014         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
7016         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
7017         (ert--explain-format-atom, ert--explain-equal-rec)
7018         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
7019         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
7021 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
7023         * lisp/character-fold.el: Remove special case-folding support
7025         (character-fold-to-regexp): Remove special code for
7026         case-folding.  Char-fold search still respects the
7027         `case-fold-search' variable (i.e., f matches F).  This only
7028         removes the code that was added to ensure that f also matched
7029         all chars that F matched.  For instance, after this commit, f
7030         no longer matches 𝔽.
7032         This was necessary because the logic created a regexp with
7033         2^(length of the string) redundant paths.  So, when a very
7034         long string "almost" matched, Emacs took a very long time to
7035         figure out that it didn't.  This became particularly relevant
7036         because isearch's lazy-highlight does a search bounded by (1-
7037         match-end) (which, in most circumstances, is a search that
7038         almost matches).  A recipe for this can be found in bug#22090.
7040 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
7042         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
7043         Fixes (bug#21701)
7045 2015-12-04  Daiki Ueno  <ueno@gnu.org>
7047         lisp/gnus/qp.el: Don't replace "from " at bol
7049         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
7050         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
7052 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
7054         Externalize some symbols in undo-auto
7056          * doc/lispref/text.texi: Update symbols.
7057          * lisp/simple.el (undo-auto--amalgamate,
7058            undo-auto--current-boundary-timer): Make symbols public.
7059          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
7060            updated symbol.
7062 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
7064         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
7066 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
7068         Some error message improvements in tramp-sh.el
7070         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
7071         Suppress error messages for "mesg" and "biff" calls.
7072         (tramp-get-remote-path): Ignore errors when expanding
7073         `tramp-own-remote-path'.  Raise a warning instead.
7075 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
7077         Document 'nacl' value for 'system-type'
7079         * doc/lispref/os.texi (System Environment): Document the 'nacl'
7080         value of 'system-type'.
7082 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
7084         Document 'window-max-chars-per-line'
7086         * doc/lispref/windows.texi (Window Sizes): Document
7087         'window-max-chars-per-line'.
7089 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
7091         Fix some file headers for the purpose of `package--builtins'
7093         * lisp/emacs-lisp/cl-preloaded.el
7094         * lisp/emacs-lisp/eieio-compat.el
7095         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
7097         * lisp/ielm.el: Fix summary line.
7099 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
7101         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
7103         Reload any previously loaded package files before compiling
7104         the package (also reload the same files after compiling).
7105         This ensures that we have the most recent definitions during
7106         compilation, and avoids generating bad elc files when a macro
7107         changes and it is used in a different file from the one it's
7108         defined in.
7110 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
7112         * lisp/emacs-lisp/package.el: Refactor package activation code
7114         (package-activate): Move code that activates dependencies into
7115         package-activate-1.
7116         (package--load-files-for-activation): New function.
7117         (package-activate-1): Add code for (optionally) activating
7118         dependencies, and move file-loading code into
7119         `package--load-files-for-activation'.
7121 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
7123         Document new font-related functionality
7125         * doc/lispref/display.texi (Low-Level Font): Document
7126         'default-font-width', 'default-font-height', 'window-font-width',
7127         and 'window-font-height'.
7129         * etc/NEWS: Move entries for 'default-font-width',
7130         'default-font-height', 'window-font-width', and 'window-font-height'
7131         to their place and mark them documented.
7133 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
7135         Fix documentation and implementation of 'directory-name-p'
7137         * lisp/files.el (directory-name-p): Modify to recognize
7138         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
7139         accordingly.  Use '=', not char-equal, for comparison, as
7140         letter-case cannot possibly be an issue here.
7142         * doc/lispref/files.texi (Directory Names): Move the documentation
7143         of directory-name-p here from "Relative File Names".  Update the
7144         description per the changes in implementation.
7146         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
7147         place and mark it documented.
7149 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
7151         Minor copyedit in Emacs manual
7153         * doc/emacs/search.texi (Lax Search): Make wording about character
7154         folding by default less definitive.  (Bug#22043)
7156 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
7158         More emacs-module.c fixes for wide ints
7160         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
7161         unsigned data types to manipulate pointers, to avoid sign
7162         extension coming after us with a vengeance.
7164         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
7165         Emacs with wide ints that verify integer values near the critical
7166         value that requires us to switch to a cons cell.
7168 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
7170         Fix bug#22069 in cl-generic.el
7172         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
7173         not run thru `format'.
7175 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
7177         APPEND etags--xref-backend to xref-backend-functions
7179         * lisp/progmodes/xref.el (xref-backend-functions):
7180         Use APPEND when adding the default element
7181         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
7183 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
7185         More accurate documentation of lax whitespace matching
7187         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
7188         (word-search-backward, word-search-forward)
7189         (word-search-backward-lax, word-search-forward-lax): Mention in
7190         doc strings that toggling lax whitespace matching has no effect on
7191         these commands.
7193         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
7194         lax whitespace matching has no effect on these commands.
7196 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
7198         Fix emacs-module.c for wide ints
7200         * src/emacs-module.c (lisp_to_value): Compare the produced value
7201         with the original Lisp object, not with the one potentially
7202         converted into a Lisp_Cons.  Fixes assertion violations when
7203         working with integers larger than fit into a 32-bit value.
7205         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
7206         large integers, to test --with-wide-int.
7208 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
7210         Document 'directory-files-recursively'
7212         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
7213         the argument MATCH to REGEXP, to be more explicit about its form.
7215         * doc/lispref/files.texi (Contents of Directories): Improve the
7216         documentation of 'directory-files-recursively'.  Add
7217         cross-references.
7219         * etc/NEWS: Move the entry for 'directory-files-recursively' to
7220         its place and mark it documented.
7222 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
7224         Document 'inhibit-read-only' property
7226         * doc/lispref/text.texi (Special Properties): Describe the new
7227         'inhibit-read-only' text property.  Add cross-reference to where
7228         read-only buffers are described.
7229         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
7230         'inhibit-read-only' property exempts text from being read-only.
7231         Add cross-reference to "Special Properties".
7233         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
7234         its place and mark it documented.
7236 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
7238         * lisp/emacs-lisp/package.el: Update header comments
7240 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
7242         * lisp/character-fold.el: Add back multi-char matching
7244         (character-fold-to-regexp): Uncomment recently commented code
7245         and make the algorithm "dummer" by not checking every possible
7246         combination.  This will miss some possible matches, but it
7247         greatly reduces regexp size.
7249         * test/automated/character-fold-tests.el
7250         (character-fold--test-fold-to-regexp): Comment out test of
7251         functionality no longer supported.
7253 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
7255         * doc/emacs/ack.texi (Acknowledgments): Update.
7257 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
7259         Check `file-remote-p' over absolute files names in files.el
7261         * lisp/files.el (directory-files-recursively)
7262         (get-free-disk-space): Check `file-remote-p' over absolute files names.
7264 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
7266                 * src/lread.c (syms_of_lread): Doc fix.
7268 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
7270         Don't mistake certain JS method calls for keywords
7272         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
7273         Braceless keyword can't come after a period (bug#22063).
7275 2015-11-30  David Reitter  <david.reitter@gmail.com>
7277         Read frame_title_format from buffer-local variable for NS port
7279         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
7280         icon-title-format variables from buffer in appropriate window.
7281         (Bug#22048)
7283 2015-11-30  Juri Linkov  <juri@linkov.net>
7285         * lisp/replace.el (occur-engine): Count matches in empty lines.
7287         (Bug#22062)
7289 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
7291         * src/emacs-module.h: Fix finalizer typedef for C++11
7293         C++11 standard doesn't allow exception-specification in typedef.
7294         The workaround is to declare a dummy function prototype and use
7295         decltype on it.
7297 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
7299         Fix last change
7301         * src/emacs-module.c (lisp_to_value, value_to_lisp)
7302         [WIDE_EMACS_INT]: Avoid compiler warnings.
7304 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
7306         Rely on conservative stack scanning to find "emacs_value"s
7308         * src/emacs-module.c (struct emacs_value_tag)
7309         (struct emacs_value_frame, struct emacs_value_storage): Remove.
7310         (value_frame_size): Remove constant.
7311         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
7312         (lisp_to_value): Remove first arg.
7313         (module_nil): New constant.
7314         Use it instead of NULL when returning an emacs_value.
7315         (module_make_function): Adjust to new calling convention of
7316         Qinternal_module_call.
7317         (DEFUN): Receive args in an array rather than a list.
7318         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
7319         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
7320         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
7321         Adjust to new type of non_local_exit info.
7322         (ltv_mark) [WIDE_EMACS_INT]: New constant.
7323         (value_to_lisp, lisp_to_value): Rewrite.
7324         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
7325         (allocate_emacs_value): Remove function.
7326         (mark_modules): Gut it.
7327         (initialize_environment): Don't initialize storage any more.
7328         Keep the actual env object on Vmodule_environments.
7329         (finalize_environment): Don't finalize storage any more.
7330         (syms_of_module): Initialize ltv_mark and module_nil.
7332         * src/emacs-module.h (emacs_value): Make it more clear that this type
7333         is really opaque, including the fact that NULL may not be valid.
7335         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
7336         Don't assume that NULL is a valid emacs_value.
7338 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
7340         Yet another doc improvement for search commands
7342         * doc/emacs/search.texi (Word Search, Symbol Search)
7343         (Regexp Search): Document commands that don't support lax
7344         whitespace matching or character folding.
7345         (Nonincremental Search): Mention the search commands that can be
7346         invoked from the menu bar.
7348         * lisp/isearch.el (isearch-define-mode-toggle-word)
7349         (isearch-define-mode-toggle-symbol)
7350         (isearch-define-mode-toggle-character-fold): Note in the doc
7351         string that turning these on exits the regexp mode.
7352         (isearch-forward-regexp, isearch-forward-word)
7353         (isearch-forward-symbol, isearch-backward-regexp)
7354         (word-search-backward, word-search-forward)
7355         (word-search-backward-lax, word-search-forward-lax): State in the
7356         doc string which commands don't support character folding and/or
7357         lax-whitespace matching.
7359 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
7361         Run `window-size-change-functions' also when reading from minibuffer
7363         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
7364         also when reading from minibuffer.
7366 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
7368         Fix scrambling of html-rendered item buffers
7370         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
7371           scrambling of contents by wrapping call to html-renderer in
7372           save-selected-window.
7374 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
7376         Fix font typo in previous doc fix.
7378 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
7380         A bit more security doc, esp. file local vars
7382         * doc/emacs/emacs.texi (Top):
7383         * doc/emacs/misc.texi (Miscellaneous Commands):
7384         Refer to new Host Security section.
7385         (Host Security): New section.
7386         * doc/lispref/os.texi (Security Considerations):
7387         Mention file local variables.
7389 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
7391         * lisp/character-fold.el: Comment out branching code
7393         (character-fold-to-regexp): Comment out code that uses multi-char
7394         table.  The branching caused by this induces absurdly long regexps,
7395         up to 10k chars for as little as 25 input characters.
7397 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
7399         Spelling and grammar fixes
7401 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
7403         Make lisp-completion-at-point a wrapper instead of an alias
7405         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
7406         Turn into an obsolete wrapper around elisp-completion-at-point
7407         (bug#20455).
7409 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
7411         * lisp/isearch.el (isearch-search-fun-default): Nicer error
7413         message when the search fails.
7415 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
7417         Update menu-bar-goto-uses-etags-p for the current xref API
7419         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
7420         xref-backend-functions, instead of now-nonexistent
7421         xref-find-function.
7423 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
7425         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
7427 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
7429         * lisp/menu-bar.el: Use folding in searches
7431         (nonincremental-search-forward): Use `isearch-search-fun-default'
7432         to determine the search function.
7433         (nonincremental-search-backward)
7434         (nonincremental-repeat-search-forward)
7435         (nonincremental-repeat-search-backward): Use it.
7437 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
7439         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
7441 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
7443         * lisp/character-fold.el (character-fold-to-regexp): Be careful
7445         not to return huge regexps.
7447 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
7449         Improve documentation of string-collate-* functions
7451         * doc/lispref/strings.texi (Text Comparison): Improve wording and
7452         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
7454         * etc/NEWS: Move the entry of 'string-collate-equalp' and
7455         'string-collate-lessp' to "Lisp Changes" section and mark it as
7456         documented.
7458 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
7460         Document truncate-string-ellipsis
7462         * doc/lispref/display.texi (Size of Displayed Text): Document
7463         'truncate-string-ellipsis'.
7465         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
7466         (truncate-string-to-width): Mention in the doc string that the
7467         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
7469         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
7470         Changes" section.
7472 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
7474         Fix confusion wrt character folding in the Emacs manual
7476         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
7477         Document that invoking search-forward/backward and
7478         re-search-forward/backward supports only case folding, but not the
7479         rest of the lax-search features.  Reported by Mike Kupfer
7480         <m.kupfer@acm.org>.
7482 2015-11-29  Ken Brown  <kbrown@cornell.edu>
7484         Update mod-test-sum-test
7486         * modules/mod-test/test.el (mod-test-sum-test): Update to
7487         accommodate the lack of dladdr on Cygwin.
7489 2015-11-29  Alan Mackenzie  <acm@muc.de>
7491         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
7493         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
7494         to `funcall', (i) Output an error message; (ii) Generate code to signal a
7495         `wrong-number-of-arguments' error.
7497 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
7499         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
7501 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
7503         * lisp/character-fold.el (character-fold-to-regexp)
7505         Warn about using long strings.
7507         * test/automated/character-fold-tests.el
7508         (character-fold--test-lax-whitespace)
7509         (character-fold--test-consistency): Reduce string size for tests.
7511 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
7513         Document renaming of x-select-enable-* variables
7515         * doc/emacs/killing.texi (Clipboard): Rename
7516         x-select-enable-clipboard to select-enable-clipboard and
7517         x-select-enable-primary to select-enable-primary.  Update index
7518         entries.
7520         * etc/NEWS: Mark entry as documented.
7522 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
7524         Document the shorthand hints displayed by M-x
7526         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
7527         suggest-key-bindings.  Document the shorthand hints for commands
7528         that have no key bindings.  Document that M-x completion ignores
7529         obsolete commands.
7531         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
7532         documented.
7534 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
7536         Update docs of character folding
7538         * doc/emacs/search.texi (Lax Search): Update the description of
7539         character folding for the latest changes.
7541 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
7543         * lisp/character-fold.el: Also play nice with case-folding
7545         (character-fold-to-regexp): Take `case-fold-search' into account.
7547 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
7549         * lisp/character-fold.el: Add support for multi-char matches
7551         (character-fold-table): Now has an extra-slot. This is a second
7552         char-table that holds multi-character matches.  See docstring for
7553         details.
7554         (character-fold-to-regexp): Can build branching regexps when a
7555         character's entry the extra slot of `character-fold-table' matches the
7556         characters that succeed it.
7558 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
7560         * lisp/character-fold.el: Code simplifications
7562         (character-fold-table): Reduce the scope of a variable.
7563         (character-fold-to-regexp): Change logic to work directly on the
7564         input string.  It's a little easier to understand, probably
7565         faster, and sets us up for implementing multi-char matches.
7567         * test/automated/character-fold-tests.el
7568         (character-fold--test-fold-to-regexp): New test.
7570 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
7572         Document changes in "C-h l"
7574         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
7576         * etc/NEWS: mark "C-h l" changes as documented.
7578 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
7580         Finalize documentation of 'custom-prompt-customize-unsaved-options'
7582         * doc/emacs/custom.texi (Saving Customizations): Index the new
7583         function 'custom-prompt-customize-unsaved-options'.
7585         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
7586         is useful.
7588 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
7590         Document 'comment-line'
7592         * doc/emacs/programs.texi (Comment Commands): Document
7593         'comment-line'.
7595         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
7597 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
7599         Document new checkdoc features
7601         * doc/lispref/tips.texi (Tips, Library Headers): Document the
7602         keyword-checking features of checkdoc and the commands
7603         'checkdoc-file' and 'checkdoc-current-buffer'.
7605         * etc/NEWS: Move the checkdoc-related entries to their own
7606         section.
7608 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
7610         Simplify the prologue of emacs-module.c functions
7612         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
7613         (module_make_global_ref)
7614         (module_free_global_ref, module_make_function, module_funcall)
7615         (module_intern, module_type_of, module_extract_integer)
7616         (module_make_integer, module_extract_float, module_make_float)
7617         (module_copy_string_contents, module_make_string)
7618         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
7619         (module_get_user_finalizer, module_set_user_finalizer)
7620         (module_vec_set, module_vec_get, module_vec_size): Use new helper
7621         macro MODULE_FUNCTION_BEGIN.
7623 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
7625         Don't reject module calls with no arguments
7627         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
7629 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
7631         Make module-call be visible from Lisp
7633         * src/emacs-module.c (module_make_function): Use internal--module-call.
7634         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
7635         checks.
7636         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
7637         defsubr internal--module-call.
7639 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
7641         Add etags tests for the recent Lua-related bugfix
7643         * test/etags/lua-src/test.lua: New file, tests the issues raised
7644         by bug#21934.
7645         * test/etags/Makefile (LUASRC): Add test.lua.
7646         * test/etags/ETAGS.good_1:
7647         * test/etags/ETAGS.good_2:
7648         * test/etags/ETAGS.good_3:
7649         * test/etags/ETAGS.good_4:
7650         * test/etags/ETAGS.good_5:
7651         * test/etags/ETAGS.good_6:
7652         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
7653         regression fix, resolved around 25 May 2015, required changes to
7654         the "good" ETAGS files.
7656 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
7658         Fix Lua tags when a function name includes '.' or ':'
7660         * lib-src/etags.c (Lua_functions): Add a tag for the last element
7661         of a function name after a dot or a colon.  (Bug#21934)
7663 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
7665         Improve documentation of search and replace commands
7667         * doc/emacs/search.texi (Replacement and Lax Matches): Document
7668         which commands are affected by 'replace-character-fold'.
7669         (Lax Search): Add a cross reference to "Replacement and Lax
7670         Matches".  Improve wording.  Fix lost extra whitespace.
7671         (Search Customizations): Improve wording.  (Bug#22036)
7672         See also comments in
7673         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
7675         * lisp/replace.el (query-replace, query-replace-regexp)
7676         (query-replace-regexp-eval, replace-string, replace-regexp):
7677         Mention 'replace-character-fold' in the doc strings.
7679 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
7681         Fix minor problems found by static checking
7683         * src/undo.c (prepare_record): Add proper prototype for C.
7685 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
7687         * src/emacs-module.c (struct env_storage): Delete
7689         (struct emacs_runtime_private): Keep an emacs_env instead.
7690         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
7691         (initialize_environment): Split the arg in two.  Adjust all callers.
7692         Only store the private part in Vmodule_environments.
7693         (finalize_environment): Change the arg to only be the private env.
7694         Adjust all callers.
7696 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
7698         Improve documentation of 'replace-character-fold'
7700         * lisp/replace.el (replace-character-fold): Clarify which commands
7701         are affected by this variable.
7703 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
7705         Autoload etags when using its xref backend
7707         * lisp/progmodes/xref.el (xref--etags-backend):
7708         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
7709         (Bug#22026)
7711 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
7713         * lisp/character-fold.el: Allow complex chars to match their decomposition
7715         (character-fold-table): When a character's decomposition does not
7716         involve a formatting tag (i.e., if it has an "exact" description via
7717         other characters), then this character is allowed to match the
7718         decomposition.
7720 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
7722         * lisp/character-fold.el: More descriptive variable names
7724         (character-fold-table): Rename a lot of the lexical variables to
7725         make the code easier to read.
7727 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
7729         * lisp/isearch.el: Ensure we still support `isearch-new-word'
7731         (isearch-new-regexp-function): Define variable.
7732         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
7734 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
7736         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
7738 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
7740         * test/lisp/abbrev-tests.el: Define more tests
7742         (abbrev-table-name-test, kill-all-abbrevs-test)
7743         (clear-abbrev-table-test): New tests.
7745 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
7747         Add module tests for wrong-type-argument
7749         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
7750         wrong-type-argument.
7752 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
7754         Improve handling of signals and 'throw' in modules
7756         * src/emacs-module.c: Add commentary explaining how to write
7757         functions in this file.
7758         (module_make_global_ref, module_free_global_ref)
7759         (module_non_local_exit_signal, module_non_local_exit_throw)
7760         (module_make_function, module_funcall, module_intern)
7761         (module_type_of, module_is_not_nil, module_eq)
7762         (module_extract_integer, module_make_integer)
7763         (module_extract_float, module_make_float)
7764         (module_copy_string_contents, module_make_string)
7765         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
7766         (module_get_user_finalizer, module_set_user_finalizer)
7767         (module_vec_set, module_vec_get, module_vec_size)
7768         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
7769         Do nothing and return with failure indication immediately, if some
7770         previous module call signaled an error or wants to throw.  See
7771         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
7772         for the relevant discussions.
7774 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
7776         Add ':version' tag to 'checkdoc-package-keywords-flag'
7778         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
7779         Add a ':version' tag.
7781 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
7783         Improve documentation of 'eval-buffer' and 'eval-region'
7785         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
7787         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
7788         "accessible portion of buffer".
7790 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
7792         Unbreak the Cygwin w32 build
7794         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
7795         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
7797 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
7799         Improve commentary in character-fold.el
7801         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
7802         description from commit log message to comments.  (Bug#22019)
7804 2015-11-26  Alan Mackenzie  <acm@muc.de>
7806         Byte Compiler: generate code to adjust stack count after call to `signal'.
7808         Corrects change from earlier today.
7810         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
7811         `byte-compile--for-effect' as argument to `byte-compile-form'.
7813 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
7815         Improve commentary of prepare_to_modify_buffer_1
7817         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
7818         that this function runs Lisp.  Suggested by Richard Stallman
7819         <rms@gnu.org>.
7821 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
7823         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
7825 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
7827         Fix regression after merge.
7829          * src/undo.c (prepare_record): Remove call to run_undoable_change.
7831 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
7833         After delete, record point location in undo.
7835         Addresses Bug #21968.
7837                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
7838                 better support intercalating calls.
7839                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
7840                 point and current buffer before each command.
7841                 * src/undo.c (record_point): Now only record the point.
7842                 * src/undo.c (prepare_record): Functionality removed form
7843                 record_point.
7844                 * src/undo.c (record_delete): Check if point needs recording.
7845                 * src/undo.c (undo-boundary): Record value of point before each
7846                 boundary.
7847                 * test/automated/simple-test.el: New tests.
7849         Conflicts:
7850                 src/undo.c
7852 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
7854         Fix compiler warnings in w32.c
7856         * src/w32.c (sys_socket): In case of error, use -1 as return
7857         value, not INVALID_SOCKET, which causes compiler warnings.
7858         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
7859         to the appropriate function signature, to avoid compiler errors.
7860         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
7862 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
7864         Check if the file exists on disk before producing the revert diff
7866         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
7867         exists on disk (bug#20558).
7869 2015-11-26  Alan Mackenzie  <acm@muc.de>
7871         Byte compiler: on setq with an odd number of arguments, generate a `signal'
7873         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
7874         it has an odd number of arguments, to allow bytecomp to handle the error.
7876         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
7877         odd number of arguments, generate a `signal' instead of the normal code.
7879 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
7881         Use find-tag-default for xref-backend-identifier-at-point
7883         * lisp/progmodes/etags.el (find-tag-tag)
7884         (tags-completion-at-point-function): Extract common code as
7885         find-tag--default.
7886         (xref-backend-identifier-at-point): Define in terms of the new
7887         function.
7889 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
7891         * src/undo.c (record_property_change): Remove now-unused local.
7893 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
7895         run_undoable_changes now called from insdel.
7897         The original calls from inside undo.c are not always at a safe position
7898         to call lisp, as they originate in varied positions within insdel.c.
7899         Calling them directly from prepare_to_modify_buffer_1 ensures that they
7900         are always run at the same point.
7902          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
7903          and symbol used.
7904          * src/insdel.c (run_undoable_changes): Add function and symbol.
7906 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
7908         Improve and update documentation of search commands
7910         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
7911         all references changed.  Move the description of lax-whitespace
7912         here.  Add description of the new character folding features and
7913         additional customizable options.
7914         (Isearch Yank): Move before "Error in Search".
7915         (Basic Isearch): Improve wording.  Add index entries.  Add short
7916         description of how to abandon search, making this subsection a
7917         complete introduction to search basics.
7918         (Repeat Isearch): Add index entries.  Describe additional
7919         customizable options.  Describe mouse clicks.
7920         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
7921         area.  Describe more customizable options.
7922         (Error in Isearch): Add index entries.
7923         (Special Isearch): Move actual description of some isearch
7924         commands to other sections, leaving here just the summary of the
7925         commands.  Add command that toggles character folding.  Describe
7926         commands, like "C-h C-h", that were previously omitted for some
7927         reason.
7928         (Not Exiting Isearch): Describe search-exit-option.  Add index
7929         entries.
7930         (Word Search): Describe eww-search-word and eww-search-prefix.
7931         (Symbol Search): Add index entries.
7932         (Regexp Search): Describe regexp-search-ring-max.
7933         (Replacement and Lax Matches): Renamed from "Replacement and
7934         Case"; all references changed.  Describe lax-whitespace matching
7935         in replace commands and related options.  Describe character
7936         folding in replace commands and related options.
7937         (Query Replace): Describe query-replace-from-to-separator and the
7938         new history features.  Add index entries for highlighted text.
7939         Describe query-replace-skip-read-only.  Describe more keys
7940         accepted by query-replace.
7941         (Other Repeating Search): More index entries for Occur.  Describe
7942         list-matching-lines-default-context-lines.
7943         (Search Customizations): New section, documents customizable
7944         options that were not documented until now.
7945         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
7946         "Character Folding".
7948         * etc/NEWS: Move search- and replace-related entries to a single
7949         parent section.
7951         * lisp/replace.el (query-replace-show-replacement): Doc fix.
7952         * lisp/isearch.el (search-nonincremental-instead)
7953         (isearch-hide-immediately): Doc fixes.
7955 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
7957         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
7959         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
7960         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
7961         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
7963 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
7965         Fix module_format_fun_env when dynlib_addr fails
7967         * src/emacs-module.c (module_format_fun_env):
7968         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
7969         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
7971 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
7973         Disambiguate variable help a bit better
7975         * lisp/help-fns.el (describe-variable): Quote the
7976         variable’s value if it is a symbol other than t or nil.
7977         See: T.V Raman in:
7978         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
7980 2015-11-24  Dmitry Gutov  <dgutov@yandex.ru>
7982         Pass SVN commit message through log-edit-extract-headers
7984         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
7985         log-edit-extract-headers (bug#18954).
7987 2015-11-24  Alan Mackenzie  <acm@muc.de>
7989         CC Mode: Eliminate compiler warning messages.
7991         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
7992         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
7993         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
7994         (c-awk-set-syntax-table-properties): Clarify comments about
7995         `font-lock-syntactic-keywords'.
7997         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
7998         of this before the real (interpreted) one, to satisfy the byte compiler.
8000 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
8002         Extend the test suite for json.el
8004         * lisp/json.el (json-plist-p): Clarify docstring.
8006         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
8007         macro.
8008         (test-json-join, test-json-alist-p)
8009         (test-json-plist-p, test-json-advance, test-json-peek)
8010         (test-json-pop, test-json-skip-whitespace)
8011         (test-json-read-keyword, test-json-encode-keyword)
8012         (test-json-read-number, test-json-encode-number)
8013         (test-json-read-escaped-char, test-json-read-string)
8014         (test-json-encode-string, test-json-encode-key)
8015         (test-json-new-object, test-json-add-to-object)
8016         (test-json-read-object, test-json-encode-list)
8017         (test-json-read-array, test-json-encode-array)
8018         (test-json-read, test-json-read-from-string)
8019         (test-json-encode): New tests.
8020         (json-read-simple-alist): Merged into `test-json-read-object'.
8021         (json-encode-string-with-special-chars): Merged into
8022         `test-json-encode-string'.
8023         (json-read-string-with-special-chars): Split into
8024         `test-json-encode-string' and `test-json-read-from-string'.
8026 2015-11-24  Anders Lindgren  <andlind@gmail.com>
8028         Fixed bug#18283: Enable applescript in NextStep.
8030         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
8032 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
8034         Allow completion on dynamic module files in load-library
8036         * lisp/files.el (load-library): Bind completion-ignored-extensions
8037         to nil, to allow completion on dynamic modules typed as file
8038         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
8040 2015-11-24  Alan Mackenzie  <acm@muc.de>
8042         CC Mode: eliminate almost all byte compilation warnings
8044         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
8045         (cc-require): Remove the crude hack that saved and restored
8046         byte-compile-noruntime-functions.
8047         (cc-conditional-require, cc-conditional-require-after-load): New macros.
8049         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
8050         cc-fix.el using the new macros in cc-bytecomp.el.
8052         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
8053         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
8054         forms to remove the superflous quotes.
8056 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
8058         Add one more mod-test test
8060         * modules/mod-test/test.el (mod-test-sum-test): Test the error
8061         signaled when the function is invoked with a wrong number of
8062         arguments.
8064 2015-11-24  Philipp Stephani  <phst@google.com>
8066         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
8068 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
8070         Implement dynlib_addr for MS-Windows
8072         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
8073         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
8074         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
8075         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
8076         if undefined.
8077         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
8078         zero.
8079         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
8080         the full file name of the module for a given address.
8082 2015-11-24  Alan Mackenzie  <acm@muc.de>
8084         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
8086 2015-11-24  Alan Mackenzie  <acm@muc.de>
8088         Squashed commit of the following:
8090         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
8091         Author: Alan Mackenzie <acm@muc.de>
8092         Date:   Tue Nov 24 16:50:09 2015 +0000
8094             Byte compile: minor amendments.
8096             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
8097             add a comment to explain the binding of variables around a subsidiary
8098             compilation.
8099             (byte-compile-new-defuns): Amend the doc string.
8101         commit c537bfed1dda1593d218956ff00c6105a3ff0316
8102         Author: Alan Mackenzie <acm@muc.de>
8103         Date:   Sat Nov 21 18:43:57 2015 +0000
8105             Byte compiler: fix spurious warnings "might not be defined at runtime".
8107             Also initialize byte-compile-noruntime-functions between runs.
8109             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
8110             (byte-compile-initial-macro-environment): For eval-when-compile: bind
8111             byte-compile-unresolved-functions and byte-compile-new-defuns around
8112             byte-compile-top-level, to prevent spurious entries being made.
8113             (byte-compile-warn-about-unresolved-functions): Check whether function is
8114             in byte-compile-new-defuns before emitting a warning about it.
8115             (byte-compile-from-buffer): Initialize new variable and
8116             byte-compile-noruntime-functions to nil.
8117             (byte-compile-file-form-require): record all new functions defined by a
8118             `require' in byte-compile-new-defuns.
8119             (byte-compile-file-form-defmumble): record the new alias in
8120             byte-compile-new-defuns.
8122 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
8124         Fix crash at startup related to GC of font entities
8126         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
8127         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
8128         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
8129         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
8130         Don't ifdef away font cache compaction on NT_GUI, as the problems
8131         which led to that seem to have been solved.
8132         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
8133         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
8134         cousins.  (Bug#21999)
8136 2015-11-24  Alan Mackenzie  <acm@muc.de>
8138         Byte compile: Output an error, not a warning, for odd number of args to setq
8140         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
8142 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
8144         Fix kbd_buffer iteration loop in readable_events
8146         * src/keyboard.c (readable_events): Wrap the event pointer back to the
8147         start of the kbd_buffer array inside the top of the loop instead of
8148         right before checking the loop condition, since kbd_fetch_ptr and
8149         kbd_store_ptr point past the end of the array to mean that element 0
8150         is next. (bug#21935)
8152 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
8154         Improve text-quoting-style doc again
8156         * doc/lispref/help.texi (Keys in Documentation):
8157         Omit overkill discussion of ‘setq’.  Mention Emacs versions
8158         where ‘grave’ style was standard.
8160 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
8162         Improve text-quoting-style doc
8164 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
8166         Simplify module_make_function
8168         * src/emacs-module.c (module_make_function):
8169         Simplify by calling build_unibyte_string.
8171 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
8173         Port better to FreeBSD’s dlfunc vs dlsym
8175         This avoids warnings when converting between void * and
8176         function pointers, which strict C11 does not allow.
8177         * configure.ac (dlfunc): Check for existence.
8178         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
8179         (dynlib_func): New function.
8180         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
8181         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
8182         dynlib_sym, for function pointers.
8184 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
8186         Simplify use of emacs_finalizer_function type
8188         * src/emacs-module.h (emacs_finalizer_function):
8189         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
8190         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
8192 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
8194         module_format_fun_env fixes
8196         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
8197         * src/emacs-module.c (module_format_fun_env):
8198         Convert path and sym to UTF-8.
8199         Don’t use VLAs, as the C11 standard says they’re optional,
8200         and anyway they can cause core dumps with large allocations.
8201         Use exprintf rather than snprintf, as exprintf handles arbitrarily
8202         long strings.  Simplify the code a bit.
8204 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
8206         Don't use package-user-dir in elisp-library-roots if it's not bound
8208         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
8209         use package-user-dir if it's not bound (bug#19759).
8211 2015-11-23  Anders Lindgren  <andlind@gmail.com>
8213         New visible-bell for NextStep (OS X El Capitan compatible).
8215         Instead of inverting a rectangle in the middle of the frame, use
8216         the standard NextStep image "caution", represented using an
8217         warning sign with an exclamation mark.  (Bug#21662)
8219         Implemented based on a suggestion drafted by Mustafa Kocaturk.
8221         * src/nsterm.m (EmacsBell): New class for managing the caution
8222         image.  Support multiple active bells, the image is removed once
8223         all bells have timed out.
8224         (ns_timeout): Removed, no longer used.
8225         (ns_ring_bell): Reimplemented to use EmacsBell.
8227 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
8229         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
8231         (remove-function): Ditto. (Bug#20376)
8233 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
8235         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
8237 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
8239         Improve how non-ASCII strings are accepted from modules
8241         * src/emacs-module.c (module_make_function, module_make_string):
8242         Build a unibyte Lisp string and then decode it by UTF-8, instead
8243         of building a multibyte string without decoding.  This is more
8244         tolerant to deviations from UTF-8.
8246 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
8248         Port recent module changes to pickier compilers
8250         * src/emacs-module.c (module_make_function)
8251         (module_make_string): Add casts to fix pointer signedness issues.
8253 2015-11-23  Philipp Stephani  <phst@google.com>
8255         Fix how strings are accepted from modules
8257         * emacs-module.c (module_make_function, module_make_string): Use
8258         make_multibyte_string.
8259         (module_copy_string_contents): Encode before reading the byte
8260         size.  Return false if and only if an error occurred.
8262 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
8264         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
8266 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
8268         Add the tamil-dvorak input method
8270         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
8272         * etc/NEWS: Mention the new input method.
8274 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
8276         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
8278         * src/frame.c (adjust_frame_size): Don't set
8279         FRAME_WINDOW_SIZES_CHANGED here ...
8280         * src/window.c (resize_frame_windows): ... but here, as suggested
8281         by Stefan Monnier.  Also remove some dead code along the way.
8283 2015-11-23  Alan Mackenzie  <acm@muc.de>
8285         * /etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
8287 2015-11-23  Alan Mackenzie  <acm@muc.de>
8289         Signal an error when `setf' gets an odd number of arguments.
8291         * lisp/emacs-lisp/gv.el (setf): Amend.
8293 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
8295         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
8297 2015-11-23  Alan Mackenzie  <acm@muc.de>
8299         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
8301 2015-11-23  Alan Mackenzie  <acm@muc.de>
8303         Expunge occurrences of `setq' with an odd number of arguments.
8305         * lisp/apropos.el (apropos-documentation):
8306         * lisp/obsolete/complete.el (PC-include-file-all-completions):
8307         * lisp/progmodes/compile.el (compilation-goto-locus):
8308         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
8309         Insert missing nil at end of `setq' forms.
8311         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
8312         erroneous trailing variable name from a setq, thus allowing a compilation
8313         properly to track functions not defined at runtime.
8315 2015-11-23  John Wiegley  <johnw@newartisans.com>
8317         Add a note about a questionable use of bool in xdisp.c
8319 2015-11-23  Alan Mackenzie  <acm@muc.de>
8321         Issue a warning from the byte compiler on a malformed `setq' form.
8323         Partly fixes bug#20241.
8324         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
8325         `setq' form with an odd number of arguments is compiled.
8327 2015-11-23  Alan Mackenzie  <acm@muc.de>
8329         Don't let cconv_convert insert a nil argument into a `setq' form.
8331         Fixes bug#21983.
8332         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
8333         argument into a `setq' when there're an odd number of args.  This enables the
8334         byte compiler to issue a message in this case.
8336 2015-11-23  Alan Mackenzie  <acm@muc.de>
8338         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
8340         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
8341         (syms_of_eval): Add a DEFSYM for Qsetq.
8343 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
8345         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
8347         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
8349 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
8351         Add EUDC BBDB 3 entry in NEWS
8353         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
8355 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
8357         Improve EUDC to BBDB 3 export
8359         * eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
8360         entry to single item.  Add company conversion.
8361         * eudc-export.el (eudc-bbdbify-company): New function.
8362         (bbdb-parse-phone): Declare function.
8363         (eudc-bbdbify-phone): Add BBDB 3 support.
8364         (Bug#21971)
8366 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
8368         Add BBDB 3 support for EUDC export
8370         * eudc.el: Add bbdb-version defvar.
8371         (eudc--using-bbdb-3-or-newer-p): New function.
8372         * eudc-export.el (eudc-create-bbdb-record): Add support for
8373         bbdb-create-internal argument list changes introduced in BBDB 3.
8374         * eudcb-bbdb.el: Remove bbdb-version defvar.
8375         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
8376         (Bug#21971)
8378 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
8380         Allow loading modules by 'load-file'
8382         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
8383         2nd arg, to avoid the "binding stack not balanced" error.
8384         (syms_of_lread) <module-file-suffix>: New Lisp variable.
8386         * lisp/files.el (module-file-suffix): Declare.
8387         (load-file): Remove 'module-file-suffix' from
8388         'completion-ignored-extensions', to allow completion on modules.
8390         * etc/NEWS: Mention 'module-file-suffix'.
8392 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
8394         Fix unoptimized builds
8396         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
8397         builds.
8399 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
8401         Work around the asynchronous-empty-diff problem
8403         * lisp/vc/vc-rcs.el (vc-rcs-diff):
8404         * lisp/vc/vc-mtn.el (vc-mtn-diff):
8405         * lisp/vc/vc-hg.el (vc-hg-diff):
8406         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
8407         do a synchronous process call (bug#21969).
8409 2015-11-21  Karl Fogel  <kfogel@red-bean.com>
8411         Finish excising electric indent from `open-line'
8413         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
8415         * test/automated/simple-test.el (open-line-indent, open-line-hook):
8416           Adjust accordingly.
8418         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
8419         (git commit c59353896) started.  It turns out that having INTERACTIVE
8420         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
8421         still had the electric indent behavior, as `post-self-insert-hook'
8422         normally contains `electric-indent-post-self-insert-function' ever
8423         since `electric-indent-mode' has been on by default.  Tracing the code
8424         change in `open-line' is mildly twisty, because Artur Malabarba's
8425         earliest two commits of 24 Oct 2015 first removed the `interactive'
8426         form entirely (git commit 6939896e2) and then restored it with the new
8427         extra "p" already added (git commit bd4f04f86), such that there is no
8428         single-commit diff in which one sees the second "p" appear.  Thus this
8429         change is effectively a reversion of parts of each of those commits.
8431         This could close bug#21884, at least until further discussion.
8433 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
8435         Adhere closer to the "implicit tag name" definition
8437         * lisp/progmodes/etags.el (etags-tags-completion-table):
8438         Adhere closer to the "implicit tag name" definition.  Simplify
8439         the regexp.  Search for the explicit tag name first, and when
8440         not found, search locally for the implicit one.  (Bug#21934)
8442 2015-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
8444         Unrevert most of regexp reentrancy abort patch
8446         The problem was in:
8447           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
8448         which is hence not unreverted.
8449         The rest is:
8450         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
8451         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
8452         All callers in regex.c changed back to the _FAST versions.
8454         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
8455         propertization in backward-sexp.
8457 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
8459         Revert regexp reentrancy abort patch
8461         Although the patch does fix Bug#21688 and prevents a core dump,
8462         it also makes the message-mode-propertize test fail; see:
8463         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
8464         Perhaps someone else can come up with a better fix some day.
8465         * src/syntax.c (update_syntax_table_forward):
8466         Propertize even when truncated.
8467         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
8468         (UPDATE_SYNTAX_TABLE_FAST): Remove.
8469         All callers changed back to the non-_FAST versions.
8471 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
8473         Add a few safety checks when ENABLE_CHECKING
8475         This was motivated by the recent addition of module code,
8476         which added some ENABLE_CHECKING-enabled checks that are
8477         useful elsewhere too.
8478         * src/alloc.c (compact_font_cache_entry):
8479         * src/fns.c (sweep_weak_table):
8480         * src/lread.c (oblookup):
8481         Use gc_asize rather than doing it by hand.
8482         * src/emacs-module.c (module_make_global_ref)
8483         (module_free_global_ref, module_vec_size):
8484         Omit assertions that lisp.h now checks.
8485         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
8486         check that the result is nonnegative.  Use eassume, as this
8487         info can help a bit when optimizing production code.
8488         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
8489         to be consistent with the USE_LSB_TAG case.
8490         (gc_asize): New function, when ASIZE is needed in the gc.
8491         (gc_aset): Use it.
8492         (HASH_TABLE_P): Move definition up, so that it can be used ...
8493         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
8495 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
8497         Simplify recording of main thread's ID on MS-Windows
8499         * src/w32term.c (w32_initialize):
8500         * src/w32console.c (initialize_w32_display):
8501         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
8502         ID independently for each type of session (GUI, TTY, batch).
8503         * src/w32term.c (w32_init_main_thread): New function, records the
8504         main thread's thread ID.
8505         * src/w32term.h: Add prototype for w32_init_main_thread.
8506         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
8508         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
8509         main_thread, for consistency with other threading libraries.  All
8510         users changed.  Include w32term.h.
8511         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
8512         make sure the main thread is alive, as we hold a handle on it
8513         opened by w32_init_main_thread.
8514         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
8515         w32_init_main_thread, instead of calling the requisite APIs once
8516         more.
8518 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
8520         Call 'window-size-change-functions' for mini-windows
8522         * src/window.c (grow_mini_window, shrink_mini_window): Set the
8523         frame's 'window_sizes_changed' flag.
8524         * src/xdisp.c (redisplay_internal): Call the hooks on
8525         'window-size-change-functions' if the call to 'echo_area_display'
8526         sets the frame's 'window_sizes_changed' flag.
8527         (syms_of_xdisp) <window-size-change-functions>:
8528         Update doc string to indicate the mini-window resizes trigger a
8529         call to the hooks, and don't promise that will happen "before
8530         redisplay".  (Bug#19576, Bug#21333)
8532         * doc/lispref/windows.texi (Window Hooks): Update the description
8533         of 'window-size-change-functions'.
8535 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
8537         Improve documentation of dynamic modules
8539         * src/fns.c (Frequire): Doc fix to include the dynamic module
8540         support.
8541         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
8542         dynamic module support.
8543         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
8544         wrt the MUST-SUFFIX argument.
8546         * etc/NEWS: Expand documentation of dynamically loaded modules.
8548 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
8550         Initial documentation for dynamic modules
8552         * etc/NEWS: Mention the new support for dynamically loaded modules.
8554 2015-11-20  Dmitry Gutov  <dgutov@yandex.ru>
8556         Add xref--etags-backend to xref-backing-functions using add-hook
8558         * lisp/progmodes/xref.el (xref-backend-functions): Move the
8559         default value into a separate `add-hook' call (bug#21964).
8561         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
8562         Don't declare the xref-backend-functions variable.
8563         It doesn't make any difference.
8565 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
8567         Fix double-decrement bug when freeing global refs
8569         * src/emacs-module.c (module_free_global_ref): Add a FIXME
8570         comment about error reporting.  Fix a recently-introduced typo
8571         that double-decremented the refcount.
8573 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
8575         Declare emacs_module_init in the module API
8577         * src/emacs-module.h (emacs_module_init): New decl.
8578         Without it, GCC might complain about a module that defines
8579         emacs_module_init without using it.  This also checks the
8580         API better.
8582 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
8584         Fix module test to use ptrdiff_t nargs too
8586         * modules/mod-test/mod-test.c (Fmod_test_return_t)
8587         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
8588         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
8589         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
8590         (Fmod_test_userptr_get, Fmod_test_vector_fill)
8591         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
8592         (finalizer): Remove; no longer used.
8594 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
8596         Fix reindent-introduced typo in module code
8598         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
8599         introduced while reindenting the code earlier, and add a
8600         comment explaining the unusual use of do-while here.
8602 2015-11-20  Anders Lindgren  <andlind@gmail.com>
8604         Fixed bug#19576: `write-file' saves wrong buffer.
8606         If a function on the hook `window-size-change-functions' doesn't
8607         restore the current buffer, functions that save and restore the
8608         current window configuration (like `y-or-no-p') could silently
8609         change the current buffer.  When `write-file' asked the user
8610         confirmation to overwrite a file, `y-or-no-p' changed the current
8611         buffer, and the wrong buffer was saved to the file.
8613         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
8614         using the `norecord' parameter.
8615         (follow-window-size-change): Restore current buffer. Call
8616         `select-frame' using the `norecord' parameter. Cleanup.
8618 2015-11-20  John Wiegley  <johnw@newartisans.com>
8620         Correct a documentation error in frames.texi
8622 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
8624         * lisp/cedet/mode-local.el: Delete obsolete comment
8626 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
8628         Module function arg counts are ptrdiff_t, not int
8630         * src/emacs-module.c (struct module_fun_env)
8631         (module_make_function, module_funcall, Fmodule_call):
8632         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
8633         Use ptrdiff_t, not int, for arg counts.
8634         * src/emacs-module.c (module_make_function): Don’t bother
8635         checking arity against MOST_POSITIVE_FIXNUM, as that’s
8636         unnecessary here.  Make the checking clearer by negating it.
8637         (module_make_function, Fmodule_call): No need to use xzalloc
8638         since the storage doesn’t need to be cleared.
8639         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
8640         for it, and many implementations are buggy with large VLAs anyway.
8641         Use SAFE_ALLOCA_LISP instead.
8642         (module_vec_set): Don’t crash if i < 0.
8643         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
8644         (module_vec_set, module_vec_get): Do fixnum checks only when
8645         i is out of array bounds, for efficiency in the usual case.
8646         (Fmodule_load): Simplify fixnum range check.
8647         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
8648         integer overflow in array allocation size.
8650 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
8652         Minor improvements in module test
8654         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
8655         about missing prototype of malloc.
8656         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
8657         compiler warnings.
8659 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
8661         Improve MS-Windows implementation in dynlib.c
8663         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
8664         No need to include windows.h, as w32.h already does that.
8665         <dynlib_last_err>: New static variable.
8666         (dynlib_reset_last_error): New function.
8667         (dynlib_open): Convert forward slashes to backslashes.  Convert
8668         file names from UTF-8 to either UTF-16 or the current ANSI
8669         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
8670         argument is NULL, return a handle to the main module, like
8671         'dlopen' does.  Record the error, if any, for use by dynlib_error.
8672         (dynlib_sym): Check the handle for validity. Record the error, if
8673         any, for use by dynlib_error.
8674         (dynlib_error): Call w32_strerror to produce the error string, and
8675         zero out the last error code, like dlerror does.
8676         (dynlib_close): Check the handle for validity.  Record the error,
8677         if any, for use by dynlib_error.  Don't call FreeLibrary with a
8678         handle for the main module.
8679         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
8681 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
8683         Include-file tweaks for modules
8685         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
8686         * src/dynlib.h: Do not include config.h.
8687         It’s every .c file’s responsibility to include config.h first.
8688         * src/emacs-module.c: Include emacs-module.h immediately after
8689         config.h, to test that emacs-module.h doesn’t depend on
8690         include files other than config.h.
8692 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
8694         Simplify push_handler and profile its malloc
8696         * src/lisp.h (PUSH_HANDLER): Remove.
8697         All callers changed to use push_handler directly.
8698         * src/eval.c (internal_condition_case)
8699         (internal_condition_case_1, internal_condition_case_2)
8700         (internal_condition_case_n):
8701         Use same pattern as for other invokers of push_handler.
8702         (push_handler, push_handler_nosignal): Use call-by-value
8703         instead of call-by-reference.  All uses changed.
8704         (push_handler): Simplify by rewriting in terms of
8705         push_handler_nosignal.
8706         (push_handler_nosignal): Profile any newly allocated memory.
8708 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
8710         * src/emacs-module.h: Include stddef.h, not stdlib.h.
8712 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
8714         Discover repository version in linked worktrees (bug#21930)
8716         * lisp/version.el (emacs-repository--version-git-1): Do not assume
8717         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
8718         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
8719         is nil too.
8721 2015-11-19  Juri Linkov  <juri@linkov.net>
8723         * lisp/replace.el (occur-regexp-descr): New function.
8724         (occur-1, occur-engine): Use it.
8726         * lisp/isearch.el (isearch-occur): Propertize regexp with
8727         isearch-string and isearch-regexp-function-descr for
8728         occur-regexp-descr to display the correct description
8729         message in the header (bug#21176, bug#21180).
8731 2015-11-19  Karl Fogel  <kfogel@red-bean.com>
8733         Revert `open-line' electric-indent sensitivity
8735         * lisp/simple.el (open-line): Remove electric indent code.
8736           (electric-indent-just-newline): Don't declare.
8738         * test/automated/simple-test.el (open-line-indent): Adjust test.
8740         This partly reverts Artur Malabarba's change that added electric
8741         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
8742         commit bd4f04f86), and adjusts a new test he added right afterwards
8743         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
8744         However, the new INTERACTIVE argument to `open-line', which he also
8745         added in the first commit, is not reverted here.
8747         See the thread "Questioning the new behavior of `open-line'." on the
8748         Emacs Devel mailing list, and in particular this message:
8750           From: Artur Malabarba
8751           Subject: Re: Questioning the new behavior of `open-line'.
8752           To: Karl Fogel
8753           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
8754           Date: Wed, 18 Nov 2015 21:03:58 +0000
8755           Message-ID: \
8756             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
8758           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
8760 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
8762         Omit unnecessary clear in Fmodule_load
8764         * src/emacs-module.c (Fmodule_load):
8765         Simplify and avoid unnecessary initialization of priv member to 0.
8767         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
8769 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
8771         Prefer signed integer types in module code
8773         Generally speaking, at the C level the Emacs source code prefers
8774         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
8775         partly to avoid the usual signedness confusion when comparing values.
8776         Change the module API to follow this convention.
8777         Use ‘int’ for small values that can’t exceed INT_MAX.
8778         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
8779         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
8780         (Fmod_test_vector_eq):
8781         * src/emacs-module.c (struct emacs_value_frame)
8782         (module_make_global_ref, module_free_global_ref)
8783         (module_copy_string_contents, module_make_string)
8784         (module_vec_set, module_vec_get, module_vec_size):
8785         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
8786         * src/lread.c (suffix_p):
8787         Prefer signed to unsigned integer types.
8789 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
8791         Omit ‘const’ on locals
8793         Remove ‘const’ qualifier from locals that were newly added.
8794         We don’t normally bother declaring locals with ‘const’ even
8795         though they are not modified, for the same reason we don’t
8796         bother declaring them with ‘register’ even though their
8797         addresses are not taken; the advantage in compile-time
8798         checking isn’t worth the loss of readability.
8799         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
8800         (Fmod_test_vector_fill, Fmod_test_vector_eq):
8801         * src/emacs-module.c (MODULE_SETJMP_1)
8802         (module_make_global_ref, module_free_global_ref)
8803         (module_non_local_exit_get, module_make_function)
8804         (module_extract_integer, module_extract_float)
8805         (module_get_user_ptr, module_set_user_ptr)
8806         (module_get_user_finalizer, module_set_user_finalizer)
8807         (module_vec_get, Fmodule_call)
8808         (module_non_local_exit_signal_1)
8809         (module_non_local_exit_throw_1, lisp_to_value)
8810         (finalize_storage, allocate_emacs_value, mark_modules)
8811         (module_handle_signal, module_handle_throw)
8812         (module_format_fun_env):
8813         * src/eval.c (push_handler, push_handler_nosignal)
8814         (init_handler):
8815         * src/lread.c (suffix_p):
8816         Omit unnecessary ‘const’.
8818 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
8820         Prefer intmax_t to int64_t in module code
8822         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
8823         * src/emacs-module.c (module_extract_integer)
8824         (module_make_integer):
8825         * src/emacs-module.h (struct emacs_env_25):
8826         Prefer intmax_t to int64_t.  This doesn’t change the generated
8827         code on any of the machines Emacs currently ports to, but it’s
8828         at least in theory more future-proof as C99 doesn’t guarantee
8829         that int64_t exists.
8831 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
8833         Rename module.c to emacs-module.c, etc.
8835         * src/emacs-module.c: Rename from src/module.c.
8836         * src/emacs-module.h: Rename from src/module.h.
8837         All uses changed.
8839 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
8841         Fix minor module problems found by static checking
8843         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
8844         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
8845         * src/module.c (Fmodule_load): Fix pointer signedness bug.
8846         (Fmodule_call): Tell GCC that the default case is unreachable.
8848 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
8850         Style fixes for indenting etc. in module code
8852         This is mostly indenting and spacing changes.  Also, remove
8853         some unnecessary static decls instead of bothering to reindent them.
8854         * src/module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
8855         as most other Emacs files do for this sort of thing.
8857 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
8859         Minor improvements in modules testing Makefile
8861         * modules/mod-test/Makefile (EMACS, SO): New variables.
8862         (CFLAGS): When SO = dll, don't use -fPIC.
8863         (check): New target, runs the test.
8865 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
8867         * .gitignore: Add "*.dll".
8869 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
8871         Migrate modules/.gitignore into .gitignore
8873         * .gitignore: Add former contents of modules/.gitignore.
8874         * modules/.gitignore: Remove.
8876 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
8878         Add copyright notices to module code
8880         Put them in the usual format for GNU Emacs copyright notices.
8882 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
8884         Rename emacs_module.h to module.h
8886         * src/module.h: Rename from src/emacs_module.h.
8887         All uses changed.
8889 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
8891         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
8893         * src/lread.c (Fload): Remove unused variable `size'
8895 2015-11-19  Alan Mackenzie  <acm@muc.de>
8897         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
8899 2015-11-18  Dmitry Gutov  <dgutov@yandex.ru>
8901         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
8903         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
8904         vc-parent-buffer over log-view-mode fallback (bug#21955).
8906 2015-11-18  Alan Mackenzie  <acm@muc.de>
8908         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
8910 2015-11-18  Ken Brown  <kbrown@cornell.edu>
8912         * configure.ac (LIBMODULES): Don’t define on Cygwin
8914 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
8916         Fix MS-Windows build --with-modules
8918         * src/module.c: Reformat copyright commentary.
8919         (module_vec_get): Use explicit cast to size_t to avoid compiler
8920         warning in 32-bit builds.
8921         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
8922         Compare thread IDs directly, as GetThreadId is not available
8923         before Windows Vista.
8924         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
8925         without using APIs and constants not available on XP and older
8926         systems.  Obtain and store the thread ID as well.
8928 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
8929             Philipp Stephani  <phst@google.com>
8931         Add dynamic module test and helper script
8933         Add 'modhelp.py' script (python2) to automate module testing and
8934         module generation.
8936         To build and test all modules in the modules/ dir
8937           $ ./modhelp.py test
8939         To generate a module from template code (good starting point)
8940           $ ./modhelp init mynewtestmodule
8942         See the script -h option for more documentation.
8944         * modules/modhelp.py: New module helper script.
8945         * modules/mod-test/Makefile: New file. Makefile for the test module.
8946         * modules/mod-test/mod-test.c: New file. Test module source file.
8947         * modules/mod-test/test.el: New file. ert test suite for the test module.
8948         * modules/.gitignore: New file. Local .gitignore file.
8950 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
8952         Make 'Fload' look for modules
8954         'Fload' can now load dynamic modules. This also makes 'require' work.
8956         * src/lread.c:
8957           (suffix_p): New function.
8958           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
8959           with a module suffix.
8960           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
8962 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
8963             Philipp Stephani  <phst@google.com>
8965         Add dynamic module module support
8967         * configure.ac: Add '--with-modules' option.  Conditionally add
8968           dynlib.o and module.o to the list of objects.  Add any system
8969           specific flags to the linker flags to support dynamic libraries.
8970         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
8971           attributes.
8972         * src/Makefile.in: Conditionally add module objects and linker flags.
8973         * src/alloc.c (garbage_collect_1): protect module local values from
8974           GC.
8975         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
8976         * src/emacs_module.h: New header file included by modules.  Public
8977           module API.
8978         * src/module.c: New module implementation file.
8980 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
8982         Add new User Pointer (User_Ptr) type
8984         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
8985         (XUSER_PTR): New User_Ptr accessor.
8986         * src/alloc.c (make_user_ptr): New function.
8987         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
8988         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
8989         (Fuser-ptrp): New user pointer type predicate function.
8990         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
8991         subr.
8992         * src/print.c (print_object): Add printer for User_Ptr type.
8994 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
8995             Philipp Stephani  <phst@google.com>
8997         Add portable layer for dynamic loading
8999         * src/dynlib.h: New file.
9000         * src/dynlib.c: New file.
9002 2015-11-18  Philipp Stephani  <phst@google.com>
9004         Add catch-all & no-signal version of PUSH_HANDLER
9006         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
9007         a new "catch-all" handler type.
9009         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
9010           functions.
9011         * src/fns.c (hash_remove_from_table): Expose function public.
9012         * src/lisp.h: New handler type, define macro to push_handler call.
9014 2015-11-18  Ken Brown  <kbrown@cornell.edu>
9016         Silence byte-compiler warning
9018         * lisp/server.el (server-process-filter): Silence byte-compiler
9019         warning.
9021 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
9023         Quote symbols in docstrings using `'
9025         Be more systematic about quoting symbols `like-this' rather than
9026         `like-this or 'like-this' in docstrings.  This follows up Artur
9027         Malabarba's email in:
9028         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
9030 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
9032         Fix savegames in dunnet
9034         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
9035           of separate implementation.
9037 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
9039         * lisp/emacs-lisp/package.el (package--with-response-buffer):
9041         Ensure we're at the start of the buffer before searching for
9042         the end of headers.
9044 2015-11-17  Xue Fuqiao  <xfq.free@gmail.com>
9046         * admin/release-process: Improve wording.
9048 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
9050         Fix docstring quoting problems with ‘ '’
9052         Problem reported by Artur Malabarba in:
9053         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
9054         Most of these fixes are to documentation; many involve fixing
9055         longstanding quoting glitches that are independent of the
9056         recent substitute-command-keys changes.  The changes to code are:
9057         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
9058         (describe-mode-local-overload):
9059         Substitute docstrings before displaying them.
9060         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
9061         Quote the generated docstring for later substitution.
9063 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
9065         Improve configure --help text for wide ints
9067         * configure.ac (wide-int): Clarify user-level advantages and
9068         disadvantages.
9070 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
9072         Improve doc string
9074         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
9076 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
9078         eval_sub followed dangling pointer when debugging
9080         Problem reported by Pip Cet (Bug#21245).
9081         This bug could occur in eval_sub if the C compiler reused
9082         storage associated with the ‘argvals’ local after ‘argvals’
9083         went out of scope, and if the Elisp debugger stopped on Elisp
9084         function exit and accessed ‘argvals’.  It could also occur if
9085         a variadic function was called with so many arguments (over
9086         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
9087         SAFE_FREE freed the arguments, then the memory manager used
9088         the storage for other purposes, then the debugger accessed the
9089         arguments.
9090         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
9091         function body.  Simplify local decls.
9092         When allocating args via SAFE_ALLOCA, call
9093         debugger before invoking SAFE_FREE, as the debugger needs
9094         access to the args.
9095         (eval_sub, apply_lambda): Rework to avoid need for
9096         set_backtrace_debug_on_exit hack.  This is cleaner,
9097         and should work better with buggy custom debuggers.
9099 2015-11-16  Daiki Ueno  <ueno@gnu.org>
9101         * lisp/image-mode.el: Support encrypted file
9103         (image-toggle-display-image): Read content from the buffer instead
9104         of the file, if the buffer holds a decrypted data.  (Bug#21870)
9106 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
9108         ELF unexec: align section header
9110         This ports the recent unexelf.c changes to Fedora x86-64
9111         when configured with GCC’s -fsanitize=undefined option.
9112         * src/unexelf.c (unexec): Align new_data2_size to a multiple
9113         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
9114         pointer aligned appropriately for its type.
9116 2015-11-16  Andreas Schwab  <schwab@linux-m68k.org>
9118         Do more checks on bytecode objects (Bug#21929)
9120         * src/eval.c (funcall_lambda): Check size of compiled function
9121         object.
9122         (Ffetch_bytecode): Likewise.
9124 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
9126         pcase.el: Fix edebugging of backquoted cons patterns
9128         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
9129         cons patterns. (Bug#21920)
9131 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
9133         Improve fix for regex reentrancy abort
9135         Suggested by Stefan Monnier (Bug#21688).
9136         * src/syntax.c (update_syntax_table_forward):
9137         Remove recently-added PROPERTIZE arg, and assume it is true.
9138         All callers changed.
9139         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
9140         Invoke update_syntax_table directly.
9142 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
9144         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
9146         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
9148         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
9150 2015-11-15  Vasily Korytov  <vasily.korytov@yahoo.com>
9152         Recognize .rbw and .pyw files (bug#18753)
9154         * lisp/progmodes/python.el (auto-mode-alist):
9155         Recognize .pyw files.
9157         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
9158         Recognize .rbw files.
9160 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
9162         Fix ruby-mode auto-mode-alist entry
9164         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
9165         around the extensions (bug#21257).
9167 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
9169         Fix etags completion near eob
9171         * lisp/progmodes/etags.el (tags-completion-at-point-function):
9172         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
9174 2015-11-15  Alan Mackenzie  <acm@muc.de>
9176         De-pessimize detection of C++ member initialization lists.
9178         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
9179         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
9180         is only called when a construct "looks right" rather than continually.
9181         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
9183 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
9185         Improve a few doc strings, comments
9187         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
9188         * lisp/cedet/ede/locate.el (ede-locate-base):
9189         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
9190         * src/fns.c (Fdelq): Improve doc string.
9192         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
9194 2015-11-15  Anders Lindgren  <andlind@gmail.com>
9196         Enhance NSTRACE (trace output for NextStep).
9198         Trace can be disabled for groups of functions. By default, event
9199         functions and functions that generate lots of output are disabled.
9201         Trace output of Objective-C functions now use the "[ClassName
9202         parameter:]" form.
9204         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
9205         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
9206         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
9207         controlling in which function groups trace should be active.
9208         (NSTRACE_WHEN): Support for silencing a function, this also
9209         silencing all called functions.
9210         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
9211         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
9212         print the full screen state in NSTRACE functions.
9214         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
9215         can be accessed from multiple threads.
9216         (nstrace_enabled_global): New variable, when FALSE, trace is
9217         silenced.
9218         (nstrace_restore_global_trace_state): New function, used to
9219         restore `nstrace_enabled_global' at end of block.
9220         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
9221         ([EmacsWindow setFrame:display:animation:])
9222         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
9223         and call corresponding super function.
9224         (Many functions): Add or enhance trace output.
9226         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
9228         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
9230         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
9231         and call corresponding super function.
9233 2015-11-15  Anders Lindgren  <andlind@gmail.com>
9235         Fixed a toolbar related issue on OS X.
9237         Earlier, when toggling the tool-bar in a maximized frame, the
9238         frame size didn't match the number of text lines, leaving an
9239         unused area at the bottom of the frame.
9241         * nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
9242         fullscreen modes when tool bar is disabled.
9244 2015-11-15  Anders Lindgren  <andlind@gmail.com>
9246         Fixed OS X 10.6.8 build issue (bug#21862).
9248         * src/nsterm.h (EmacsView): Add missing declarations.
9249         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
9250         the standard method but without the notification parameter.
9251         Intended to be used for direct calls.
9252         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
9253         version of `windowDidBecomeKey'. Made the notification method call
9254         the non-notification method instead of the vice versa.
9255         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
9256         needed.
9258 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
9260         * lisp/faces.el (faces--attribute-at-point): Fix an issue
9262         Previous code would signal an error when the face at point was
9263         a manually built list of attributes such as '(:foregroud "white").
9265         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
9267 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
9269         Fix regex abort when it tries to reenter itself
9271         Problem reported by Ken Raeburn.
9272         Solution suggested by Stefan Monnier (Bug#21688).
9273         * src/regex.c (re_match_2_internal):
9274         Use new _FAST functions to avoid regex code reentering itself.
9275         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
9276         All callers changed.
9277         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
9278         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
9280 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
9282         Improve Ruby 1.9-style keyword keys highlighting
9284         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
9285         Handle required keyword arguments (bug#21367).
9286         And highlight the colon together with the name.
9288 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
9290         Unify the absolutely equal xref-backend-references implementations
9292         * lisp/progmodes/elisp-mode.el (xref-backend-references):
9293         Remove.
9295         * lisp/progmodes/etags.el (xref-backend-references):
9296         Remove.
9298         * lisp/progmodes/xref.el (xref-backend-references):
9299         Define the default implementation.
9301 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
9303         Update project-find-regexp for the new xref API
9305         * lisp/progmodes/project.el (project--read-regexp):
9306         Update to use the new xref API methods.
9308         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
9310 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
9312         Fix replacing a match with a shorter string
9314         In effect, partially reverting fe973fc.
9316         * lisp/progmodes/xref.el (xref-query-replace): Store the end
9317         of each match as a marker again, instead of length.
9318         (xref--query-replace-1): Update accordingly.
9320 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
9322         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
9324         Signal user-errors instead.
9326 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
9328         Document 'describe-symbol'
9330         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
9331         (Name Help): Document "C-h o" and describe-symbol.
9333         * lisp/help-fns.el (describe-symbol): Doc fix.
9335 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
9337         Change test name to avoid spellcheck issue.
9339 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
9341         Avoid signaling an error in 'describe-symbol'
9343         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
9344         exists as a function/variable/face/etc., but is undocumented.
9346         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
9347         test.
9349 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
9351         * INSTALL (--with-cairo): Document this new configure option.
9353 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
9355         Document that GNU Make >= 3.81 is required to build Emacs
9357         * doc/lispref/internals.texi (Building Emacs): Document that GNU
9358         Make 3.81 or later is now required.
9360 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
9362         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
9364 2015-11-13  l3thal  <kwhite@gnu.org>
9366         Merge branch 'erc-async-reconnect' into emacs-25
9368         Reconnect asynchronously.
9370 2015-11-11  Alan Mackenzie  <acm@muc.de>
9372         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
9374         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
9375         Windows" and new @defun selected-window-group.
9376         (Window Start and End): Describe new &optional parameter GROUP and
9377         ...-group-function for window-start, window-end, set-window-start, and
9378         pos-visible-in-window-p.
9379         (Textual Scrolling) Describe the same for recenter.
9380         doc/lispref/positions.texi (Screen Lines): Describe the same for
9381         move-to-window-line.
9383         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
9384         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
9385         new optional parameter "group".  At the beginning of each, check whether the
9386         corresponding ...-group-function is set to a function, and if so execute this
9387         function in place of the normal processing.
9388         (syms_of_window): Define symbols for the six new variables below.
9389         (window-start-group-function, window-end-group-function)
9390         (set-window-start-group-function, recenter-group-function)
9391         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
9392         New permanent local buffer local variables.
9393         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
9394         Fpos_visible_in_window_p.
9396         lisp/window.el (selected-window-group-function): New permanent local buffer
9397         local variable.
9398         (selected-window-group): New function.
9400         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
9401         enable, kill them at mode disable.  Add/remove follow-after-change to/from
9402         after-change-functions.
9403         (follow-start-end-invalid): New variable.
9404         (follow-redisplay): Manipulate follow-start-end-invalid.
9405         (follow-after-change, follow-window-start, follow-window-end)
9406         (follow-set-window-start, follow-pos-visible-in-window-p)
9407         (follow-move-to-window-line, follow-sit-for): New functions.
9409         lisp/isearch.el (isearch-call-message): New macro.
9410         (isearch-update, with-isearch-suspended, isearch-del-char)
9411         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
9412         (with-isearch-suspended): Rearrange code such that isearch-call-message is
9413         invoked before point is moved.
9414         (isearch-message): Add comment about where point must be at function call.
9415         (isearch-search): Remove call to isearch-message.
9416         (isearch-lazy-highlight-window-group): New variable.
9417         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
9418         the battery of tests to ...
9419         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
9420         Note: (sit-for 0) is still called.
9421         (isearch-lazy-highlight-update): Check membership of
9422         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
9423         property.
9424         (isearch-update, isearch-done, isearch-string-out-of-window)
9425         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
9426         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
9427         (isearch-lazy-highlight-update): Call the six amended primitives (see
9428         src/window.c above) with the new `group' argument set to t, to cooperate
9429         with Follow Mode.
9431 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
9433         * shr.el (shr-descend): Allow using lambdas in external functions.
9435 2015-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9437         * admin/gitmerge.el: Tweaks that seemed necessary
9439         * admin/gitmerge.el (gitmerge-skip-regexp): Remove "sync".
9440         (gitmerge-maybe-resume): Provide explicit empty commit message.
9442 2015-12-25  Łukasz Stelmach  <stlman@poczta.fm>  (tiny change)
9444         Use a different port for TLS erc
9446         * lisp/erc/erc.el (erc-default-port-tls): New variable
9447         (bug#19497).
9448         * lisp/erc/erc.el (erc-tls): Use it.
9450 2015-12-25  Alain Schneble  <a.s@realize.ch>
9452         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
9454         * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
9455         * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
9456         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
9457         information in URL-struct.
9458         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
9459         path and query into nil path and query, respectively.
9460         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
9461         empty path into an absolute ("/") path.
9462         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
9463         fragment-only URIs. Do not just return them unchanged.
9464         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
9465         reference URI should not drop the last segment.
9467 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9469         Let url use default file modes when copying files
9471         * lisp/url/url-handlers.el (url-copy-file): Use default file
9472         modes when copying files (bug#11400).
9474 2015-12-25  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
9476         Doc fix for url-http
9478         * lisp/url/url-http.el (url-http): Document better return values
9479           (bug#13187) (tiny change)
9481 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9483         * eww.el (eww-display-html): Support <button> tags (bug#20485).
9485 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9487         Made ffap-url-p a defun instead of a defsubst
9489         * lisp/ffap.el (ffap-url-p): Change from defsusbt to defun,
9490         since there doesn't seem to be much of a reason for it to be a
9491         defsubst (bug#18203).
9493 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9495         Add a command to view files in the browser to dired
9497         * lisp/dired.el (dired-mode-map): Add the `W' command
9498         (bug#18810).
9500 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9502         Allow http://user:pass@foo/ URLs again
9504         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
9505         user/passwords in URLs (bug#19046).
9507 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9509         * eww.el (eww-mode-map): Fix command name of eww-toggle-colors.
9511 2015-12-25  Samer Masterson  <samer@samertm.com>
9513         Autoload url-insert-buffer-contents
9515         * lisp/url/url-handlers.el: Add autoload cookie so that
9516         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
9518 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9520         Allow toggling colors in eww
9522         * doc/misc/eww.texi (Basics): Mention "C".
9524         * lisp/net/eww.el (eww-toggle-colors): New command and keystroke.
9526         * lisp/net/shr.el (shr-use-colors): New variable.
9527         (shr-colorize-region): Use it.
9529 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9531         Follow meta refresh tags in eww
9533         * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
9535 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9537         More eww file name coding fixes
9539         * eww.el (eww-decode-url-file-name): Use the base coding
9540         system to check for encodability.
9542 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9544         Always save eww history
9546         * eww.el (eww-setup-buffer): Always save history, even when
9547         called from outside the eww buffer (bug#19638).
9549 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9551         Default web pages to right-to-left
9553         * eww.el (eww-mode): Most web pages are left-to-right, so make
9554         that the default (bug#19801).
9556         * shr.el (shr-tag-html): Respect "dir" attributes
9557         (left-to-right, right-to-left).
9559 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9561         Make toggling checkboxes work again
9563         * eww.el (eww-update-field): Make toggling checkboxes work
9564         again (bug#21881).
9566 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9568         Don't store cookies with empty names
9570         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
9571         cookies with empty names (bug#21936).
9573 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9575         * shr.el (shr-descend): Stop rendering before we run out of
9576         specpdl room (bug#22117).
9578 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9580         Use cl-reduce, not reduce.
9582 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9584         Allow several <tbody> tags in shr
9586         * shr.el (shr-table-body): New function to find the real body
9587         of a table.
9588         (shr-tag-table): Use it to render several <tbody> tags in a
9589         table (bug#22170).
9591 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
9593         Make prettier unique file names in eww
9595         (eww-make-unique-file-name): Make unique file names by making
9596         files like foo(2).jpg instead of foo(1)(2).jpg.
9598 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
9600         Decode hex-encoded URLs before using them as file names
9602         * eww.el (eww-decode-url-file-name): New function.
9603         (eww-download-callback): Use it to decode file names before
9604         saving them.
9606 2015-12-24  Ashish SHUKLA  <ashish.is@lostca.se>  (tiny change)
9608         * doc/misc/emacs-gnutls.texi (Help For Users): Document FreeBSD bundle.
9609         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
9611 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
9613         Allow overriding shr functions from eww
9615         * eww.el (eww-display-html): Allow overriding elements in
9616         `shr-external-rendering-functions'.
9618 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
9620         Ignore invalid SVG images
9622         * shr.el (shr-tag-svg): Ignore SVG images that have no width
9623         or height, because these can't be displayed by ImageMagick,
9624         anyway.
9626 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
9628         shr table rendering fix
9630         * shr.el (shr-tag-table): Allow rendering body-less tables
9631         that have headers.
9633 2015-12-22  Sam Steingold  <sds@gnu.org>
9635         clipboard should still work even if interprogram-* is disabled
9637         (clipboard-yank): When `interprogram-cut-function' is nil,
9638         bind it to `gui-selection-value' - the default value.
9639         (clipboard-kill-region, clipboard-kill-ring-save): When
9640         `interprogram-paste-function' is nil, bind it to `gui-select-text' -
9641         the default value.
9643 2015-12-18  Phillip Lord  <phillip.lord@russet.org.uk>
9645         Fix bootstrap issue with dired-loaddefs
9647         * lisp/dired.el: Autoloads for secondary files loaded optionally.
9649 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
9651         dired generate autoloads to non-versioned file.
9653         * lisp/dired.el: Remove autoloads.
9654         * lisp/Makefile.in: Add dired to autogenel.
9655         * lisp/dired-aux.el,lisp/dired-x.el: Update file local.
9656         * test/lisp/dired-tests.el: Add new test.
9658 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
9660         eieio generate autoloads to non-versioned file.
9662         * lisp/Makefile.in: eieio-loaddefs add to autogenel.
9663         * lisp/emacs-lisp/eieio.el,lisp/emacs-lisp/eieio-core.el:
9664           Remove autoloads.
9665         * lisp/emacs-lisp/eieio-compat.el,lisp/emacs-lisp/eieio-custom.el,
9666           lisp/emacs-lisp/eieio-opt.el: Update file local.
9667         * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.
9669 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
9671         htmlfontify generate autoload to non-versioned file.
9673         * lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
9674         * lisp/hfy-cmap.el: Update file local.
9675         * lisp/htmlfontify.el: Remove autoloads, add require.
9676         * test/lisp/htmlfontify-tests.el: Test autoload functionality.
9678 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
9680         ibuffer generate autoloads to non-versioned file.
9682         * lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
9683         * lisp/ibuf-ext.el: Update file local.
9684         * lisp/ibuffer.el: Remove autoloads and add a require.
9685         * test/lisp/ibuffer-tests.el: Test that autoload is working.
9687 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
9689         rmail generate autoloads to non-versioned file.
9691         * lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
9692         * lisp/mail/rmail.el: Remove autoloads, add require.
9693         * lisp/mail/rmailedit.el,lisp/mail/rmailkwd.el,
9694           lisp/mail/rmailmm.el,lisp/mail/rmailmsc.el,
9695           lisp/mail/rmailsort.el,lisp/mail/rmailsum.el,
9696           lisp/mail/undigest.el: Update file-local.
9697         * test/lisp/mail/rmail-tests.el:
9699 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
9701         Add autoload-force target.
9703         * lisp/Makefile.in (autoload-force): New target.
9705 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
9707         ps-print generate autoloads to non versioned file.
9709         * lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
9710         * lisp/ps-print.el: Remove autoloads.
9711         * lisp/ps-mule.el: Update file-local.
9712         * test/lisp/ps-print-tests.el: Test autoload functionality.
9714 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
9716         reftex generate autoloads to non versioned file.
9718         * lisp/Makefile.in: Add reftex-loaddefs to autogen files
9719         * lisp/textmodes/reftex.el: Remove autoloads.
9720         * lisp/textmodes/reftex-auc.el,lisp/textmodes/reftex-cite.el,
9721           lisp/textmodes/reftex-dcr.el,lisp/textmodes/reftex-global.el,
9722           lisp/textmodes/reftex-index.el,lisp/textmodes/reftex-parse.el,
9723           lisp/textmodes/reftex-ref.el,lisp/textmodes/reftex-sel.el,
9724           lisp/textmodes/reftex-toc.el: Update autoload file-local.
9725         * test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
9726           function.
9728 2015-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
9730         * lisp/calculator.el (calculator-define-key): Undo last change
9732         Make map argument mandatory instead (bug#22106).
9733         (calculator-add-operators): Pass the argument that's not optional any more.
9735 2015-12-03  Glenn Morris  <rgm@gnu.org>
9737         * Makefile.in: Avoid duplication.
9739         (have-tests): New rule.
9740         (check, check-maybe): Use it.
9742 2015-12-02  Phillip Lord  <phillip.lord@russet.org.uk>
9744         make check unconditional, check-maybe top-level.
9746          * Makefile.in: Add check-maybe target.
9747          * test/Makefile.in: Restore unconditional behaviour to make check.
9749 2015-12-01  Phillip Lord  <phillip.lord@russet.org.uk>
9751         Tests now support out-of-source-build.
9753          * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
9754            about current working directory.
9756 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
9758         * lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
9760 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
9762         Improve documentation and clean up.
9764          * test/Makefile.in: Improve documentation, use EMACS variable
9765            correctly, and clean up makefile rules.
9767 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
9769         Update file headers for name change.
9771          * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
9773 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
9775         Test files renamed to new scheme.
9777          * (finalizer-tests.el): Now renamed alloc-tests.el
9778          * (zlib-tests.el): Now renamed decompress-tests.el.
9780 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
9782         Tests now depend on source files
9784          * test/Makefile.in: Include dependences from tests to source files.
9785          * test/make-test-deps.emacs-lisp: New file
9786          * .gitignore: Ignore generated make include file
9788 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
9790         * lisp/progmodes/which-func.el: Improve disabling the mode
9792         Use lexical-binding.
9793         (which-func-modes, which-func-non-auto-modes, which-func-maxout)
9794         (which-func, which-func-format): Remove redundant :group arg.
9795         (which-func-try-to-enable): New function.
9796         (which-func-ff-hook, which-function-mode): Use it.
9797         (mode-line-misc-info): Add ourselves here instead of in bindings.el.
9798         * lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
9800 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
9802         * lisp/calculator.el (calculator-define-key): Silence warning
9804         ...about unknown calculator-mode-map.
9806 2015-11-29  Eli Barzilay  <eli@barzilay.org>
9808         * lisp/calculator.el: more improvements and bugfixes.
9810         - Mark `calculator-paste-decimals' as obsolete.  (It wasn't having an
9811           effect anyway.)
9813         - Simplify `calculator-number-to-string' by throwing most of the work
9814           onto `number-to-string', leaving just some tweaks for decimal inputs.
9815           This leads to some minor changes, for example, pasting "1x1" in hex
9816           mode would warn that "x" is ignored and result in "11" (and it wasn't
9817           done in decimal mode), whereas now it just ignores everything from the
9818           "x" and on and result in a "1" just like in decimal input mode.  Also,
9819           overflows are left for `number-to-string' to deal with.
9821         - `calculator-paste' is very simple as a result.
9823         - Extend the simplified `calculator-paste': with a prefix argument it
9824           pastes a string as if the characters were entered.  This can be used
9825           to reduce expressions, but note that it's a simple literal operation,
9826           so precedence can be messed, a number can be paster while entering a
9827           number, spaces and newlines matter, etc.
9829         - Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
9830           operator.
9832         - Fix a bug in `calculator-put-value': avoid grouping in the display
9833           that is used to construct `calculator-curnum'.  This would trigger
9834           when pasting or getting a value from a register in some radix mode
9835           with a large enough value.  Another fix: make the output radix equal
9836           the input one, otherwise numbers could be converted twice.
9838 2015-11-29  Eli Barzilay  <eli@barzilay.org>
9840         * lisp/calculator.el: Re-do key bindings.
9842         Use a helper function that arranges a parent keymap that binds alternate
9843         case keys so if some letter key is unbound and it's un/shifted version
9844         is, it will get used.  This makes the global-map trickery unnecessary.
9846         Also switch to passing strings that name keys through `kbd'.
9848 2015-11-29  Eli Barzilay  <eli@barzilay.org>
9850         * lisp/calculator.el: improve radix modes
9852         Fix prompt for some input radix with decimal output (eg, "BD" instead of
9853         the incorrect "B="); also, some minor docstring tweaks for these.
9855 2015-11-29  Eli Barzilay  <eli@barzilay.org>
9857         * lisp/calculator.el: better reading of register names
9859         Use `register-read-with-preview' with a dynamically bound
9860         `register-alist' and a proper preview function to read register names.
9862 2015-11-29  Eli Barzilay  <eli@barzilay.org>
9864         * lisp/calculator.el: General improvements
9866         Use things like `when', `unless', and `push'.
9868         Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
9869         non-electric mode.
9871 2015-11-28  Michael Albinus  <michael.albinus@gmx.de>
9873         Fix a problem with gfilenotify in filenotify-tests.el
9875         * test/lisp/filenotify-tests.el
9876         (file-notify--test-expected-events): Remove.
9877         (file-notify--test-cleanup): Do not set that variable.
9878         (file-notify--test-with-events): EVENTS can also be a list of lists.
9879         (file-notify-test02-events, file-notify-test04-file-validity):
9880         Adapt expected result.
9882 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
9884         * .gitignore: Adjust to changes in 'test' directory structure.
9886 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
9888         Fix test/manual/etags/Makefile
9890         * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
9891         changes in 'test' directory structure.
9893 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
9895         Exclude resource dirs from search for tests.
9897         * test/Makefile.in: Test file locations are now found with find
9898           rather than using finds native functions.
9900 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
9902         Add test targets without directory names.
9904          * (test/Makefile.in): Extend test_template to add two targets for each
9905            file.
9907 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
9909         * lisp/emacs-lisp/package.el: Require url-handlers
9911 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
9913         Move elisp-mode-tests to new function names.
9915          * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
9916          find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
9918 2015-11-27  Juanma Barranquero  <lekktu@gmail.com>
9920         * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
9922 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
9924         Merge branch 'feature/standard-test-location'
9926 2015-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9928         * lisp/emacs-lisp/eieio.el: Add some default implementations
9930         (standard-class): Mark it obsolete.
9931         (slot-missing): Give it a default implementation.
9932         (destructor): Simplify and mark it obsolete.
9933         (object-print): Give it a default implementation.
9934         (eieio-change-class): Rename from change-class.
9935         (change-class): Redefine as obsolete alias.
9937 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
9939         Some final fixes in file notification before merging with master
9941         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
9942         (file-notify-callback): Improve check for `stopped' event.  Call
9943         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
9944         (file-notify-add-watch): In case FILE is not a directory, call the
9945         file monitor for the kqueue backend.  Otherwise, call the
9946         directory monitor for the upper directory.
9948         * src/inotify.c (inotifyevent_to_event): Extract file name from
9949         watch_object if the event doesn't provide it.
9950         (Finotify_add_watch): Add file name to watch_object.
9952         * test/automated/file-notify-tests.el (file-notify--test-timeout):
9953         Use different timeouts for different libraries.
9954         (file-notify--test-with-events): Suppress lock files.  Flush
9955         outstanding events before running the body.
9956         (file-notify-test02-events, file-notify-test04-file-validity): Do
9957         not skip cygwin tests.  Add additional test for file creation.
9958         Adapt expected result for different backends.
9959         (file-notify-test03-autorevert): Some of the tests don't work for
9960         w32notify.
9961         (file-notify-test06-many-events): Rename into both directions.
9963 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
9965         Rework file notifications, kqueue has problems with directory monitors
9967         * lisp/filenotify.el (file-notify-add-watch): Call the native
9968         add-watch function on the file, not on the dir.
9970         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
9971         about already deleted entries.
9973         * test/automated/auto-revert-tests.el
9974         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
9975         since this deletes the target file first.
9977         * test/automated/file-notify-tests.el (file-notify--test-event-test):
9978         Make stronger checks.
9979         (file-notify-test01-add-watch, file-notify-test02-events)
9980         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
9981         Rewrite in order to call file monitors but directory monitors.
9982         (file-notify-test06-many-events): Ler rename work in both directions.
9984 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
9986         Continue with pending events
9988         * src/kqueue.c (pending_events): Remove global variable.
9989         (kqueue_compare_dir_list): Create `write' event for not used
9990         pending events.
9991         (globals_of_kqueue): Remove initialization of pending_events.
9993 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
9995         Improve loops in file-notify-test06-many-events
9997         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
9998         Use `read-event' pauses for the `write-file' loops; otherwise
9999         events are lost in inotify and gfilenotify cases.
10001 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
10003         Handle more complex rename operation in kqueue
10005         * src/kqueue.c (pending_events): New variable.
10006         (kqueue_compare_dir_list): Handle more complex rename operation.
10007         (globals_of_kqueue): Initialize pending_events.
10009         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
10010         Adapt expected events in the `rename-file' case.
10011         (file-notify-test06-many-events-remote): Declare.
10013 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
10015         New test with a larger number of events
10017         * test/automated/file-notify-tests.el (file-notify--test-with-events):
10018         Make timeout heuristically depend on the number of events.
10020         (file-notify-test06-many-events): Use it for new test.
10022 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
10024         Further fixes for kqueue
10026         * lisp/filenotify.el (file-notify-callback): Raise also event if
10027         directory name matches.
10028         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
10030         * src/kqueue.c (kqueue_generate_event): Use watch_object as
10031         argument instead of ident.  Remove callback argument.  Adapt
10032         callees.  Check actions whether they are monitored flags.
10034         * test/automated/file-notify-tests.el (file-notify--test-library):
10035         New defun.
10036         (file-notify-test00-availability, file-notify-test02-events)
10037         (file-notify-test04-file-validity)
10038         (file-notify-test05-dir-validity): Use it.
10039         (file-notify-test02-events, file-notify-test04-file-validity): Add
10040         `read-event' calls between different file actions, in order to
10041         give the backends a chance to rais an event.  Needed especially
10042         for kqueue.  In case of deleting a directory, there are two
10043         `deleted' events.
10045 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
10047         Code cleanup of kqueue.c
10049         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
10050         (kqueue_compare_dir_list): Do not loop when calling
10051         directory_files_internal.  Remove checks for "." and "..", this is
10052         done in kqueue_directory_listing now.
10053         (Fkqueue_add_watch): Check for proper emacs_open flags.
10055 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
10057         Doc changes for kqueue
10059         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
10060         Fix some glitches in the example.
10062 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
10064         Finish implementation in kqueue.c
10066         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
10067         Simplify access to list.
10068         (kqueue_compare_dir_list): Simplify access to list.  Raise
10069         `delete' event if directory does not exist any longer.  Otherwise,
10070         wait until directory contents has changed.  Fix error in check.
10072 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
10074         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
10076 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
10078         More work on kqueue
10080         * lisp/filenotify.el (file-notify-callback): Handle also the
10081         `rename' event from kqueue.
10082         (file-notify-add-watch): Do not register an entry twice.
10084         * src/kqueue.c (kqueue_directory_listing): New function.
10085         (kqueue_generate_event): New argument FILE1.  Adapt callees.
10086         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
10088 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
10090         Implement directory events
10092         * lisp/filenotify.el (file-notify-handle-event)
10093         (file-notify-callback): Remove traces.
10095         * src/kqueue.c: Include <sys/time.h>.
10096         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
10097         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
10098         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
10099         Compute initial directory listing.  Close file descriptor in case
10100         of errors.
10101         (syms_of_kqueue): Declare Qcreate.
10103 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
10105         Build fixes for kqueue support
10107         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
10108         flag.
10110         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
10111         kqueue on *BSD.
10113 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
10115         Continue kqueue implementation
10117         * lisp/filenotify.el (file-notify-handle-event)
10118         (file-notify-callback): Enable trace messages.
10120         * src/kqueue.c: Include also <sys/types.h>.
10121         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
10122         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
10123         (syms_of_kqueue): Add them.
10125 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
10127         Work on kqueue
10129         * lisp/filenotify.el (file-notify--library)
10130         (file-notify-descriptors, file-notify-callback)
10131         (file-notify-add-watch, file-notify-rm-watch)
10132         (file-notify-valid-p): Add kqueue support.
10134         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
10136 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
10138         Add kqueue support
10140         * configure.ac (--with-file-notification): Add kqueue.
10141         (top): Remove special test for "${HAVE_NS}" and
10142         ${with_file_notification}, this is handled inside gfilenotify
10143         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
10144         instead of library specific variables.
10146         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
10148         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
10150         * src/kqueue.c: New file.
10152         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
10154 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
10156         Update elisp-mode-tests for changed file location.
10158          * test/lisp/progmodes/elisp-mode-tests.el:
10160 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
10162         Exclude manual tests from Makefile
10164          * test/Makefile.in:
10166 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
10168         Move package test files to new directory.
10170          * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
10171          * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
10173 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
10175         Restore delete Makefiles and fix .gitignore.
10177          * .gitignore: Update Makefiles to changed locations
10178          * test/lisp/progmodes/flymake-resources/Makefile,
10179            test/manual/etags/Makefile,
10180            test/manual/etags/make-src/Makefile,
10181            test/manual/indent/Makefile: Restored and moved to new location.
10183 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
10185         Test infrastructure: updates after directory move
10187          * (test/Makefile.in): Support directories several levels deep.
10188          * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
10189          * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
10191 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
10193         Rename all test files to reflect source layout.
10195          * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
10196            test directory moves.
10197          * test/file-organisation.org: New file.
10198          * test/automated/Makefile.in
10199            test/automated/data/decompress/foo.gz
10200            test/automated/data/epg/pubkey.asc
10201            test/automated/data/epg/seckey.asc
10202            test/automated/data/files-bug18141.el.gz
10203            test/automated/data/flymake/test.c
10204            test/automated/data/flymake/test.pl
10205            test/automated/data/package/archive-contents
10206            test/automated/data/package/key.pub
10207            test/automated/data/package/key.sec
10208            test/automated/data/package/multi-file-0.2.3.tar
10209            test/automated/data/package/multi-file-readme.txt
10210            test/automated/data/package/newer-versions/archive-contents
10211            test/automated/data/package/newer-versions/new-pkg-1.0.el
10212            test/automated/data/package/newer-versions/simple-single-1.4.el
10213            test/automated/data/package/package-test-server.py
10214            test/automated/data/package/signed/archive-contents
10215            test/automated/data/package/signed/archive-contents.sig
10216            test/automated/data/package/signed/signed-bad-1.0.el
10217            test/automated/data/package/signed/signed-bad-1.0.el.sig
10218            test/automated/data/package/signed/signed-good-1.0.el
10219            test/automated/data/package/signed/signed-good-1.0.el.sig
10220            test/automated/data/package/simple-depend-1.0.el
10221            test/automated/data/package/simple-single-1.3.el
10222            test/automated/data/package/simple-single-readme.txt
10223            test/automated/data/package/simple-two-depend-1.1.el
10224            test/automated/abbrev-tests.el
10225            test/automated/auto-revert-tests.el
10226            test/automated/calc-tests.el
10227            test/automated/icalendar-tests.el
10228            test/automated/character-fold-tests.el
10229            test/automated/comint-testsuite.el
10230            test/automated/descr-text-test.el
10231            test/automated/electric-tests.el
10232            test/automated/cl-generic-tests.el
10233            test/automated/cl-lib-tests.el
10234            test/automated/eieio-test-methodinvoke.el
10235            test/automated/eieio-test-persist.el
10236            test/automated/eieio-tests.el
10237            test/automated/ert-tests.el
10238            test/automated/ert-x-tests.el
10239            test/automated/generator-tests.el
10240            test/automated/let-alist.el
10241            test/automated/map-tests.el
10242            test/automated/advice-tests.el
10243            test/automated/package-test.el
10244            test/automated/pcase-tests.el
10245            test/automated/regexp-tests.el
10246            test/automated/seq-tests.el
10247            test/automated/subr-x-tests.el
10248            test/automated/tabulated-list-test.el
10249            test/automated/thunk-tests.el
10250            test/automated/timer-tests.el
10251            test/automated/epg-tests.el
10252            test/automated/eshell.el
10253            test/automated/faces-tests.el
10254            test/automated/file-notify-tests.el
10255            test/automated/auth-source-tests.el
10256            test/automated/gnus-tests.el
10257            test/automated/message-mode-tests.el
10258            test/automated/help-fns.el
10259            test/automated/imenu-test.el
10260            test/automated/info-xref.el
10261            test/automated/mule-util.el
10262            test/automated/isearch-tests.el
10263            test/automated/json-tests.el
10264            test/automated/bytecomp-tests.el
10265            test/automated/coding-tests.el
10266            test/automated/core-elisp-tests.el
10267            test/automated/decoder-tests.el
10268            test/automated/files.el
10269            test/automated/font-parse-tests.el
10270            test/automated/lexbind-tests.el
10271            test/automated/occur-tests.el
10272            test/automated/process-tests.el
10273            test/automated/syntax-tests.el
10274            test/automated/textprop-tests.el
10275            test/automated/undo-tests.el
10276            test/automated/man-tests.el
10277            test/automated/completion-tests.el
10278            test/automated/dbus-tests.el
10279            test/automated/newsticker-tests.el
10280            test/automated/sasl-scram-rfc-tests.el
10281            test/automated/tramp-tests.el
10282            test/automated/obarray-tests.el
10283            test/automated/compile-tests.el
10284            test/automated/elisp-mode-tests.el
10285            test/automated/f90.el
10286            test/automated/flymake-tests.el
10287            test/automated/python-tests.el
10288            test/automated/ruby-mode-tests.el
10289            test/automated/subword-tests.el
10290            test/automated/replace-tests.el
10291            test/automated/simple-test.el
10292            test/automated/sort-tests.el
10293            test/automated/subr-tests.el
10294            test/automated/reftex-tests.el
10295            test/automated/sgml-mode-tests.el
10296            test/automated/tildify-tests.el
10297            test/automated/thingatpt.el
10298            test/automated/url-future-tests.el
10299            test/automated/url-util-tests.el
10300            test/automated/add-log-tests.el
10301            test/automated/vc-bzr.el
10302            test/automated/vc-tests.el
10303            test/automated/xml-parse-tests.el
10304            test/BidiCharacterTest.txt
10305            test/biditest.el
10306            test/cedet/cedet-utests.el
10307            test/cedet/ede-tests.el
10308            test/cedet/semantic-ia-utest.el
10309            test/cedet/semantic-tests.el
10310            test/cedet/semantic-utest-c.el
10311            test/cedet/semantic-utest.el
10312            test/cedet/srecode-tests.el
10313            test/cedet/tests/test.c
10314            test/cedet/tests/test.el
10315            test/cedet/tests/test.make
10316            test/cedet/tests/testdoublens.cpp
10317            test/cedet/tests/testdoublens.hpp
10318            test/cedet/tests/testfriends.cpp
10319            test/cedet/tests/testjavacomp.java
10320            test/cedet/tests/testnsp.cpp
10321            test/cedet/tests/testpolymorph.cpp
10322            test/cedet/tests/testspp.c
10323            test/cedet/tests/testsppcomplete.c
10324            test/cedet/tests/testsppreplace.c
10325            test/cedet/tests/testsppreplaced.c
10326            test/cedet/tests/testsubclass.cpp
10327            test/cedet/tests/testsubclass.hh
10328            test/cedet/tests/testtypedefs.cpp
10329            test/cedet/tests/testvarnames.c
10330            test/etags/CTAGS.good
10331            test/etags/ETAGS.good_1
10332            test/etags/ETAGS.good_2
10333            test/etags/ETAGS.good_3
10334            test/etags/ETAGS.good_4
10335            test/etags/ETAGS.good_5
10336            test/etags/ETAGS.good_6
10337            test/etags/a-src/empty.zz
10338            test/etags/a-src/empty.zz.gz
10339            test/etags/ada-src/2ataspri.adb
10340            test/etags/ada-src/2ataspri.ads
10341            test/etags/ada-src/etags-test-for.ada
10342            test/etags/ada-src/waroquiers.ada
10343            test/etags/c-src/a/b/b.c
10344            test/etags/c-src/abbrev.c
10345            test/etags/c-src/c.c
10346            test/etags/c-src/dostorture.c
10347            test/etags/c-src/emacs/src/gmalloc.c
10348            test/etags/c-src/emacs/src/keyboard.c
10349            test/etags/c-src/emacs/src/lisp.h
10350            test/etags/c-src/emacs/src/regex.h
10351            test/etags/c-src/etags.c
10352            test/etags/c-src/exit.c
10353            test/etags/c-src/exit.strange_suffix
10354            test/etags/c-src/fail.c
10355            test/etags/c-src/getopt.h
10356            test/etags/c-src/h.h
10357            test/etags/c-src/machsyscalls.c
10358            test/etags/c-src/machsyscalls.h
10359            test/etags/c-src/sysdep.h
10360            test/etags/c-src/tab.c
10361            test/etags/c-src/torture.c
10362            test/etags/cp-src/MDiagArray2.h
10363            test/etags/cp-src/Range.h
10364            test/etags/cp-src/burton.cpp
10365            test/etags/cp-src/c.C
10366            test/etags/cp-src/clheir.cpp.gz
10367            test/etags/cp-src/clheir.hpp
10368            test/etags/cp-src/conway.cpp
10369            test/etags/cp-src/conway.hpp
10370            test/etags/cp-src/fail.C
10371            test/etags/cp-src/functions.cpp
10372            test/etags/cp-src/screen.cpp
10373            test/etags/cp-src/screen.hpp
10374            test/etags/cp-src/x.cc
10375            test/etags/el-src/TAGTEST.EL
10376            test/etags/el-src/emacs/lisp/progmodes/etags.el
10377            test/etags/erl-src/gs_dialog.erl
10378            test/etags/f-src/entry.for
10379            test/etags/f-src/entry.strange.gz
10380            test/etags/f-src/entry.strange_suffix
10381            test/etags/forth-src/test-forth.fth
10382            test/etags/html-src/algrthms.html
10383            test/etags/html-src/index.shtml
10384            test/etags/html-src/software.html
10385            test/etags/html-src/softwarelibero.html
10386            test/etags/lua-src/allegro.lua
10387            test/etags/objc-src/PackInsp.h
10388            test/etags/objc-src/PackInsp.m
10389            test/etags/objc-src/Subprocess.h
10390            test/etags/objc-src/Subprocess.m
10391            test/etags/objcpp-src/SimpleCalc.H
10392            test/etags/objcpp-src/SimpleCalc.M
10393            test/etags/pas-src/common.pas
10394            test/etags/perl-src/htlmify-cystic
10395            test/etags/perl-src/kai-test.pl
10396            test/etags/perl-src/yagrip.pl
10397            test/etags/php-src/lce_functions.php
10398            test/etags/php-src/ptest.php
10399            test/etags/php-src/sendmail.php
10400            test/etags/prol-src/natded.prolog
10401            test/etags/prol-src/ordsets.prolog
10402            test/etags/ps-src/rfc1245.ps
10403            test/etags/pyt-src/server.py
10404            test/etags/tex-src/gzip.texi
10405            test/etags/tex-src/nonewline.tex
10406            test/etags/tex-src/testenv.tex
10407            test/etags/tex-src/texinfo.tex
10408            test/etags/y-src/atest.y
10409            test/etags/y-src/cccp.c
10410            test/etags/y-src/cccp.y
10411            test/etags/y-src/parse.c
10412            test/etags/y-src/parse.y
10413            test/indent/css-mode.css
10414            test/indent/js-indent-init-dynamic.js
10415            test/indent/js-indent-init-t.js
10416            test/indent/js-jsx.js
10417            test/indent/js.js
10418            test/indent/latex-mode.tex
10419            test/indent/modula2.mod
10420            test/indent/nxml.xml
10421            test/indent/octave.m
10422            test/indent/pascal.pas
10423            test/indent/perl.perl
10424            test/indent/prolog.prolog
10425            test/indent/ps-mode.ps
10426            test/indent/ruby.rb
10427            test/indent/scheme.scm
10428            test/indent/scss-mode.scss
10429            test/indent/sgml-mode-attribute.html
10430            test/indent/shell.rc
10431            test/indent/shell.sh
10432            test/redisplay-testsuite.el
10433            test/rmailmm.el
10434            test/automated/buffer-tests.el
10435            test/automated/cmds-tests.el
10436            test/automated/data-tests.el
10437            test/automated/finalizer-tests.el
10438            test/automated/fns-tests.el
10439            test/automated/inotify-test.el
10440            test/automated/keymap-tests.el
10441            test/automated/print-tests.el
10442            test/automated/libxml-tests.el
10443            test/automated/zlib-tests.el: Files Moved.
10445 2015-11-20  Michael Albinus  <michael.albinus@gmx.de>
10447         Rework file notifications, kqueue has problems with directory monitors
10449         * lisp/filenotify.el (file-notify-add-watch): Call the native
10450         add-watch function on the file, not on the dir.
10452         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
10453         about already deleted entries.
10455         * test/automated/auto-revert-tests.el
10456         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
10457         since this deletes the target file first.
10459         * test/automated/file-notify-tests.el (file-notify--test-event-test):
10460         Make stronger checks.
10461         (file-notify-test01-add-watch, file-notify-test02-events)
10462         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
10463         Rewrite in order to call file monitors but directory monitors.
10464         (file-notify-test06-many-events): Ler rename work in both directions.
10466 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
10468         Continie with pending events
10470         * src/kqueue.c (pending_events): Remove global variable.
10471         (kqueue_compare_dir_list): Create `write' event for not used
10472         pending events.
10473         (globals_of_kqueue): Remove initialization of pending_events.
10475 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
10477         Improve loops in file-notify-test06-many-events
10479         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
10480         Use `read-event' pauses for the `write-file' loops; otherwise
10481         events are lost in inotify and gfilenotify cases.
10483 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
10485         Handle more complex rename operation in kqueue
10487         * src/kqueue.c (pending_events): New variable.
10488         (kqueue_compare_dir_list): Handle more complex rename operation.
10489         (globals_of_kqueue): Initialize pending_events.
10491         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
10492         Adapt expected events in the `rename-file' case.
10493         (file-notify-test06-many-events-remote): Declare.
10495 2015-11-18  Wolfgang Jenkner  <wjenkner@inode.at>
10497         New test with a larger number of events.
10499         * test/automated/file-notify-tests.el (file-notify--test-with-events):
10500         Make timeout heuristically depend on the number of events.
10502         (file-notify-test06-many-events): Use it for new test.
10504 2015-11-18  Michael Albinus  <michael.albinus@gmx.de>
10506         Further fixes for kqueue.
10508         * lisp/filenotify.el (file-notify-callback): Raise also event if
10509         directory name matches.
10510         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
10512         * src/kqueue.c (kqueue_generate_event): Use watch_object as
10513         argument instead of ident.  Remove callback argument.  Adapt
10514         callees.  Check actions whether they are monitored flags.
10516         * test/automated/file-notify-tests.el (file-notify--test-library):
10517         New defun.
10518         (file-notify-test00-availability, file-notify-test02-events)
10519         (file-notify-test04-file-validity)
10520         (file-notify-test05-dir-validity): Use it.
10521         (file-notify-test02-events, file-notify-test04-file-validity): Add
10522         `read-event' calls between different file actions, in order to
10523         give the backends a chance to rais an event.  Needed especially
10524         for kqueue.  In case of deleting a directory, there are two
10525         `deleted' events.
10527 2015-11-17  Michael Albinus  <michael.albinus@gmx.de>
10529         Code cleanup of kqueue.c
10531         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
10532         (kqueue_compare_dir_list): Do not loop when calling
10533         directory_files_internal.  Remove checks for "." and "..", this is
10534         done in kqueue_directory_listing now.
10535         (Fkqueue_add_watch): Check for proper emacs_open flags.
10537 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
10539         Doc changes for kqueue
10541         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
10542         Fix some glitches in the example.
10544 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
10546         Finish implementation in kqueue.c
10548         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
10549         Simplify access to list.
10550         (kqueue_compare_dir_list): Simplify access to list.  Raise
10551         `delete' event if directory does not exist any longer.  Otherwise,
10552         wait until directory contents has changed.  Fix error in check.
10554 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
10556         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
10558 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
10560         More work on kqueue
10562         * lisp/filenotify.el (file-notify-callback): Handle also the
10563         `rename' event from kqueue.
10564         (file-notify-add-watch): Do not register an entry twice.
10566         * src/kqueue.c (kqueue_directory_listing): New function.
10567         (kqueue_generate_event): New argument FILE1.  Adapt callees.
10568         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
10570 2015-11-14  Michael Albinus  <michael.albinus@gmx.de>
10572         Implement directory events
10574         * lisp/filenotify.el (file-notify-handle-event)
10575         (file-notify-callback): Remove traces.
10577         * src/kqueue.c: Include <sys/time.h>.
10578         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
10579         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
10580         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
10581         Compute initial directory listing.  Close file descriptor in case
10582         of errors.
10583         (syms_of_kqueue): Declare Qcreate.
10585 2015-11-11  Wolfgang Jenkner  <wjenkner@inode.at>
10587         Build fixes for kqueue support.
10589         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
10590         flag.
10592         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
10593         kqueue on *BSD.
10595 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
10597         Continue kqueue implementation
10599         * lisp/filenotify.el (file-notify-handle-event)
10600         (file-notify-callback): Enable trace messages.
10602         * src/kqueue.c: Include also <sys/types.h>.
10603         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
10604         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
10605         (syms_of_kqueue): Add them.
10607 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
10609         Work on kqueue
10611         * lisp/filenotify.el (file-notify--library)
10612         (file-notify-descriptors, file-notify-callback)
10613         (file-notify-add-watch, file-notify-rm-watch)
10614         (file-notify-valid-p): Add kqueue support.
10616         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
10618 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
10620         Add kqueue support
10622         * configure.ac (--with-file-notification): Add kqueue.
10623         (top): Remove special test for "${HAVE_NS}" and
10624         ${with_file_notification}, this is handled inside gfilenotify
10625         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
10626         instead of library specific variables.
10628         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
10630         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
10632         * src/kqueue.c: New file.
10634         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
10636 2015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
10638         verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
10640         * verilog-mode.el (verilog-save-font-no-change-functions):
10641         Commentary and fix pre-Emacs 21 behavior.
10643 2015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
10645         Use obarray functions from obarray.
10647         * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
10648           abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
10649           clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
10650           delegate to obarray.el functions.
10651         * lisp/loadup.el: load obarray before abbrev
10652         * test/automated/abbrev-tests.el: new tests
10654 2015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
10656         epa.el: Add option to replace original text
10658         * lisp/epa.el (epa-replace-original-text): New user option.
10659         (Bug#21947)
10661 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
10663         Add interactive seek command.
10665         * lisp/mpc.el (mpc-cmd-seekcur): New function.
10666         (mpc-seek-current): New command.
10667         (mpc-mode-menu): Add entry for mpc-seek-current
10668         (mpc-mode-map): Bind mpc-seek-current to "g"
10670 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
10672         Fix issue where a new tempfile was created every refresh
10674         * lisp/mpc.el (mpc-format): Leave dir as relative path
10676 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
10678         * lisp/progmodes/cc-defs.el: Use with-silent-modifications
10680         (c-save-buffer-state): Use with-silent-modifications when available.
10681         (c--macroexpand-all): Check macroexpand-all directly rather than
10682         c--mapcan-status.
10684 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
10686         * lisp/loadup.el: Set max-lisp-eval-depth here
10688         * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
10689         (BYTE_COMPILE_FLAGS): Adjust accordingly.
10691 2015-11-17  João Távora  <joaotavora@gmail.com>
10693         Minor fix to comment indentation and typo in last commit
10695         * linum.el (linum-update-window): Fix comment indentation and a
10696         typo.
10698 2015-11-17  João Távora  <joaotavora@gmail.com>
10700         linum-mode plays more nicely with other margin-setting extensions
10702         linum.el will only modify the left margin if it needs to, and will
10703         only reset the it back to 0 if it guesses that no-one has touched that
10704         margin in the meantime.
10706         As such, this is a more of a workaround than an actual fix, but fixes
10707         the problems described in bug#20674 regarding the interaction with
10708         modes such as darkroom-mode and olivetti-mode.
10710         A similar fix was commited to nlinum.el in ELPA.git's
10711         e7f5f549fbfb740b911fb7f33b42381ecece56d8
10713         * linum.el (linum-delete-overlays): Restore margins more
10714         criteriously.
10715         (linum-update-window): Set margins more criteriously.
10717 2015-11-16  Daiki Ueno  <ueno@gnu.org>
10719         * lisp/image-mode.el: Support encrypted file
10721         (image-toggle-display-image): Read content from the buffer instead
10722         of the file, if the buffer holds a decrypted data.  (Bug#21870)
10724 2015-11-15  Juanma Barranquero  <lekktu@gmail.com>
10726         * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
10728 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
10730         * lisp/emacs-lisp/package.el: Fix a decoding issue
10732         (package--with-response-buffer): Use `url-insert-buffer-contents'.
10733         The previous code had some issues with decoding. Refactoring that
10734         function allows us to use the decoding from url-handlers while still
10735         treating both sync and async requests the same.
10737         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
10738         `url-insert-buffer-contents'.
10739         (url-insert-buffer-contents): New function
10741 2015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
10743         * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
10745         (verilog-save-buffer-state): Use with-silent-modifications when available.
10746         (verilog-save-font-no-change-functions): Don't bind
10747         before/after-change-functions if it's not needed.
10749 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
10751         * CONTRIBUTE: Remove information about feature freeze.
10753         Merge branch 'release-process-lowercase'
10755 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
10757         Document the release process
10759         * admin/notes/versioning: Add information about RC releases.
10760         * admin/release-process: Document the release process.
10761         * admin/authors.el (authors-ignored-files):
10762         * admin/README: Change FOR-RELEASE to release-process.
10763         * CONTRIBUTE:
10764         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
10766 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
10768         * admin/release-process: Rename from admin/FOR-RELEASE.
10770 2015-11-14  David Engster  <deng@randomsample.de>
10772         gitmerge: Fix git log command
10774         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
10775         only want commits from the branch that is to be merged.
10776         (gitmerge-setup-log-buffer): Use the same symmetric range as in
10777         `gitmerge-missing'.
10779 2015-11-14  David Engster  <deng@randomsample.de>
10781         gitmerge: Try to detect cherry-picks
10783         * admin/gitmerge.el (gitmerge-default-branch): Change to
10784         origin/emacs-25.
10785         (gitmerge-missing): Use symmetric difference ('...') between
10786         branch and master so that cherry-picks can be detected.
10788 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
10790         Increment Emacs version on master branch
10792         * lisp/cus-edit.el (customize-changed-options-previous-release):
10793         Increase previous version to 24.5.
10795         * configure.ac:
10796         * msdos/sed2v2.inp: Bump version to 25.1.50.
10798 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
10800         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
10801         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
10802         * README: Mention CONTRIBUTE.
10804 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
10806         Update verilog-mode.el to 2015-11-09-b121d60-vpo
10808         * verilog-mode.el (verilog-auto, verilog-delete-auto)
10809         (verilog-modi-cache-results, verilog-save-buffer-state)
10810         (verilog-save-font-no-change-functions): When internally suppressing
10811         change functions, use `inhibit-modification-hooks' and call
10812         `after-change-funtions' to more nicely work with user hooks.
10813         Reported by Stefan Monnier.
10814         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
10815         Create `verilog-delete-auto-buffer' to avoid double-calling
10816         fontification hooks.
10817         (verilog-restore-buffer-modified-p, verilog-auto)
10818         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
10819         set-buffer-modified-p.  Reported by Stefan Monnier.
10820         (verilog-diff-auto, verilog-diff-buffers-p)
10821         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
10822         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
10823         AUTOINST with unpacked dimensional parameters, bug981.  Reported by
10824         by Amol Nagapurkar.
10825         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
10826         properties inside internal structures.  No functional change
10827         intended.
10829 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
10831         Use generic dispatch for xref backends
10833         * lisp/progmodes/xref.el (xref-backend-functions):
10834         New variable.
10835         (xref-find-function): Remove.
10836         (xref-find-backend)
10837         (xref--etags-backend): New functions.
10838         (xref-identifier-at-point-function)
10839         (xref-identifier-completion-table-function): Remove.
10840         (xref-backend-definitions, xref-backend-references)
10841         (xref-backend-apropos, xref-backend-identifier-at-point)
10842         (xref-backend-identifier-completion-table):
10843         New generic functions.
10845         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
10846         Add `elisp--xref-backend' to the beginning of
10847         `xref-backend-functions', locally.  Delete references to
10848         removed functions and vars.
10849         (elisp-xref-find): Remove.
10850         (elisp--xref-backend): New function.
10851         (elisp--xref-find-references, elisp--xref-find-apropos)
10852         (elisp--xref-identifier-completion-table):
10853         Turn into appropriately named generic methods.
10855         * lisp/progmodes/etags.el (etags-xref-find): Remove.
10856         (xref-backend-identifier-completion-table)
10857         (xref-backend-references, xref-backend-definitions)
10858         (xref-backend-apropos): New generic methods.
10860 2015-11-13  Juri Linkov  <juri@linkov.net>
10862         Support rectangular regions for more commands
10864         * lisp/simple.el (region-extract-function): Handle the arg
10865         value ‘bounds’.
10866         (region-insert-function): New function.
10867         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
10868         If non-nil, operate on multiple chunks.
10869         (region-noncontiguous-p): New function.
10871         * lisp/rect.el: Add function rectangle--insert-region
10872         around region-insert-function.
10873         (extract-rectangle-bounds): New function.
10874         (rectangle--extract-region): Handle the arg value ‘bounds’.
10875         (rectangle--insert-region): New function.
10877         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
10878         around region-insert-function.
10879         (cua--extract-rectangle-bounds): New function.
10880         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
10882         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
10883         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
10884         (query-replace-regexp-eval, map-query-replace-regexp)
10885         (replace-string, replace-regexp): Use ‘use-region-p’.
10886         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
10887         (perform-replace): Add arg ‘region-noncontiguous-p’.
10888         If non-nil, operate on multiple chunks.
10890         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
10891         If non-nil, operate on multiple chunks.  (Bug#19829)
10893 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
10895         Handle multiple matches on the same line; add highlighting
10897         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
10898         column value in characters.
10899         (xref--collect-matches): Rename from `xref--collect-match'.
10900         Search for all matches in the hit line.  Add `highlight' face to
10901         the matched region in the summary.  Update both callers.
10903 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
10905         Replace xref-match-bounds with xref-match-length
10907         Relying on xref-location-marker to point to the beginning of the match
10909         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
10910         (xref-match-length): Add.
10911         (xref-make-match): Change the arguments.
10912         (xref--match-buffer-bounds): Remove.
10913         (xref-match-item): Store length, instead of end-column.
10914         (xref-pulse-momentarily)
10915         (xref--collect-match)
10916         (xref--query-replace-1): Update accordingly.
10917         (xref-query-replace): Ditto.  And check that the search results
10918         are up-to-date.
10920 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
10922         Merge from gnulib
10924         This incorporates:
10925         2015-11-13 xalloc-oversized: improve performance with GCC 5
10926         * lib/xalloc-oversized.h: Copy from gnulib.
10928 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
10930         Spruce up ftfont.c memory allocation
10932         * src/ftfont.c (setup_otf_gstring):
10933         Avoid O(N**2) behavior when reallocating.
10934         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
10935         reallocating buffers; this simplifies the code.  Do not trust
10936         mflt_run to leave the output areas unchanged on failure, as
10937         this isn’t part of its interface spec.
10939 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
10941         Port recent XCB changes to 64-bit ‘long int’
10943         For historical reasons, libX11 represents 32-bit values like Atoms as
10944         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
10945         do that, so adapt the recent XCB code to behave properly on 64-bit
10946         platforms.  Also, fix what appears to be a bug in the interpretation
10947         of xcb_get_property_value_length, at least on my Fedora platform
10948         which is running libxcb-1.11-5.fc21.
10949         * src/xfns.c (x_real_pos_and_offsets):
10950         * src/xterm.c (get_current_wm_state):
10951         xcb_get_property_value_length returns a byte count, not a word count.
10952         For 32-bit quantities, xcb_get_property_value returns a vector
10953         of 32-bit words, not of (possibly 64-bit) long int.
10955 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
10957         * src/undo.c (run_undoable_change): Now static.
10959 2016-01-30  Michael Albinus  <michael.albinus@gmx.de>
10961         Adapt Tramp version, do not merge with master
10963         * doc/misc/trampver.texi (trampver):
10964         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
10966 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
10968         Remove support for ':timeout' from w32 tray notifications
10970         * src/w32fns.c (Fw32_notification_notify): Delete the code that
10971         supports ':timeout'.
10972         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
10973         with dbusbind.c when D-Bus is compiled in.
10975         * doc/lispref/os.texi (Desktop Notifications): Don't mention
10976         ':timeout'.
10978 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
10980         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
10981         (simple-test--transpositions): New macro.
10982         (simple-transpose-subr): New test.
10984 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
10986         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
10988 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
10990         * src/undo.c: Small fixes for previous change
10991         (run_undoable_change): Mark void argument list.
10992         (record_property_change): Remove unused variable `boundary'.
10994 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
10996         Add a few more variables to redisplay--variables
10998         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
10999         and bidi-display-reordering to the list.
11001 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
11003         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
11005 2015-11-13  Eli Barzilay  <eli@barzilay.org>
11007         Fix point positioning after transposing with negative arg
11009         * lisp/simple.el (transpose-subr): When invoked with a negative
11010         argument, move point to after the transposed text, like we do
11011         when invoked with a positive argument.  (Bug#21885)
11013 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
11015         Fix last change in shr.el
11017         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
11018         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
11020 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
11022         Fix last change
11024         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
11025         Don't DEFSYM tray notification symbols if D-Bus is being used.
11027 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
11029         Another fix for MinGW64 and Cygwin builds due to notifications
11031         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
11032         being compiled into Emacs.
11033         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
11034         Sw32_notification_notify and Sw32_notification_close if the code
11035         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
11037 2016-01-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11038 2015-11-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11040         Remove intern calls and XXX comments from Fx_export_frames
11042         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
11043         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
11044         for consistency with image types.  Remove XXX comments.
11045         (syms_of_xfns) <Qpdf>: DEFSYM it.
11047 2016-01-30  Eric Hanchrow  <eric.hanchrow@gmail.com>
11048 2015-11-12  Eric Hanchrow  <eric.hanchrow@gmail.com>
11050         shr: don't invoke unbound function (Bug#21895)
11052         * lisp/net/shr.el (have-fringes-p): New function.
11053         (shr-insert-document, shr-fill-text): Use it.
11055 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
11057         * test/automated/keymap-tests.el: Fix test to make it repeatable
11059         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
11060         entry to its initial value to make the test repeatable in interactive
11061         sessions (assuming it doesn't fail and crashes Emacs, of course).
11063 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11065         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
11067 2016-01-30  Phillip Lord  <phillip.lord@russet.org.uk>
11069         : Tests for undo-auto functionality.
11070 2015-11-12  Artur Malabarba  <bruce.connor.am@gmail.com>
11072         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
11073         Small fix.
11075 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
11077         The heuristic that Emacs uses to add an `undo-boundary' has been
11078         reworked, as it interacts poorly with functions on `post-command-hook'
11079         or `after-change-functions'.
11081         * lisp/simple.el: New section added.
11082         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
11083         (self_insert_command): Calls simple.el to amalgamate.
11084         (delete_char): Calls simple.el to amalgamate.
11085         * src/keyboard.c (last_undo_boundary): Removed.
11086         * src/undo.c (run_undoable_change): New function.
11088 2015-11-12  Juri Linkov  <juri@linkov.net>
11090         Bind [?\S-\ ] to previous line command in Dired-like modes.
11092         * lisp/arc-mode.el (archive-mode-map):
11093         * lisp/dired.el (dired-mode-map):
11094         * lisp/proced.el (proced-mode-map):
11095         * lisp/vc/vc-dir.el (vc-dir-mode-map):
11096         Bind [?\S-\ ] to previous line command.
11097         (Bug#20790)
11099 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
11101         Fix the MinGW64 and Cygwin-w32 builds
11103         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
11104         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
11105         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
11106         which cause trouble with MinGW42 headers.  Ifdef away tray
11107         notifications code for Cygwin.  Reported by Andy Moreton
11108         <andrewjmoreton@gmail.com>.
11110 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
11112         Enable sorting of JSON object keys when encoding
11114         * lisp/json.el (json-encoding-object-sort-predicate): New variable
11115         for specifying a sorting predicate for JSON objects during encoding.
11116         (json--plist-to-alist): New utility function.
11117         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
11118         are to be sorted.
11119         (json-encode-alist): Sort output by
11120         `json-encoding-object-sort-predicate, when set.
11121         (json-encode-plist): Re-use `json-encode-alist' when object keys are
11122         to be sorted.
11123         (json-pretty-print-buffer-ordered): New command to pretty print the
11124         buffer with object keys sorted alphabetically.
11125         (json-pretty-print-ordered): New command to pretty print the region
11126         with object keys sorted alphabetically.
11128         * test/automated/json-tests.el (test-json-plist-to-alist)
11129         (test-json-encode-plist, test-json-encode-hash-table)
11130         (test-json-encode-alist-with-sort-predicate)
11131         (test-json-encode-plist-with-sort-predicate): New tests.
11133         * etc/NEWS: Add an entry for the new commands.
11135 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
11137         * test/automated/keymap-tests.el: New test file.
11139 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
11141         Speed up x_real_pos_and_offsets using XCB
11143         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
11144         all X calls, and pipeline requests when possible, collecting results
11145         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
11147 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
11149         Enable use of XCB for checking window manager state
11151         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
11152         of XGetWindowProperty plus error-catching, since we can explicitly
11153         check for errors in the XCB version.  This eliminates 3 XSync calls on
11154         top of the round-trip actually fetching the information.
11156 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
11158         Detect XCB and save a connection handle
11160         * configure.ac: If using X11, check for XCB libraries and header.
11161         * src/Makefile.in (XCB_LIBS): Define.
11162         (LIBX_EXTRA): Include it.
11164         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
11165         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
11166         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
11168 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
11170         Reduce some data dependencies between X calls
11172         Gains nothing in the traditional-Xlib code, but more closely aligns
11173         with how the XCB version will work.
11175         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
11176         send coordinates (0,0) to the X server and add in the real coordinates
11177         after getting the response.  Move XGetGeometry for outer window inside
11178         error-trapping block.  Use DPY variable more, since it's available.
11180 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
11182         Use color cache for creating bitmap
11184         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
11185         Set attributes to use the caching color allocator.  Initialize and
11186         free the cache.
11188 2015-11-12  Eli Barzilay  <eli@barzilay.org>
11190         Add "^" to the interactive specs of `dired-next/previous-line'
11192         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
11193         to bind these commands to the arrow keys, and that means that they work
11194         better with a "^" in the `interactive' declaration so selection works
11195         as expected.
11197 2016-01-30  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11199         Sync with soap-client repository, version 3.0.2
11201         * lisp/net/soap-client.el: Bump version to 3.0.2.
11203         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
11205         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
11206         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
11208         * lisp/net/soap-client.el: Support Emacs versions that do not have
11209         define-error.
11211         * lisp/net/soap-inspect.el: Remove version header.
11213         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
11214 2015-11-11  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
11216         Sync with soap-client repository, version 3.0.2
11218         * soap-client.el: Bump version to 3.0.2.
11220         * soap-client.el (soap-warning): Use format, not format-message.
11222         * soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
11223         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
11225         * soap-client.el: Support Emacs versions that do not have
11226         define-error.
11228         * soap-inspect.el: Remove version header.
11230         * soap-client.el, soap-inspect.el, jira2.el: Fix first line header
11231         format.
11233 2015-11-11  Alan Mackenzie  <acm@muc.de>
11235         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
11237         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
11238         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
11239         (c-guess-basic-syntax):
11240         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
11241         (c-get-fallback-scan-pos): "New" function (existed several years ago).
11242         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
11243         c-get-fallback-scan-pos.
11244         (c-parse-state-1): Handle 'BOD strategy.
11246         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
11247         (c-font-lock-fontify-region): Remove bindings of
11248         open-paren-in-column-0-is-defun-start to nil.
11250         * doc/misc/cc-mode.texi (Performance Issues)
11251         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
11253 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
11255         * lisp/obarray.el: Fix shadowed variables.
11256         (obarray-map, obarray-remove, obarray-put, obarray-get):
11257         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
11259 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
11261         Avoid error in submitting a form with EWW
11263         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
11264         CHUNK to be nil.  (Bug#21881)
11266 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
11268         Rename seq-p and map-p to seqp and mapp
11270         * lisp/emacs-lisp/seq.el (seqp): New name.
11271         * lisp/emacs-lisp/map.el (mapp): New name.
11272         * doc/lispref/sequences.texi: Update the documentation for seqp.
11273         * test/automated/map-tests.el: Update the tests for mapp.
11275 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
11277         Rename obarray-p to obarrayp
11279         * lisp/obarray.el (obarrayp): New name.
11280         * test/automated/obarray-tests.el: Update the tests.
11282 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
11284         Rename obarray-foreach to obarray-map
11286         * lisp/obarray.el (obarray-map): New name.
11287         * test/automated/obarray-tests.el: Update the corresponding tests.
11289 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
11291         New file with obarray functions.
11293         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
11294         * test/automated/obarray-tests.el: New file.
11296 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
11298         Implement tray notifications for MS-Windows
11300         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
11301         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
11302         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
11303         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
11304         (EMACS_NOTIFICATION_MSG): New macros.
11305         (NI_Severity): New enumeration.
11306         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
11307         (delete_tray_notification, Fw32_notification_notify)
11308         (Fw32_notification_close): New functions.
11309         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
11310         keywords used by w32-notification-notify.
11312         * doc/lispref/os.texi (Desktop Notifications): Describe the native
11313         w32 tray notifications.
11315 2016-01-30  Alan Mackenzie  <acm@muc.de>
11317         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
11319         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
11320         Windows" and new @defun selected-window-group.
11321         (Window Start and End): Describe new &optional parameter GROUP and
11322         ...-group-function for window-start, window-end, set-window-start, and
11323         pos-visible-in-window-p.
11324         (Textual Scrolling) Describe the same for recenter.
11325         doc/lispref/positions.texi (Screen Lines): Describe the same for
11326         move-to-window-line.
11328         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
11329         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
11330         new optional parameter "group".  At the beginning of each, check whether the
11331         corresponding ...-group-function is set to a function, and if so execute this
11332         function in place of the normal processing.
11333         (syms_of_window): Define symbols for the six new variables below.
11334         (window-start-group-function, window-end-group-function)
11335         (set-window-start-group-function, recenter-group-function)
11336         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
11337         New permanent local buffer local variables.
11338         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
11339         Fpos_visible_in_window_p.
11341         lisp/window.el (selected-window-group-function): New permanent local buffer
11342         local variable.
11343         (selected-window-group): New function.
11345         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
11346         enable, kill them at mode disable.  Add/remove follow-after-change to/from
11347         after-change-functions.
11348         (follow-start-end-invalid): New variable.
11349         (follow-redisplay): Manipulate follow-start-end-invalid.
11350         (follow-after-change, follow-window-start, follow-window-end)
11351         (follow-set-window-start, follow-pos-visible-in-window-p)
11352         (follow-move-to-window-line, follow-sit-for): New functions.
11354         lisp/isearch.el (isearch-call-message): New macro.
11355         (isearch-update, with-isearch-suspended, isearch-del-char)
11356         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
11357         (with-isearch-suspended): Rearrange code such that isearch-call-message is
11358         invoked before point is moved.
11359         (isearch-message): Add comment about where point must be at function call.
11360         (isearch-search): Remove call to isearch-message.
11361         (isearch-lazy-highlight-window-group): New variable.
11362         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
11363         the battery of tests to ...
11364         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
11365         Note: (sit-for 0) is still called.
11366         (isearch-lazy-highlight-update): Check membership of
11367         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
11368         property.
11369         (isearch-update, isearch-done, isearch-string-out-of-window)
11370         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
11371         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
11372         (isearch-lazy-highlight-update): Call the six amended primitives (see
11373         src/window.c above) with the new `group' argument set to t, to cooperate
11374         with Follow Mode.
11376 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
11378         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
11380         * lisp/net/tramp.el (tramp-handle-file-equal-p)
11381         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
11382         Harvey Chapman <hchapman@3gfp.com>.
11384         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
11385         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
11386         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
11387         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
11389 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
11391         * CONTRIBUTE: Encourage adding tests.
11393         Based on this post from John Wiegley:
11395           From: "John Wiegley" <johnw@newartisans.com>
11396           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
11397           To: Juanma Barranquero <lekktu@gmail.com>
11398           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
11399               emacs-devel <emacs-devel@gnu.org>
11400           Date: Wed, 28 Oct 2015 18:45:29 -0700
11401           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
11403           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
11405 2015-11-10  David Reitter  <david.reitter@gmail.com>
11407         Avoid creating notification objects when possible
11409         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
11410         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
11411         functions that do not require a notification object.  When needed,
11412         define NSWindowDidEnterFullScreenNotification to allow for compilation
11413         on OS X 10.6.8.
11415 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
11417         Move INTEGER_TO_CONS body out of .h file
11419         * src/data.c (INTBIG_TO_LISP): New macro, with most
11420         of the contents of the old INTEGER_TO_CONS.
11421         (intbig_to_lisp, uintbig_to_lisp): New functions.
11422         * src/lisp.h (INTEGER_TO_CONS):
11423         Simplify by using EXPR_SIGNED and the new functions.
11424         This shrinks code size a bit, and makes it easier to
11425         put a breakpoint on handling of large integers.
11427 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
11429         Merge from gnulib
11431         This incorporates:
11432         2015-11-10 intprops: new public macro EXPR_SIGNED
11433         2015-11-10 intprops: fix typo in clang port
11434         * lib/intprops.h: Copy from gnulib.
11436 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
11438         Spelling fixes
11440         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
11441         Fix misspelling in output.
11443 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
11445         * doc/lispref/variables.texi (Directory Local Variables):
11446         Document dir-locals wildcards.
11448         * lisp/files.el (dir-locals-file): Point to Info node.
11450         * doc/emacs/custom.texi (Directory Variables):
11451         Document dir-locals wildcards.
11453         * etc/NEWS: Document new functionality.
11455 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
11457         * lisp/files.el: Don't allow customization of dir-locals sorting.
11458         In retrospect, this is not a good idea for the same reason that
11459         `dir-locals-file' is a defconst, because it is important that this
11460         behaviour be "uniform across different environments and users".
11461         Sure, the user can still change the sorting with a hack, but we
11462         shouldn't encourage them to change it.
11463         (dir-locals--all-files): Return list in the order returned by
11464         `file-expand-wildcards'.
11465         (file-expand-wildcards): Document the sorting predicate used.
11466         (dir-locals-sort-predicate): Delete variable.
11468 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
11470         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
11472         * lisp/isearch.el (search-default-regexp-mode): Change default value.
11474 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
11476         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
11477         `locate-dominating-file' will now keep looking if the files it finds in
11478         a given directory are unreadable (or not files).
11480 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
11482         * lisp/files.el (dir-locals-file): Allow wildcards.
11483         (dir-locals-find-file, dir-locals-collect-variables)
11484         (dir-locals-read-from-file): Update accordingly.
11485         (hack-dir-local-variables): Rename a local variable.
11487         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
11489         * lisp/help-fns.el (describe-variable): Update accordingly.
11491         * .gitignore: Add .dir-locals?.el.
11493 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
11495         * lisp/emacs-lisp/map.el (map-merge-with): New function.
11497         * test/automated/map-tests.el (test-map-merge-with): New test.
11499 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
11501         Fix some recently-perturbed bookmark autoloads
11503         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
11504         (bookmark-set): Restore autoload.
11505         (bookmark-set-no-overwrite): Add autoload.
11507         Thanks to Juanma Barranquero for noticing the autoload problems
11508         introduced by my recent commit adding/changing the above functions
11509         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
11511 2016-01-30  Noah Friedman  <friedman@splode.com>
11513         (ydump-buffer): Handle case where gap is at the start of buffer.
11514         I don't recall if older versions of gdb were less strict but you
11515         cannot dump a 0-length range in gdb 7.9.1.
11517 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
11518 2015-11-09  Noah Friedman  <friedman@splode.com>
11520         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
11521         the start of buffer.  I don't recall if older versions of gdb were
11522         less strict but you cannot dump a 0-length range in gdb 7.9.1.
11524 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
11526         * lisp/progmodes/project.el: Update Commentary.
11528         Merge branch 'project-next'
11530 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
11532         Fold `project-ask-user' into `project-current'
11534         * lisp/progmodes/project.el (project-find-functions): Remove
11535         `project-ask-user'.
11536 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
11538         Fold `project-ask-user' into `project-current'
11540         * lisp/progmodes/project.el (project-find-functions):
11541         Remove `project-ask-user'.
11542         (project-ask-user): Remove function and the corresponding
11543         `project-roots' implementation.
11544         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
11545         user in case there's no project in the current directory.  Update
11546         all callers.
11548 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
11550         When VC detects a conflict, specify which file
11552         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
11553         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
11554         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
11555         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
11556         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
11557           to display a standard message that specifies the conflicted file.
11559         Before this change, the message VC used for indicating a conflicted
11560         file was just "There are unresolved conflicts in this file" without
11561         naming the file (and this language was duplicated in several places).
11562         After this change, it's "There are unresolved conflicts in file FOO"
11563         (and this language is now centralized in one function in vc.el).
11565         Justification: It's important for the message to name the conflicted
11566         file because the moment when VC realizes a file is conflicted does not
11567         always come interactively.  For example, some people automatically
11568         find a set of Org Mode files on startup, and may keep those .org files
11569         under version control.  If any of the files are conflicted, the user
11570         just sees some messages fly by, and might later check the "*Messages*"
11571         buffer to find out what files were conflicted.  I'm not saying this
11572         happened to me or anything; it's a purely hypothetical example.
11574 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
11576         Fix assertion violation in define-key
11578         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
11579         objects.  Reported by Drew Adams <drew.adams@oracle.com>
11580         and Juanma Barranquero <lekktu@gmail.com>.
11582 2015-11-09  Dima Kogan  <dima@secretsauce.net>
11584         Fix a memory leak in GC of font cache
11586         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
11587         entities if some of the fonts it references are marked.  This
11588         plugs a memory leak.  (Bug#21556)
11590 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
11592         Use INT_ADD_WRAPV etc. to check integer overflow
11594         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
11595         * src/buffer.c (record_overlay_string, overlay_strings):
11596         * src/casefiddle.c (casify_object):
11597         * src/ccl.c (Fccl_execute_on_string):
11598         * src/character.c (char_width, c_string_width, lisp_string_width)
11599         (count_size_as_multibyte, string_escape_byte8):
11600         * src/coding.c (coding_alloc_by_realloc, produce_chars):
11601         * src/data.c (arith_driver):
11602         * src/dispnew.c (realloc_glyph_pool, init_display):
11603         * src/editfns.c (styled_format):
11604         * src/fns.c (Ffillarray):
11605         * src/ftfont.c (ftfont_shape_by_flt):
11606         * src/gnutls.c (gnutls_hex_string):
11607         * src/gtkutil.c (get_utf8_string):
11608         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
11609         * src/keymap.c (Fkey_description):
11610         * src/lisp.h (SAFE_ALLOCA_LISP):
11611         * src/term.c (encode_terminal_code):
11612         * src/tparam.c (tparam1):
11613         * src/xselect.c (x_property_data_to_lisp):
11614         * src/xsmfns.c (smc_save_yourself_CB):
11615         * src/xterm.c (x_term_init):
11616         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
11617         more-complicated code involving division and/or
11618         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
11619         subtraction and/or INT_ADD_OVERFLOW.
11620         * src/casefiddle.c (casify_object): Simplify multibyte size check.
11621         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
11622         * src/data.c (arith_driver): Also check for division overflow,
11623         as that’s now possible given that the accumulator can now contain
11624         any Emacs integer.
11625         * src/lisp.h (lisp_word_count): Remove; no longer used.
11627 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
11628 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
11630         Make sure that the ignore file exists
11632         * lisp/vc/vc.el (vc-default-ignore-completion-table):
11633         Make sure that the ignore file exists.
11635 2016-01-30  Michael Sperber  <mike@xemacs.org>
11637         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
11638 2015-11-08  Michael Sperber  <mike@xemacs.org>
11640         * gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
11641         `gnus-summary-delete-article` in a way that also works on XEmacs.
11643 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
11645         Add support for retrieving paths to JSON elements
11647         Add support for retrieving the path to a JSON element. This can for
11648         instance be useful to retrieve paths in deeply nested JSON
11649         structures.
11651         * lisp/json.el (json-pre-element-read-function)
11652         (json-post-element-read-function): New variables to hold pre- and post
11653         read callback functions for `json-read-array' and `json-read-object'.
11654         (json--path): New variable used internally by `json-path-to-position'.
11655         (json--record-path, json--check-position): New functions used
11656         internally by `json-path-to-position'.
11657         (json-path-to-position): New function for retrieving the path to a
11658         JSON element at a given position.
11659         (json-read-object, json-read-array): Call
11660         `json-pre-element-read-function' and `json-post-element-read-function'
11661         when set.
11663         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
11664         (test-json-path-to-position-with-arrays)
11665         (test-json-path-to-position-no-match): New tests for
11666         `json-path-to-position'.
11668 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
11670         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
11672         This really should been part of my previous commit
11673         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
11675 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
11677         Offer non-overwrite bookmark setter (Bug#15746)
11679         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
11680         what `bookmark-set' used to do, but with more choices for overwrite
11681         vs push, and with minor changes to the interactive prompt format.
11682         (bookmark-set): Rewrite as wrapper around above.
11683         If overwriting, inform the user of that in the prompt.
11684         (bookmark-set-no-overwrite): New function, also done as wrapper.
11685         Bind to "M" in `ctl-x-r-map' autoloads.
11686         (bookmark-map): Similarly bind "M" here.
11688 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
11690         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
11692 2015-11-08  Alan Modra  <amodra@gmail.com>
11694         ELF unexec: Don't insert a new section
11696         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
11697         don't need to mess with symbol st_shndx, or section sh_link and
11698         sh_info.
11700         This does lead to eu-elflint complaints about symbols defined in .bss
11701         with a needed version, because normally it is undefined symbols that
11702         have needed versions;  Defined symbols have version definitions.
11703         The exception is symbols defined by the linker in .dynbss for
11704         variables copied from a shared library in order to avoid text
11705         relocations, with copy relocs to copy their initial values from the
11706         shared library.  These symbols are both defined and have needed
11707         versions, and eu-elflink only expects to see them in SHT_NOBITS
11708         sections.  Of course there is no real problem with having such symbols
11709         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
11711         * src/unexelf.c: Delete outdated comments.
11712         (PATCH_INDEX): Delete.
11713         (find_section): Delete.
11714         (unexec): Don't add a new section.  Instead reuse the last bss
11715         section, extending it to cover dumped data.  Make bss sections
11716         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
11717         st_shndx.  Rename bss sections.
11719 2015-11-08  Alan Modra  <amodra@gmail.com>
11721         ELF unexec: Drive from PT_LOAD header rather than sections
11723         This rewrites bss handling in the ELF unexec code.  Finding bss
11724         sections by name results in complicated code that
11725         - does not account for all names of possible bss sections,
11726         - assumes specific ordering of bss sections,
11727         - can wrongly choose a SHT_NOBITS section not in the bss segment,
11728         - incorrectly calculates bss size (no accounting for alignment gaps),
11729         - assumes .data and .bss are in the same segment.
11731         All of these problems and more are solved by finding the bss segment
11732         in PT_LOAD headers, ie. the address range included in p_memsz but not
11733         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
11734         in that address range.
11736         * src/unexelf.c: Delete old ppc comment.
11737         (OLD_PROGRAM_H): Define.
11738         (round_up): Delete.
11739         (unexec): Don't search for bss style sections by name.  Instead,
11740         use the last PT_LOAD header address range covered by p_memsz
11741         but not p_filesz and match any SHT_NOBITS section in that
11742         address range.  Simplify initialisation of section header vars.
11743         Don't assume that section headers are above bss segment.  Move
11744         copying of bss area out of section loop.  Align .data2 section
11745         to 1, since it now covers the entire bss area.  For SHT_NOBITS
11746         sections in the bss segment, leave sh_addr and sh_addralign
11747         unchanged, but correct sh_offset.  Clear memory corresponding
11748         to SHT_NOBITS .plt section.  Delete comment and hacks for
11749         sections partly overlapping bss range now that the full range
11750         is properly calculated.  Delete now dead .sbss code.
11751         (Bug#20614)
11753 2015-11-08  Alan Modra  <amodra@gmail.com>
11755         ELF unexec: R_*_NONE relocs
11757         These should be ignored on all targets.
11759         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
11760         not just Alpha.  Comment on reloc size assumption.
11762 2015-11-08  Alan Modra  <amodra@gmail.com>
11764         ELF unexec: _OBJC_ symbols in bss sections
11766         This code assumed that there was only one bss section.  Rather than
11767         checking for a particular index, check the section type.  Also, handle
11768         the possibility that the section was SHT_NOBITS originally and is
11769         unchanged, in which case no clearing is needed (and sh_offset isn't
11770         necessarily valid, which can lead to a wild memset).
11772         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
11773         bss sections.
11775 2015-11-08  Alan Modra  <amodra@gmail.com>
11777         ELF unexec: Symbol table patching
11779         No st_shndx value larger than SHN_LORESERVE should be changed.
11780         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
11781         SHN_LORESERVE.  Error on SHN_XINDEX.
11783 2015-11-08  Alan Modra  <amodra@gmail.com>
11785         ELF unexec: Merge Alpha and MIPS COFF debug handling
11787         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
11788         Don't find .mdebug section index, find the section in the loop.
11789         Allow for unlikely possibility that .mdebug is located at sh_offset
11790         before bss segment, by calculating move from difference in
11791         sh_offset rather than just assuming new_data2_size.  Simplify
11792         cbLineOffset handling.
11794 2015-11-08  Alan Modra  <amodra@gmail.com>
11796         ELF unexec: Tidy code
11798         Separate out some of the more mechanical changes so following patches
11799         are smaller.
11801         * src/unexelf.c (unexec): Rearrange initialisation of program
11802         header vars.  Use pointer vars in loops rather than indexing
11803         section header array via macros.  Simplify _OBJC_ sym code
11804         and reloc handling code.
11806 2015-11-08  Alan Modra  <amodra@gmail.com>
11808         ELF unexec: Correct section header index
11810         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
11811         it should have been using "NEW_SECTION_H (nn)" to find the name of the
11812         section currently being processed.  Of course, before the bss
11813         sections, n and nn have the same value, so this doesn't matter except
11814         in the case of .sbss.  For .sbss this probably meant .bss (most likely
11815         the next section) was copied from memory.  A later patch removes the
11816         bogus .sbss handling anyway.
11818         * src/unexelf.c (unexec): Use correct index to look up names.
11820 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
11822         Fix Bug#21841
11824         * lisp/filenotify.el (file-notify--rm-descriptor):
11825         Use `descriptor' instead of computing its value.
11826         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
11827         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
11828         (Bug#21841)
11830 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
11832         Remove dirs in vc project roots from the the vc project library roots
11834         * lisp/progmodes/project.el (project-library-roots):
11835         Remove directories inside the project roots from the result.
11836         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
11838 2015-11-07  Dmitry Gutov  <dgutov@yandex.ru>
11840         Move and rename xref-find-regexp to the project package
11842         * lisp/progmodes/project.el (project-find-regexp)
11843         (project--read-regexp)
11844         (project--find-regexp-in): New functions.
11846         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
11847         xref--show-xrefs.  Use in existing callers in place of that
11848         function.
11849         (xref--show-xrefs): Only do the "show" part.
11850         (xref-find-regexp): Rename, more or less, to
11851         project-or-libraries-find-regexp.
11853 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
11855         Abolish temporary buffer management for xref
11857         * lisp/progmodes/xref.el (xref--temporary-buffers)
11858         (xref--current)
11859         (xref--inhibit-mark-current)
11860         (xref--mark-selected): Remove.  Remove all references.
11861         (xref--show-xrefs): Do not construct the
11862         list of the temporary buffers, nor pass it along.
11864 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
11866         Rename "search path" to "library roots"
11868         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
11869         of the elements from CL-LIST1.
11871         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
11872         Update WRT to the above change.
11874         * lisp/progmodes/project.el (project-search-path-function): Rename
11875         to project-library-roots-function, update the documentation and
11876         references.
11877         (project-search-path): Likewise, to project-library-roots.
11878         (project-roots): Clarify documentation.
11879         (project-vc-search-path): Likewise, to project-vc-library-roots.
11880         (project-library-roots): In addition to the renames, thread the
11881         results through file-name-as-directory.
11882         (project-prune-directories): Accept a variable number of
11883         arguments.  Rename to project-combine-directories.
11884         (project-subtract-directories): New function.
11886         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
11887         Append project-roots and project-library-roots together.
11889         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
11891 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
11893         Prefer xpalloc to doubling buffers by hand
11895         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
11896         (read1): Use it for simplicity.
11897         * src/macros.c (store_kbd_macro_char):
11898         * src/minibuf.c (read_minibuf_noninteractive):
11899         * src/term.c (encode_terminal_code):
11900         * src/xrdb.c (magic_db):
11901         Prefer xpalloc to growing buffers by hand.
11902         This doesn’t fix any bugs, but simplifies the code a bit.
11904 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
11906         Merge from gnulib
11908         This incorporates:
11909         2015-11-05 timespec-sub: fix overflow bug; add tests
11910         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
11911         2015-11-03 intprops: add parentheses
11912         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
11913         Copy from gnulib.
11915 2015-11-07  David Reitter  <david.reitter@gmail.com>
11917         Provide NS notification objects where required to eliminate warnings
11919         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
11920         Call notification functions with notification objects
11921         as per delegate APIs.
11923 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
11925         Add test for bug #21824
11927         * test/automated/buffer-tests.el: New file.
11928         (overlay-modification-hooks-message-other-buf): New test.
11930 2015-11-07  Kelvin White  <kwhite@gnu.org>
11932         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
11934 2015-11-07  David Reitter  <david.reitter@gmail.com>
11936         Ignore fullscreen exit notifications on NS when frame is dead
11938         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
11939         (windowDidExitFullScreen:): Return if frame is dead.
11940         These functions may be called when a fullscreen frame
11941         is closed; they are called before, not after.
11943         May address Bug#21428.
11945 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
11947         Speed up lookup in redisplay--variables
11949         * lisp/frame.el (redisplay--variables): Make it a hash-table.
11951         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
11952         as a hash-table.  This speeds up this function by an order of
11953         magnitude: where previously a setq was slowed down by 100% by
11954         introducing the maybe_set_redisplay test, it is now only 5%
11955         slower.
11956         (syms_of_xdisp) <redisplay--variables>: Doc fix.
11958 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
11960         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
11962         The defsubst was being created as:
11963             (cl-defsubst name (args) ("DOC") ...)
11965         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
11966         Add test.
11968 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
11970         Update doc string of hexl-mode
11972         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
11974 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
11976         Fix error in copy-abbrev-table
11978         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
11979         property of the abbrev-table.  (Bug#21828)
11981         * test/automated/abbrev-tests.el: New file.
11983 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
11985         Add test to auto-revert-tests.el for Bug#21841
11987         * test/automated/auto-revert-tests.el
11988         (auto-revert-test01-auto-revert-several-files): New test.
11989         (auto-revert-test02-auto-revert-tail-mode)
11990         (auto-revert-test03-auto-revert-mode-dired): Rename them.
11992 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
11994         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
11996 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
11998         In x_consider_frame_title don't set title of tooltip frames
12000         * src/xdisp.c (x_consider_frame_title): Return immediately for
12001         tooltip frames to avoid displaying empty tooltips.
12003 2015-11-06  Anders Lindgren  <andlind@gmail.com>
12005         Fixed NextStep fullscreen problem (bug#21770).
12007         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
12008         fullscreen frames.
12010 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
12012         Ensure redisplay after evaluation
12014         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
12015         Revert last change.
12016         * lisp/frame.el (redisplay--variables): Populate the
12017         redisplay--variables list.
12018         * src/xdisp.c (maybe_set_redisplay): New function.
12019         (syms_of_xdisp) <redisplay--variables>: New variable.
12020         * src/window.h (maybe_set_redisplay): Declare prototype.
12021         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
12023 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
12025         * test/automated/subr-tests.el (subr-test-when): Fix again.
12027 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
12029         Don't invoke overlay modification hooks in wrong buffer
12031         * src/buffer.c (report_overlay_modification): When called with
12032         AFTER non-zero, don't invoke overlay modification hooks if the
12033         buffer recorded in last_overlay_modification_hooks is different
12034         from the current buffer.  (Bug#21824)
12036 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
12038         * admin/notes/repo: Fix a few obsolete references to Bazaar.
12040 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
12042         * test/automated/subr-tests.el (subr-test-when): Fix test.
12044 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
12046         Avoid division by zero crash observed by Yuan MEI
12048         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
12050         * src/dispnew.c (required_matrix_height, required_matrix_width):
12051         Avoid division by zero.
12052         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
12053         dpyinfo->smallest_char_width to 1.
12055 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
12057         Ensure redisplay after "C-x C-e"
12059         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
12060         redisplay happens to account for any side effects of the evaluated
12061         sexp.  (Bug#21835)
12063 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
12065         Skip some file notification tests for cygwin
12067         * test/automated/file-notify-tests.el (file-notify--test-with-events):
12068         Remove argument TIMEOUT.  Adapt all callees.
12069         (file-notify-test02-events, file-notify-test04-file-validity):
12070         Skip for cygwin.  (Bug#21804)
12072 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
12074         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
12076 2015-11-05  Daiki Ueno  <ueno@gnu.org>
12078         Suppress redundant Pinentry startup messages
12080         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
12081         * lisp/epg.el: Declare `pinentry-start'.
12082         (epg--start): Call `pinentry-start' with QUIET argument set.
12084 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
12086         * doc/emacs/ack.texi (Acknowledgments): Updates.
12088 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
12090         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
12091         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
12093 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
12095         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
12096         Add prettification support for \times.
12098 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
12100         * test/automated/process-tests.el: Skip tests when bash is unavailable.
12101         (process-test-sentinel-accept-process-output)
12102         (process-test-sentinel-sit-for): skip-unless bash executable found.
12104 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
12106         Add test for bug #21831
12108         * test/automated/process-tests.el
12109         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
12110         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
12112 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
12114         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
12116         (eieio--generic-static-object-generalizer): Fix typo.
12117         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
12118         like the underlying cause of bug#17852 was fixed in the mean time.
12120 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
12122         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
12124         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
12125         It breaks bootstrapping (duh).
12127 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
12129         * lisp/files.el (report-errors): Obsolete.
12131         (normal-mode, hack-local-variables, dir-locals-find-file):
12132         Use `with-demoted-errors' instead.
12134 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
12136         * lisp/subr.el (when): Use `macroexp-progn'.
12138         * test/automated/subr-tests.el (subr-test-when): New test.
12140 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
12142         * lisp/progmodes/xref.el: Doc fixes.
12143         (xref-make-file-location, xref-make-buffer-location, xref-make)
12144         (xref-make-bogus-location, xref-make-match): Add cross-references.
12145         (xref--insert-xrefs): Fix typo in docstring.
12147 2015-11-04  Anders Lindgren  <andlind@gmail.com>
12149         Render fringe bitmaps correctly on NextStep (bug#21301)
12151         The fringe bitmaps were inverted, the background was not transparent,
12152         the image data was horizontally mirrored, and periodic fringe bitmaps
12153         were not supported.
12155         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
12156         When both background and foreground colors are 0, set the background
12157         alpha channel to 0 (making the background transparent).  When
12158         copying the image data, do this from the most significant bit
12159         (leftmost) to the least (rightmost), to avoid mirroring.
12160         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
12161         Add support for periodic images (e.g. the empty line indicator).
12163 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
12165         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
12167 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
12169         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
12171         * admin/MAINTAINERS: Add thunk.el.
12173 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
12175         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
12177 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
12179         Fix a stupid error in gfilenotify.c
12181         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
12182         if we've got a `deleted' signal AND the file name is the watched one.
12184 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
12186         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
12188         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
12189         Use case-insensitive string compare for file names.
12190         (emacs-test-dir): Add 'downcase' to cause case differences (at
12191         least on my system).
12193 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
12195         flymake-tests.el (warning-predicate-rx-gcc): Fix check
12197         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
12198         Also check that "make" is available, not just "gcc".
12200 2015-11-02  Ken Brown  <kbrown@cornell.edu>
12202         Document behavior of collation on Cygwin
12204         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
12205         expected failure on Cygwin.
12206         * doc/lispref/strings.texi (Text Comparison): Document that
12207         punctuation and whitespace are not ignored for sorting on Cygwin.
12209 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
12211         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
12213 2015-11-01  Glenn Morris  <rgm@gnu.org>
12215         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
12216         (Bug#21794)
12217         * test/automated/f90.el (f90-test-bug21794): New test.
12219 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
12221         Fix incompatibility with TCC in test for bug#18745
12223         * test/automated/process-tests.el (process-test-quoted-batfile):
12224         Remove spaces unrelated to the bug being tested.
12226 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
12228         Improve completion in tramp-gvfs.el
12230         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
12231         Rename from `tramp-zeroconf-parse-service-device-names'.
12232         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
12233         with `tramp-zeroconf-parse-device-names'.
12234         (tramp-gvfs-parse-device-names): New defun.
12235         (top): Use it when `tramp-zeroconf-parse-device-names' is not
12236         applicable.
12238         * lisp/net/tramp.el (tramp-set-completion-function): The argument
12239         could also be a zeroconf service type.
12241 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
12243         * lisp/net/ntlm.el: Change version to 2.0.0.
12245 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
12247         Fix bug#21762
12248         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
12249         `eql' instead of `=' to accommodate the case that (syntax-after (point))
12250         returns nil.
12251         * test/automated/python-tests.el (python-indent-inside-paren-7):
12252         New test.
12254 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
12256         * test/automated/python-tests.el: Avoid warnings.
12257         (python-tests-with-temp-buffer, python-tests-with-temp-file):
12258         Bind `python-indent-guess-indent-offset' to nil.
12260 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
12262         * src/alloc.c: Silence compiler warnings.
12263         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
12265 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
12267         * etc/NEWS: Fix js-jsx-mode entry punctuation.
12269 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
12271         Add JSX indentation via js-jsx-mode  (Bug#21799)
12273         * lisp/progmodes/js.el: Add JSX indentation support.
12274         (js--jsx-end-tag-re)
12275         (js--jsx-after-tag-re): New variables.
12276         (js--jsx-find-before-tag)
12277         (js--jsx-indented-element-p)
12278         (js--as-sgml)
12279         (js--expression-in-sgml-indent-line)
12280         (js-jsx-indent-line)
12281         (js-jsx-mode): New functions.
12282         * test/indent/js-jsx.js: New file.
12283         * etc/NEWS: Add information about js-jsx-mode.
12285 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
12287         Minor fix in filenotify.el
12289         * lisp/filenotify.el (file-notify--event-file-name)
12290         (file-notify--event-file1-name): Normalize result with
12291         `directory-file-name'.
12293 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
12295         Avoid errors in redisplay--pre-redisplay-functions
12297         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
12298         use 'bobp', instead compare window-point with 1.  (Bug#21730)
12300 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
12302         Merge from gnulib
12304         This incorporates:
12305         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
12306         2015-10-25 stdalign: port to Sun C 5.9
12307         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
12308         Copy from gnulib.
12310 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
12312         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
12313         (w32_compare_strings): Adjust for the correction.
12315 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
12317         * test/automated/vc-tests.el (vc-test--state)
12318         (vc-test--working-revision, vc-test--checkout-model):
12319         Add result messages.
12321 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
12323         * test/automated/faces-tests.el: Add another test
12325 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
12327         * lisp/faces.el (faces--attribute-at-point): Fix bug
12328         introduced by previous commit.
12330 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
12332         * test/automated/faces-tests.el: New file.
12334 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
12336         * lisp/faces.el: Refactor common code and fix a bug.
12337         (faces--attribute-at-point): New function.  Fix a bug when the
12338         face at point is a list of faces and the desired attribute is not
12339         on the first one.
12340         (foreground-color-at-point, background-color-at-point): Use it.
12342 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
12344         * etc/tutorials/TUTORIAL.translators: Fix PL names.
12346 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
12348         * lisp/character-fold.el: Provide `character-fold'.
12350 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
12352         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
12353         for Gnus and ivy.
12355 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
12357         Some minor fixes for tramp-gvfs.el
12359         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
12360         An attribute returned by gvfs-info might be empty.  In case of
12361         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
12362         (tramp-zeroconf-parse-service-device-names): New defun.
12363         Derived from `tramp-zeroconf-parse-workstation-device-names'.
12364         (top): Add completion functions for "afp" and "smb" methods.
12366 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
12368         * test/automated/character-fold-tests.el: New file
12370 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
12372         * test/automated/sort-tests.el: New file.
12373         Tests in this file are randomly generated and then tested with
12374         regular, reverse, and case-fold sorting.
12376 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
12378         Describe known problems with pinning Emacs to taskbar
12380         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
12381         on Windows 10.  For the details, see the discussion starting at
12382         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
12384 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
12386         * lisp/isearch.el: Avoid an error that blocks isearch.
12387         (isearch-update): Don't error if `isearch--current-buffer' has
12388         been killed.
12390         * test/automated/isearch-tests.el (isearch--test-update):
12391         New file.
12393 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
12395         Fix documentation of 'beginning/end-of-buffer'
12397         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
12398         conditions under which the mark will be pushed at the previous
12399         position.  (Bug#21748)
12401 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
12403         Add RefTeX feature idea: editing RefTeX TOC buffers
12405         More face defs for ivy, swiper, ace-window, eshell
12407 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
12409         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
12410         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
12411         just VAR.
12412         (auth-source-backend-parse): Use make-instance.
12413         (auth-source-search): Remove unused key args.
12414         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
12415         (auth-source-search-backends): Use slot names rather than their initarg.
12416         (auth-source-netrc-create):
12417         (auth-source-delete):
12418         (auth-source-secrets-create, auth-source-plstore-search)
12419         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
12420         (auth-source-plstore-create, auth-source-netrc-search)
12421         (auth-source-netrc-parse): Remove unused key args.
12422         (auth-source-forget+): Simplify the arglist.
12423         (auth-source-macos-keychain-search-items)
12424         (auth-source-token-passphrase-callback-function): Mark unused args.
12425         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
12426         (pp-escape-newlines): Declare.
12427         (auto-source--symbol-keyword): New function.
12428         (auth-source-plstore-create, auth-source-netrc-create)
12429         (auth-source-netrc-normalize): Use it.
12430         (auth-source-netrc-search): Don't pass :delete to
12431         auth-source-netrc-parse since it doesn't use it.
12432         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
12433         symbol-value to index in keyword args.
12434         (auth-source-macos-keychain-result-append): Avoid setq.
12435         (auth-source-netrc-create): Remove unused vars `file' and `add'.
12436         (auth-source-user-or-password): Remove unused var `cname'.
12438 2015-10-29  Juri Linkov  <juri@linkov.net>
12440         * lisp/dired.el (dired-unmark-all-files-query): Declare.
12441         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
12442         (Bug#21746)
12444 2015-10-29  Juri Linkov  <juri@linkov.net>
12446         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
12447         to go to the beginning of text line instead of command line.
12448         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
12450 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
12452         Fix encoding of saving *Help* buffers
12454         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
12455         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
12457 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
12459         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
12460         (cl--generic-derived-specializers): New function.
12461         (cl--generic-derived-generalizer): New generalizer.
12462         (cl-generic-generalizers): New specializer (derived-mode MODE).
12463         (cl--generic-split-args): Apply the rewriter, if any.
12464         (cl-generic-define-context-rewriter): New macro.
12465         (major-mode): Use it to define a new context-rewriter, so we can write
12466         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
12468         * lisp/frame.el (window-system): New context-rewriter so we can write
12469         `(window-system VAL)' instead of (window-system (eql VAL)).
12470         (cl--generic-split-args): Apply the rewriter, if any.
12471         (frame-creation-function): Use the new syntax.
12473         * lisp/term/x-win.el (window-system-initialization)
12474         (handle-args-function, frame-creation-function)
12475         (gui-backend-set-selection, gui-backend-selection-owner-p)
12476         (gui-backend-selection-exists-p, gui-backend-get-selection):
12477         * lisp/term/w32-win.el (window-system-initialization)
12478         (handle-args-function, frame-creation-function)
12479         (gui-backend-set-selection, gui-backend-get-selection)
12480         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
12481         * lisp/term/pc-win.el (gui-backend-get-selection)
12482         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
12483         (gui-backend-set-selection, window-system-initialization)
12484         (frame-creation-function, handle-args-function):
12485         * lisp/term/ns-win.el (window-system-initialization)
12486         (handle-args-function, frame-creation-function)
12487         (gui-backend-set-selection, gui-backend-selection-exists-p)
12488         (gui-backend-get-selection):
12489         * lisp/startup.el (handle-args-function):
12490         * lisp/term/xterm.el (gui-backend-get-selection)
12491         (gui-backend-set-selection): Use the new syntax.
12493 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
12495         * test/indent/css-mode.css: Add tests for url(...) syntax.
12497 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
12499         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
12500         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
12501         (smie-prec2->grammar): Use `declare'.
12503 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
12505         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
12506         (cl--generic-generalizer): Add `name' field.
12507         (cl-generic-make-generalizer): Add corresponding `name' argument.
12508         (cl-generic-define-generalizer): New macro.
12509         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
12510         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
12511         (cl--generic-t-generalizer): Use it.
12512         (cl-generic-ensure-function): Add `noerror' argument.
12513         (cl-generic-define): Use it so we don't follow aliases.
12514         (cl-generic-define-method): Preserve pre-existing ordering of methods.
12515         (cl--generic-arg-specializer): New function.
12516         (cl--generic-cache-miss): Use it.
12517         (cl-generic-generalizers): Only fset a temporary definition
12518         during bootstrap.
12519         (cl--generic-struct-tag, cl--generic-struct-specializers):
12520         Allow extra arguments.
12522         * lisp/emacs-lisp/eieio-compat.el
12523         (eieio--generic-static-symbol-generalizer)
12524         (eieio--generic-static-object-generalizer):
12525         Use cl-generic-define-generalizer.
12526         (eieio--generic-static-symbol-specializers): Allow extra arguments.
12528         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
12529         (eieio--generic-subclass-generalizer):
12530         Use cl-generic-define-generalizer.
12531         (eieio--generic-subclass-specializers): Allow extra arguments.
12533 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
12535         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
12537 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
12539         Add "afp" method to Tramp
12541         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
12543         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
12544         (tramp-gvfs-handle-expand-file-name)
12545         (tramp-gvfs-handler-mounted-unmounted)
12546         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
12547         (tramp-gvfs-maybe-open-connection): Support also "afp".
12548         (tramp-gvfs-handle-file-attributes): Handle the case of empty
12549         "owner::user" and "owner::group" entries.
12551 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
12553         Handle negative coordinates in ‘x_calc_absolute_position’
12555         * src/w32term.c (x_calc_absolute_position): Find display origin to
12556         allow for negative coordinates.
12558 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
12560         (internal--syntax-propertize): Save match-data here (bug#21766)
12562         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
12563         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
12565 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
12567         Don't require default-directory to end with a slash
12569         * doc/lispref/files.texi (Magic File Names): Document the change
12570         in unhandled-file-name-directory.
12572         * lisp/url/url-handlers.el
12573         (url-handler-unhandled-file-name-directory): Update accordingly.
12575         * src/buffer.c (default-directory): Update the docsting.
12577         * src/fileio.c (unhandled-file-name-directory): Default to calling
12578         `file-name-as-directory'
12579         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
12581 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12583         * lisp/isearch.el: Delete some outdated comments.
12585 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
12587         Fix eshell/clear not working if the output has a small line count
12589         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
12590         number of newlines to be inserted. This fixes the issue where
12591         eshell/clear wouldn't work if the prompt was not at the bottom of the
12592         window, and the output wasn't too long.
12594 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
12596         * lisp/files.el (write-file): Use vc-refresh-state.
12598         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
12600         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
12602 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
12604         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
12605         (macroexp-unprogn): Make sure we never return an empty list.
12606         (macroexp-if): Remove unused (and unsafe) optimization.
12607         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
12608         occur occasionally.
12610 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
12612         Fix bug#21766 and add test
12613         * lisp/simple.el (delete-trailing-whitespace): Save match data when
12614         calling `skip-syntax-backward'.
12615         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
12616         New test.
12618 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12620         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
12622 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
12624         * src/dispnew.c (init_display): Simplify overflow checking.
12626 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12628         * lisp/character-fold.el (character-fold-to-regexp): Fix case
12629         where string ends in space
12631 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12633         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
12635         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
12637 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12639         * lisp/character-fold.el: Make compatible with lax-whitespace.
12640         (character-fold-to-regexp): Rework internals to play nice with
12641         lax-whitespacing.
12643         When the user types a space, we want to match the table entry for
12644         ?\s, which is generally a regexp like "[ ...]".  However, the
12645         `search-spaces-regexp' variable doesn't "see" spaces inside these
12646         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
12647         manually expose a space).
12649         Furthermore, the lax search engine acts on a bunch of spaces, not
12650         on individual spaces, so if the string contains sequential spaces
12651         like "  ", we need to keep them grouped together like this:
12652         "\\(  \\|[ ...][ ...]\\)".
12654 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12656         * lisp/isearch.el: Refactor momentary messages.
12657         (isearch--momentary-message): New function.
12658         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
12659         (isearch-toggle-invisible): Use it.
12661 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12663         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
12664         (isearch-define-mode-toggle): New macro.
12665         (isearch-toggle-invisible): Rename to
12666         `isearch-define-mode-toggle'.
12667         (isearch-toggle-case-fold, isearch-toggle-invisible)
12668         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
12669         with `isearch-define-mode-toggle'.
12671 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
12673         Avoid using `add-to-list' on a let-local var in tramp-smb.el
12675         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
12676         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
12678 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
12680         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
12681         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
12682         does not exist in XEmacs 21.4.
12684 2015-10-28  Anders Lindgren  <andlind@gmail.com>
12686         Fixed OS X startup crash
12688         Input events started to arrive before ns_term_init() was finished.
12689         Solved by blocking input.  This also seems to correct the "You
12690         can't open the application "Emacs" because it may be damaged or
12691         incomplete" error issued when double-clicking on the Emacs
12692         application.
12694         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
12695         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
12697 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12699         * src/process.c (Fget_buffer_process): Improve docstring.
12700         Document the fact that it doesn't return dead processes.
12702 2015-10-28  Anders Lindgren  <andlind@gmail.com>
12704         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
12706         * src/nsterm.h (struct ns_output): New flag, in_animation.
12707         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
12708         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
12709         in_animation flag around call to "setVisible". Set new tool bar
12710         height before call to setVisible.
12711         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
12712         andColumns:] as this fools the subsequent call to updateFrameSize
12713         from performing the real resize.
12714         (windowDidResize): Don't update anything when in_animation is
12715         non-zero.
12717         Trace output.
12719         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
12720         (EmacsToolbar):
12721         * src/nsterm.m (x_set_window_size, updateFrameSize)
12722         ([EmacsView setRows: andColumns:])
12724 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
12726         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
12728 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
12730         Prettify TeX macros not ending in a word char
12732         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
12733         Prettify macros which don't end in a word character.
12735 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
12737         Pipe Hg commit descriptions through 'tabindent'
12739         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
12740         through 'tabindent'.
12741         (vc-hg-log-view-mode): Set tab-width to 2 locally.
12742         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
12744 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
12746         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
12747         (tramp-smb-handle-directory-files): Use `delete-dups'.
12749         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
12751 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
12753         * lisp/international/ccl.el: Use lexical-binding.
12754         (ccl-compile-if): Remove unused var `false-ic'.
12755         (ccl-compile-write-repeat): Remove unused var `i'.
12756         (ccl-compile-map-single): Remove unused var `id'.
12757         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
12758         dynamic var `ccl-code'.
12760 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
12762         * lisp/json.el (json-new-object): Optimize trivial `list' call.
12764 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
12766         * lisp/help.el: Fix bug with incorrect arglist string.
12767         (help-add-fundoc-usage): Don't mistake a mis-formatted string
12768         for a list.
12770 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
12772         * lisp/gnus/gnus-topic.el: Silence some warnings.
12773         (gnus-topic-prepare-topic): Remove unused var `topic'.
12774         (gnus-topic-remove-topic): Mark unused arg `hide'.
12775         (gnus-tmp-header): Declare.
12776         (gnus-topic-goto-missing-group): Remove unused var `entry'.
12777         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
12778         (gnus-topic-copy-matching): Mark unused arg `copyp'.
12779         Move initialization of `topic' into its declaration.
12781 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
12783         Minor CEDET fixes
12785         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
12786         Handle warnings from gtags about invalid options.
12787         (cedet-gnu-global-create/update-database): Do incremental update
12788         properly.
12790         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
12791         Get monotone root right.
12793 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
12795         Fall back to polling in autorevert when needed
12797         * lisp/autorevert.el (auto-revert-notify-handler): When a
12798         `stopped' event arrives from file notification, fall back to polling.
12800         * test/automated/file-notify-tests.el
12801         (file-notify-test03-autorevert): Extend test for polling when file
12802         notification ceases to work.
12804 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
12806         Show full commit messages in 'hg log' when appropriate
12808         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
12809         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
12810         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
12812 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
12814         Use a plain SVG file for the icon
12816         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
12817           format instead of the Inkscape SVG format.
12819 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
12821         Fix subtle bug in auto-revert-tests.el
12823         * test/automated/auto-revert-tests.el
12824         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
12825         buffer where it belongs to.  (Bug#21668)
12827 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
12829         * lisp/emacs-lisp/map.el: Better docstrings.
12831         * lisp/emacs-lisp/seq.el: Better docstrings.
12833         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
12835 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
12837         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
12839 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
12841         Clarify that load-path contents should be directory file names
12843         * doc/lispref/files.texi (Directory Names): Define and use "directory
12844         file name".  Recommend `expand-file-name'.
12846         * src/lread.c (load-path): Fix doc string; elements are directory file
12847         names.
12849 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
12851         Fix simple-test.el test
12853         * test/automated/simple-test.el (simple-test--dummy-buffer):
12854         Make sure indentation doesn't use TABs, otherwise the 6th test
12855         might fail.
12857 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
12859         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
12860         `substring' does not account for full width characters.
12862 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
12864         Further work on `stopped' events in filenotify.el
12866         * doc/lispref/os.texi (File Notifications): Rework examples.
12868         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
12869         (file-notify--rm-descriptor, file-notify-callback): Improve check
12870         for sending `stopped' event.
12871         (file-notify-add-watch): Check for more events for `inotify'.
12873         * test/automated/file-notify-tests.el
12874         (file-notify--test-expected-events): New defvar.
12875         (file-notify--test-with-events): Use it.
12876         (file-notify--test-cleanup): Make it more robust when deleting
12877         directories.
12878         (file-notify--test-event-test): Check also for watched directories.
12879         (file-notify--test-event-handler): Suppress temporary .#files.
12880         (file-notify-test02-events, file-notify-test04-file-validity):
12881         Rework `stopped' events.
12882         (file-notify-test05-dir-validity): Wait for events when appropriate.
12884 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
12886         * src/keyboard.c (post-command-hook): Shorten docstring.
12888 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
12890         Fix infinite loop in sh-script's SMIE code
12892         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
12893         loop (bug#21747).
12895 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
12897         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
12898         Character-fold search _still_ doesn't play well with
12899         lax-whitespace.  So disable it by default (again) for now.
12901 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
12903         * lisp/isearch.el: No visual feedback for default search mode.
12904         During an isearch where character-folding is the default, we don't
12905         want to take up minibuffer space just to tell the user that
12906         "Char-fold " is on.  The same goes for other modes, if the user
12907         changes the default.  In contrast, if the user toggles OFF the
12908         default mode, they should see "Literal", to distinguish it from
12909         the default mode.
12910         (isearch--describe-regexp-mode): Return "" if describing the
12911         default mode, and return "literal " if describing a plain search
12912         and it is not default.
12914 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
12916         * test/automated/simple-test.el: New file.
12917         Define tests for `newline' and `open-line'.
12919 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
12921         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
12922         Also run `post-self-insert-hook' when called interactively.
12924 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
12926         * lisp/simple.el (open-line): Fix docstring.
12927         Also explain apparently redundant line.
12929 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
12930             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
12932         Sync with soap-client repository, version 3.0.1
12934         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
12935         Bump version to 3.0.1.
12937         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
12939 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
12941         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
12943 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
12945         * src/keyboard.c (post-command-hook): Extend the docstring.
12946         Mainly, explain how to use it without hanging Emacs, or giving the
12947         impression that it is hanging.  Also mention `pre-command-hook'.
12948         (pre-command-hook): Mention `post-command-hook'.
12950 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
12952         * lisp/custom.el (custom-declare-variable): Shorten code again.
12953         Without using pcase this time.  We can't use pcase because it is
12954         loaded after custom in loadup.el.  Also add a comment explaining
12955         this to future dummies like me.
12957 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
12959         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
12961 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
12963         Introduce `stopped' event in file notification
12965         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
12966         (file-notify-rm-watch): Use it.
12967         (file-notify-callback): Implement `stopped' event.
12968         (file-notify-add-watch): Mention `stopped' in the docstring.
12969         Check, that upper directory exists.
12971         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
12972         Add two test cases.
12973         (file-notify-test02-events): Handle also `stopped' event.
12974         (file-notify-test04-file-validity): Add another test case.
12976 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
12978         Revert commit that broke 'make bootstrap'
12980         * lisp/custom.el (custom-declare-variable): Revert commit
12981         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
12982         even when pcase has not been defined yet, when doing bootstrapping.
12984 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
12986         Port recent inline functions fix to Standard C
12988         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
12989         All uses rewritten to define the function directly rather than to
12990         use a macro to define the function.  This conforms to Standard C,
12991         which does not allow stray semicolons at the top level.  I hope it
12992         also avoids the problems with TAGS.  Those macros, though clever,
12993         were pretty confusing anyway, and it wasn’t clear they were worth
12994         the aggravation even without the TAGS problem.
12996 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
12998         * lisp/isearch.el: Make character-fold search the default again.
13000 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
13002         * lisp/character-fold.el: Many improvements.
13003         (character-fold-search-forward, character-fold-search-backward):
13004         New command.
13005         (character-fold-to-regexp): Remove lax-whitespace hack.
13006         (character-fold-search): Remove variable.  Only isearch and
13007         query-replace use char-folding, and they both have their own
13008         variables to configure that.
13010 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
13012         * lisp/isearch.el: Generalize definition of regexp-function toggles.
13013         (isearch-specify-regexp-function): New macro for specifying
13014         possible values of `isearch-regexp-function'.
13015         (isearch-toggle-character-fold, isearch-toggle-symbol)
13016         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
13018 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
13020         * lisp/isearch.el (search-default-regexp-mode): New variable.
13021         (isearch-mode): Use it.
13023 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
13025         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
13026         (search-slow-speed, search-upper-case)
13027         (search-nonincremental-instead, search-whitespace-regexp)
13028         (search-invisible, isearch-hide-immediately)
13029         (isearch-resume-in-command-history, search-ring-max)
13030         (regexp-search-ring-max, search-ring-update, search-highlight)
13031         (isearch-fail): Delete :group entries.
13033 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
13035         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
13037 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
13039         addpm.c: Silence some warnings.
13041         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
13042         to LPBYTE.
13043         (add_registry): Pass NULL to optional lpClass argument of
13044         RegCreateKeyEx, not an empty string.
13046 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
13048         addpm.c: Do not add obsolete GTK libraries to the path.
13050         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
13051         (add_registry): Remove variables `size' and `gtk_key'.
13052         Do not add the GTK DLL directory to the library search path; it is
13053         confusing behavior (in particular, the same Emacs version with and
13054         without invoking addpm will use a different path), and the GTK image
13055         libraries are obsolete anyway.
13057 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
13059         addpm.c: Replace existing registry entries, but do not create new ones
13061         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
13062         existing values from previous versions, but do not add new ones; the
13063         key could exist for other reasons unrelated to old Emacsen, like X-style
13064         resources, or to set some environment variables like HOME or LANG, and
13065         in that case we don't want to populate it with obsolete values.
13067 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
13069         * nt/addpm.c (add_registry): Do not compute unused return value.
13071 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
13073         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
13075         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
13076         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
13077         current behavior because REG_OPTION_NON_VOLATILE is defined to
13078         be 0L anyway, but that option is actually documented only for
13079         RegCreateKeyEx.
13081 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
13083         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
13085 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
13087         Update frame title when redisplay scrolls selected window
13089         * src/xdisp.c (redisplay_window): Reconsider the frame's title
13090         when the mode-line of the frame's selected window needs to be
13091         updated.
13093 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
13095         Update frame title when scrolling the selected window
13097         * src/window.c (wset_update_mode_line): New function, sets either
13098         the window's update_mode_line flag or the global update_mode_lines
13099         variable.
13100         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
13101         (window_scroll_line_based): Call it instead of only setting the
13102         window's update_mode_line flag.
13104 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
13106         An even better fix for bug#21739
13108         * src/window.c (set_window_buffer): If the window is the frame's
13109         selected window, set update_mode_lines, not the window's
13110         update_mode_line flag.
13111         * src/buffer.c (Fkill_buffer): Undo last change.
13112         (set_update_modelines_for_buf): Function deleted.
13114 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13115             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
13117         Sync with soap-client repository, version 3.0.0
13119         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
13120         Bump version to 3.0.0.
13122         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
13124         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
13126         * lisp/net/soap-inspect.el: Shorten first line description.
13128         * lisp/net/soap-client.el: Make a small whitespace fix.
13130         * lisp/net/soap-inspect.el: Update copyright years.
13132         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
13133         first use in soap-encode-xs-element.
13135         * lisp/net/soap-client.el (soap-type-is-array?): new defun
13136         (soap-encode-xs-element): handle array elements in this function
13137         (soap-encode-xs-complex-type): flag error if asked to encode an
13138         array type, this is handled in `soap-encode-xs-element'
13140         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
13141         Do not print type for attribute group.
13143         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
13144         New function.
13145         (soap-inspect-xs-attribute-group): Likewise.
13147         * lisp/net/soap-inspect.el
13148         (soap-resolve-references-for-xs-attribute-group): Resolve
13149         references of attributes in an attribute group.
13151         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
13152         type directly, not through soap-wsdl-get.
13154         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
13155         nil if reference attribute is nil.
13157         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
13158         Convert XML schema attributes to xsd:string.
13160         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
13161         New function.
13162         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
13163         (soap-sample-value-for-xs-complex-type): Likewise.
13164         (soap-inspect-xs-attribute): New function.
13165         (soap-inspect-xs-simple-type): Print attributes.
13166         (soap-inspect-xs-complex-type): Likewise.
13168         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
13169         Resolve references for attributes.
13170         (soap-resolve-references-for-xs-complex-type): Likewise.
13172         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
13173         Rename from soap-xml-node-first-child.
13174         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
13175         (soap-xs-parse-simple-type): Likewise.
13177         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
13179         * lisp/net/soap-client.el (soap-invoke-internal): New function.
13180         (soap-invoke-async): Call soap-invoke-internal.
13181         (soap-invoke): Likewise.
13183         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
13184         url-retrieve callback is killed.
13186         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
13187         Rename function.
13188         (soap-parse-wsdl-phase-fetch-imports): Likewise.
13189         (soap-parse-wsdl-phase-parse-schema): Likewise.
13190         (soap-parse-wsdl-phase-fetch-schema): Likewise.
13191         (soap-parse-wsdl-phase-finish-parsing): Likewise.
13192         (soap-parse-wsdl): Update calls.
13194         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
13196         * lisp/net/soap-client.el (soap-invoke-async): New function.
13197         (soap-invoke): Reimplement using soap-invoke-async.
13199         * lisp/net/soap-client.el (soap-parse-server-response):
13200         Improve docstring.
13201         (soap-invoke): Inline call to soap-parse-server-response.
13203         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
13204         Prevent incorrect warning.
13206         * lisp/net/soap-client.el (soap-parse-server-response):
13207         Rename soap-process-url-response.  Destroy the mime part.
13208         (soap-invoke): Call soap-parse-server-response.
13210         * lisp/net/soap-client.el: Update copyright date.
13212         * lisp/net/soap-client.el: Fix checkdoc issues.
13214         * lisp/net/soap-client.el: Fix indentation and long lines.
13216         * lisp/net/soap-client.el (soap-time-format): Remove variable.
13217         (soap-encode-xs-basic-type): Simplify date-time format detection.
13218         (soap-decode-xs-basic-type): Remove soap-time-format support.
13220         * lisp/net/soap-client.el (soap-process-url-response): New function.
13221         (soap-fetch-xml-from-url): Call soap-process-url-response.
13222         (soap-parse-wsdl-phase-1): New function.
13223         (soap-parse-wsdl-phase-2): Likewise.
13224         (soap-parse-wsdl-phase-3): Likewise.
13225         (soap-parse-wsdl-phase-4): Likewise.
13226         (soap-parse-wsdl-phase-5): Likewise.
13227         (soap-parse-wsdl): Call phase functions.
13229         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
13230         Remove one-argument and call.
13232         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
13234         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
13235         (soap-parse-schema): Add wsdl argument.  Look up XML schema
13236         imports from wsdl.
13237         (soap-load-wsdl): Do not set soap-xmlschema-imports.
13238         (soap-parse-wsdl): Get XML schema imports from wsdl.
13240         * lisp/net/soap-client.el (soap-current-file): Remove variable.
13241         (soap-wsdl): Add current-file slot.
13242         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
13243         file from wsdl.
13244         (soap-fetch-xml-from-file): Likewise.
13245         (soap-fetch-xml): Likewise.
13246         (soap-load-wsdl): Always create wsdl object first.
13247         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
13249         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
13250         (soap-xs-parse-element): Set is-group slot.
13251         (soap-resolve-references-for-xs-element): Skip is-group elements.
13252         (soap-xs-complex-type): Add is-group slot.
13253         (soap-xs-parse-complex-type): Set is-group slot.
13254         (soap-xs-parse-sequence): Parse xsd:group elements.
13255         (soap-resolve-references-for-xs-complex-type): Inline elements
13256         from referenced xsd:group nodes.
13257         (soap-parse-schema): Parse xsd:group nodes.
13259         * lisp/net/soap-client.el (soap-invoke):
13260         Don't set url-http-version to 1.0.
13262         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
13263         Allow choice nodes to accept multiple values.
13265         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
13266         for extra header values.
13268         * lisp/net/soap-client.el (soap-well-known-xmlns):
13269         Add wsa and wsaw tags.
13270         (soap-operation): Add input-action and output-action slots.
13271         (soap-parse-operation): Parse wsaw:Action nodes.
13272         (soap-encode-body): Encode service-url for WS-Addressing.
13273         (soap-create-envelope): Likewise.
13274         (soap-invoke): Update soap-create-envelope call to provide
13275         service-url argument.
13277         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
13278         Support xsi:type override attribute.
13279         (soap-decode-array): Likewise.
13281         * lisp/net/soap-client.el (soap-parse-schema):
13282         Handle location attribute.
13284         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
13285         matched validation regexp.
13287         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
13288         Encode xsd:list nodes.
13289         (soap-decode-xs-simple-type): Decode xsd:list nodes.
13291         * lisp/net/soap-client.el (soap-get-candidate-elements):
13292         Fix reference handling.
13294         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
13295         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
13296         (soap-xs-add-list): New function.
13298         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
13299         expected, interpret nil as "false".
13301         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
13302         gYear, gMonthDay, gDay and gMonth.
13304         * lisp/net/soap-client.el (soap-time-format): New variable.
13305         (soap-encode-xs-basic-type): Handle dateTime, time, date,
13306         gYearMonth, gYear, gMonthDay, gDay and gMonth.
13307         (soap-decode-date-time): New function.
13308         (soap-decode-xs-basic-type): Use soap-decode-date-time.
13310         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
13311         after encoding.
13312         (soap-decode-xs-basic-type): Validate value before decoding.
13314         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
13315         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
13317         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
13318         instead of overwriting it.
13319         (soap-validate-xs-simple-type): Add union support.
13321         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
13322         to Emacs regexp using xsdre-translate.
13323         (soap-validate-xs-simple-type): Validate value against pattern.
13325         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
13326         inline simpleType nodes.
13327         (soap-decode-type): Handle union types.
13329         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
13330         attributes.
13332         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
13333         from soap-xs-attribute-group-consolidate, all callers updated
13334         (soap-get-xs-attributes): Rename from
13335         soap-xs-attributes-consolidate, all callers updated
13337         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
13338         (soap-xs-attribute-group): New type.
13339         (soap-xs-parse-attribute-group): New function.
13340         (soap-resolve-references-for-xs-attribute-group): Likewise.
13341         (soap-xs-add-extension): Handle attribute groups.
13342         (soap-resolve-references-for-xs-simple-type): Likewise.
13343         (soap-xs-parse-complex-type): Likewise.
13344         (soap-xs-parse-extension-or-restriction): Likewise.
13345         (soap-resolve-references-for-xs-complex-type): Likewise.
13346         (soap-xs-attribute-group-consolidate): New function.
13347         (soap-xs-attributes-consolidate): Handle attribute groups.
13348         (soap-parse-schema): Likewise.
13350         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
13351         Fix boolean encoding.
13353         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
13354         element names in warnings.
13356         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
13358         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
13359         Eliminate invalid warnings for choice types.
13361         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
13362         Also encode base type attributes.
13364         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
13365         warning.  Print e-name in warnings, or element if e-name is nil.
13367         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
13368         (soap-xs-parse-element): Set substitution-group.
13369         (soap-resolve-references-for-xs-element): Populate alternatives slot.
13370         (soap-get-candidate-elements): New function.
13371         (soap-encode-xs-complex-type): Iterate through all candidate elements.
13372         Handle types with nil type indicator.  Fix warning logic.
13374         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
13375         earlier in the file to prevent compiler warning.
13377         * lisp/net/soap-client.el (soap-node-optional): New function.
13378         (soap-node-multiple): Likewise.
13379         (soap-xs-parse-element): Call soap-node-optional and
13380         soap-node-multiple.
13381         (soap-xs-complex-type): Add optional? and multiple? slots.
13382         (soap-xml-get-children-fq): New function.
13383         (soap-xs-element-get-fq-name): Likewise.
13384         (soap-xs-complex-type-optional-p): Likewise.
13385         (soap-xs-complex-type-multiple-p): Likewise.
13386         (soap-xs-attributes-consolidate): Likewise.
13387         (soap-decode-xs-attributes): Likewise.
13388         (soap-decode-xs-complex-type): Decode types with nil type indicator.
13389         Support children that use local namespaces.  Decode attributes.
13390         Add type considerations to optional? and multiple? warnings.
13392         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
13393         Store parsed attributes.
13394         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
13396         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
13397         Don't add the xsi:type attribute (Exchange refuses requests which have
13398         this attribute).
13400         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
13401         correct compiler warnings about unused function arguments and
13402         local variables.
13404         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
13405         type indicator.
13406         (soap-parse-envelope): Handle response headers.
13407         (soap-parse-response): Likewise.  Only return non-nil decoded values.
13409         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
13410         Return validated value.
13412         * lisp/net/soap-client.el (soap-xs-parse-element)
13413         (soap-xs-parse-simple-type)
13414         (soap-xs-parse-complex-type)
13415         (soap-parse-message)
13416         (soap-parse-operation): Add the current namespace to the element
13417         being created.
13418         (soap-resolve-references-for-xs-element)
13419         (soap-resolve-references-for-xs-simple-type)
13420         (soap-resolve-references-for-xs-complex-type)
13421         (soap-resolve-references-for-operation): Resolve the namespace to
13422         the namespace tag.
13423         (soap-make-wsdl): specify a namespace tag when creating the xsd
13424         and soapenc namespaces
13425         (soap-wsdl-resolve-references): don't update namespace tags in
13426         elements here
13427         (soap-parse-port-type): bind the urn: to soap-target-xmlns
13428         (soap-encode-body): don't add nil namespace tags to
13429         soap-encoded-namespaces
13431         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
13432         for registering the soap-inspect method.  Make debbugs tests pass.
13433         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
13434         type name, also skip string only nodes when decoding a structure.
13435         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
13436         types too.
13437         (soap-encode-body): Grab the header value from the param table.
13439         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
13440         New function.
13441         (soap-encode-xs-element): Don't encode nil value unless needed.
13443         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
13444         (soap-parse-binding): Parse the message parts required in the body.
13445         (soap-encode-body): Encode only the parts that are declared to be
13446         part of the body.
13448         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
13449         when writing out the tag.
13450         (soap-encode-body): Remove hack that inserts the xmlns in the
13451         element attributes list.
13453         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
13454         (soap-xs-parse-attribute): Default slot is set from the XML
13455         "fixed" attribute.
13456         (soap-encode-xs-complex-type-attributes): Encode any attributes
13457         that have a default value.  Also, don't put the xsi:nil attribute
13458         when the complex type has no content anyway.
13460         * lisp/net/soap-client.el (soap-well-known-xmlns):
13461         Add the xml namespace.
13462         (soap-local-xmlns): Start with the xml namespace.
13463         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
13464         (soap-make-xs-basic-types): More xsd types added.
13465         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
13466         Handle "language", "time", "date", "nonNegativeInteger".
13467         (soap-resolve-references-for-xs-element): Don't signal an error if
13468         the element does not have a type.
13469         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
13470         added stum for xsd:list.
13471         (soap-xs-add-union): Call soap-l2fq on all union members.
13472         (soap-xs-add-extension): Call soap-l2fq on the base member.
13473         (soap-resolve-references-for-xs-simple-type): Don't signal an
13474         error if the simple type has no base.
13475         (soap-resolve-references-for-xs-simple-type): Bugfix, call
13476         soap-wsdl-get on each type of the base.
13478         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
13479         Referenced type can be eiher a simple type or a basic type.
13480         (soap-xs-add-restriction)
13481         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
13482         (soap-make-xs-basic-types)
13483         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
13484         Add support for more XMLSchema basic types.
13485         (soap-current-file, soap-xmlschema-imports): New defvars.
13486         (soap-parse-schema): Add locations from xsd:import tags to
13487         `soap-xmlschema-imports'.
13488         (soap-wsdl): Make destructor private.
13489         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
13490         (soap-wsdl-add-alias): Check if we try to replace aliases.
13491         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
13492         (soap-fetch-xml): New defuns.
13493         (soap-load-wsdl): Update to load the WSDL from either a file or
13494         an url.
13495         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
13496         (soap-parse-wsdl): Process wsdl:import tags and imports from
13497         `soap-xmlschema-imports'.
13498         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
13499         symbol-name.
13500         (soap-l2fq): Make the name part always a string.
13501         (soap-name-p): New defun, used for name tests.
13503         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
13504         Supply sample values for choice types with a special tag.
13505         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
13506         Handle anonymous elements correctly.
13507         (soap-encode-value): Accept nodes that have no namespace tag.
13509         * lisp/net/soap-client.el (soap-invoke): Encode the string for
13510         `url-request-data' as UTF-8.  Fixes issue 16.
13512 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
13514         Update the new icon
13516         Move the E slightly to the right in the circle.
13518         * etc/images/icons/hicolor/128x128/apps/emacs.png:
13519         * etc/images/icons/hicolor/16x16/apps/emacs.png:
13520         * etc/images/icons/hicolor/24x24/apps/emacs.png:
13521         * etc/images/icons/hicolor/32x32/apps/emacs.png:
13522         * etc/images/icons/hicolor/48x48/apps/emacs.png:
13523         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
13524         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
13525         * nt/icons/emacs.ico: New icom update.
13527 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
13529         Avoid missing inline functions from lisp.h in TAGS
13531         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
13532         need to end each invocation with a semi-colon.
13533         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
13534         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
13535         inline functions defined immediately after each invocation, and
13536         also avoid tagging every invocation of these macros.
13538 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
13540         A better fix for bug#21739
13542         * src/buffer.c (set_update_modelines_for_buf): New function.
13543         (Fkill_buffer): Use it to set the global variable
13544         update_mode_lines if the killed buffer was displayed in some
13545         window.  Don't set windows_or_buffers_changed.  This is a better
13546         fix for bug#21739 than the previous fix, since it will cause only
13547         redisplay of mode lines, not of entire windows, but will still
13548         catch attention of x_consider_frame_title in xdisp.c, which
13549         redraws the frame title.
13551 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
13553         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
13554         tar.bz2 and tar.xz archives.
13556 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
13558         Fix infloop in redisplay introduced by a recent change
13560         * src/xdisp.c (redisplay_internal): Avoid inflooping when
13561         redisplaying the selected window sets the selected frame's
13562         redisplay flag.  (Bug#21745)
13564 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
13566         * lisp/emacs-lisp/thunk.el: Better documentation.
13568 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
13570         Replace the old icon for Windows and Mac OSX
13572         * nt/icons/emacs.ico:
13573         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
13574         Use the new icons.
13576 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
13578         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
13579         `load-path' should contain only directory names.
13581 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
13583         New library thunk.el
13585         thunk.el is extracted from stream.el in ELPA, with additional tests.
13587         * lisp/emacs-lisp/thunk.el: New file.
13588         * test/automated/thunk-tests.el: New file.
13589         * etc/NEWS: Add information about thunk.el
13591 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
13593         Fix bug#21669
13595         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
13596         calling low-level functions.
13598         * test/automated/file-notify-tests.el (file-notify--test-timeout):
13599         Decrase to 6 seconds for remote directories.
13600         (file-notify-test02-events): Expect different number of
13601         `attribute-changed' events for the local and remote cases.  Apply
13602         short delays between the operations, in order to receive all
13603         events in the remote case.  Combine `attribute-change' tests.
13604         (Bug#21669)
13606 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
13608         Decode the HTML source when displaying it in EWW
13610         * lisp/net/eww.el (eww-view-source): Decode the HTML source
13611         according to its headers.
13613 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
13615         New default icon
13617         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
13618         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
13619         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
13620         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
13621         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
13622         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
13623         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
13624         Move the old logo files to emacs23.*.
13625         * etc/images/icons/hicolor/128x128/apps/emacs.png:
13626         * etc/images/icons/hicolor/16x16/apps/emacs.png:
13627         * etc/images/icons/hicolor/24x24/apps/emacs.png:
13628         * etc/images/icons/hicolor/32x32/apps/emacs.png:
13629         * etc/images/icons/hicolor/48x48/apps/emacs.png:
13630         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
13631         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
13632         New files.
13633         * etc/images/icons/README: Update the copyright information.
13635 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
13637         Fix redisplay of frame title when current buffer is killed
13639         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
13640         non-zero value, to redisplay more than just the affected windows.
13641         (Bug#21739)
13643 2015-10-23  Anders Lindgren  <andlind@gmail.com>
13645         NextStep maximization and NSTRACE rewrite
13647         Full-height, full-width, and maximized windows now cover the
13648         entire screen (except the menu bar), including the part where the
13649         system dock is placed.  The system zoom animation is no longer
13650         used.
13652         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
13653         original size.
13655         * src/nsterm.m (ns_menu_bar_height): New function, return height of
13656         the menu bar, or 0 when it's hidden.
13657         (constrain_frame_rect): New function for constraining a frame.
13658         (ns_constrain_all_frames): Set frame size explicitly rather than
13659         relying on the system doing it for us by writing back the current
13660         frame size.
13661         (windowWillUseStandardFrame): Register non-maximized width or
13662         height as new user size.  When entering full width or height,
13663         the other size component is taken from the user size.
13664         (fullscreenState): New method for accessing the fullscreen state.
13665         (constrainFrameRect): Restrict frame to be placed under the menu bar,
13666         if present.  The old version, sometimes, restricted the height of a
13667         frame to the screen, this version never does this.
13668         (zoom): Perform zoom by setting the frame to the full size of the
13669         screen (minus the menu bar).  The default system function, with the
13670         zoom animation, is no longer used, as the final frame size doesn't
13671         cover the entire screen.
13673         Rework how to constrain resizing to the character grid.  The old
13674         system used "resizeIncrements" in NSWindows.  However, once a frame
13675         was resized so that it was not aligned to the text grid, it
13676         remained unaligned even after a resize.  In addition, it conflicted
13677         when resizing a fullheight window.
13679         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
13680         unless when pixelwise frame resizing is enabled.
13681         (updateFrameSize, initFrameFromEmacs)
13682         (toggleFullScreen, handleFS): Don't set resizeIncrements.
13684         Redesign the NS trace system.  The call structure is represented
13685         using indentations and vertical lines.  The NSTRACE macro accepts
13686         printf-style arguments.  New macros for printing various
13687         information.
13689         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
13690         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
13691         block (typically a function), accept printf-style arguments.
13692         (NSTRACE_MSG): Macro for extra information, accepts
13693         printf-style arguments.
13694         (NSTRACE_what): Macros for printing various types.
13695         (NSTRACE_FMT_what): Macro with printf format string snippets.
13696         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
13697         corresponds to NSTRACE_FMT_what.
13698         (NSTRACE_RETURN): Macro to print return value, accept
13699         printf-style arguments.
13700         (NSTRACE_RETURN_what): Macros to print return value for
13701         various types.
13703         * src/nsterm.m: Remove old NSTRACE macro
13704         * src/nsterm.m (nstrace_num): Trace counter.
13705         (nstrace_depth): Current call depth.
13706         (nstrace_leave): NSTRACE support function, called when the
13707         local variable "nstrace_enabled" goes out of scope using the
13708         "cleanup" extension.
13709         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
13710         (constrain_frame_rect, ns_constrain_all_frames)
13711         (ns_update_auto_hide_menu_bar, ns_update_begin)
13712         (ns_update_window_begin, update_window_end, ns_update_end)
13713         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
13714         (ns_frame_rehighlight, x_make_frame_visible)
13715         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
13716         (x_destroy_window, x_set_offset, x_set_window_size)
13717         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
13718         (ns_defined_color, frame_set_mouse_pixel_position)
13719         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
13720         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
13721         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
13722         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
13723         (dumpcursor, ns_draw_vertical_window_border)
13724         (ns_draw_window_divider, ns_draw_relief)
13725         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
13726         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
13727         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
13728         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
13729         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
13730         (ns_create_terminal, ns_term_init, sendEvent)
13731         (applicationDidFinishLaunching, applicationDidBecomeActive)
13732         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
13733         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
13734         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
13735         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
13736         (mouse_autoselect_window, in_window, mouseDragged)
13737         (rightMouseDragged, otherMouseDragged, windowShouldClose)
13738         (updateFrameSize, windowWillResize, windowDidResize)
13739         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
13740         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
13741         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
13742         (windowDidEnterFullScreen, windowWillExitFullScreen)
13743         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
13744         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
13745         (draggingEntered, performDragOperation, validRequestorForSendType)
13746         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
13747         (EmacsScroller_initFrame, EmacsScroller_setFrame)
13748         (EmacsScroller_dealloc, condemn, reprieve, judge)
13749         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
13750         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
13752         * src/nsfns.m: Remove old NSTRACE macro
13753         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
13754         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
13755         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
13757         * src/nsimage.m: Remove old NSTRACE macro
13758         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
13759         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
13761         * src/nsmenu.m: Remove old NSTRACE macro
13762         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
13763         Use new trace system.
13765 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
13767         No need to use eval-and-compile
13769         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
13770         autoload epg functions.
13772 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
13774         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
13776         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
13777         epg-context-set-passphrase-callback, epg-decrypt-string, and
13778         epg-encrypt-string; require epg when compiling for the setf-method
13779         for epg-context-armor. (bug#21724)
13781 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
13783         Include file cleanup for w32 files in src directory
13785         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
13786         fontset.h, blockinput.h.
13787         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
13788         charset.h, fontset.h.
13789         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
13790         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
13791         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
13792         in an ifdef-ed away block.
13793         Include fcntl.h for CYGWIN.
13794         (set_frame_param): Remove unused function.
13795         * src/w32select.c: Don't include charset.h and composite.h.
13796         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
13797         due to pointer signedness mismatches.
13798         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
13799         due to pointer signedness mismatches.
13800         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
13801         process.h, dispextern.h.
13802         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
13803         (Fw32_application_type): Avoid compiler warnings due to pointer
13804         signedness mismatches.
13805         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
13806         character.h, charset.h, dispextern.h.
13807         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
13808         to pointer signedness mismatches.
13809         * src/w32inevt.c: Don't include dispextern.h, window.h,
13810         termhooks.h, w32heap.h.
13811         * src/w32font.c: Don't include dispextern.h, character.h,
13812         charset.h, fontset.h, font.h.
13813         (intern_font_name, add_font_entity_to_list)
13814         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
13815         (list_all_matching_fonts): Avoid compiler warnings due to pointer
13816         signedness mismatches.
13817         * src/w32fns.c: Don't include character.h, intervals.h,
13818         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
13819         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
13820         (w32_color_map_lookup, add_system_logical_colors_to_map)
13821         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
13822         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
13823         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
13824         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
13825         compiler warnings, mainly due to pointer signedness mismatches.
13826         (unwind_create_frame_1): Remove unused function.
13827         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
13828         window.h, termhooks.h, dispextern.h.
13829         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
13830         signedness mismatch.
13831         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
13832         w32heap.h.
13834 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
13836         Improve doc-view wrt. auto-revert-mode
13838         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
13839         is corrupted (bug#21729).
13840         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
13842 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
13844         Describe dired-do-compress-to in the manual
13846         * etc/NEWS: Update.
13848         * lisp/dired-aux.el: Fix typo.
13850         * doc/emacs/dired.texi: Add entry.
13852 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
13854         Further fix for proper locale handling in tramp-gvfs.el
13856         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
13857         Just suppress LC_MESSAGES locale category settings.
13859 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
13861         New lispref section “Security Considerations”
13863         This attempts to document some of the issues recently discussed
13864         on emacs-devel, and to indicate other such issues.  The section
13865         could be a lot longer.
13866         * doc/lispref/os.texi (Security Considerations):
13867         New node.
13868         * doc/lispref/elisp.texi (Top):
13869         * doc/lispref/processes.texi (Shell Arguments):
13870         * lisp/subr.el (shell-quote-argument):
13871         * src/callproc.c (syms_of_callproc):
13872         Reference it.
13874 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
13876         Merge from gnulib
13878         This incorporates:
13879         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
13880         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
13881         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
13882         Copy from gnulib.
13884 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
13886         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
13887         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
13889 2015-10-21  Ken Brown  <kbrown@cornell.edu>
13891         Further include-file cleanup
13893         * src/sheap.c: Include stdlib.h.
13894         * src/unexcw.c: Include string.h.
13896 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
13898         Fix logic in 'server-kill-emacs-query-function'
13900         * lisp/server.el (server-kill-emacs-query-function): Correct the
13901         logic that controls whether the user is asked for confirmation.
13902         (Bug#21723)
13904 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
13906         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
13907         (isearch--lax-regexp-function-p): New function.
13909 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
13911         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
13912         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
13913         around `isearch-regexp-function'.
13915 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
13917         * lisp/isearch.el: Rename word search to regexp-function search.
13918         `isearch-word' went well beyond its original purpose, and the name
13919         no longer makes sense.  It is now called
13920         `isearch-regexp-function', and its value should always be a function
13921         that converts a string to a regexp (though setting it to t is still
13922         supported for now).
13923         (isearch-word): Make obsolete.
13924         (isearch-regexp-function): New variable.
13925         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
13926         (with-isearch-suspended, isearch-toggle-regexp)
13927         (isearch-toggle-word, isearch-toggle-symbol)
13928         (isearch-toggle-character-fold, isearch-query-replace)
13929         (isearch-occur, isearch-highlight-regexp)
13930         (isearch-search-and-update, isearch-message-prefix)
13931         (isearch-search-fun-default, isearch-search)
13932         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
13933         Use it.
13934         (isearch-lazy-highlight-regexp-function): New var.
13935         (isearch-lazy-highlight-word): Make obsolete.
13936         (isearch--describe-regexp-mode): New function.
13937         (isearch--describe-word-mode): Make obsolete.
13939         * lisp/info.el (Info-isearch-search):
13940         * lisp/replace.el (replace-search, replace-highlight):
13941         * lisp/obsolete/longlines.el (longlines-search-function):
13942         * lisp/hexl.el (hexl-isearch-search-function):
13943         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
13944         Use the new var.
13946 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
13948         Add dired-do-compress-to command bound to "c"
13950         * lisp/dired-aux.el (dired-shell-command): Use the caller's
13951           `default-directory', return the result of `process-file'.
13952         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
13953         used by default.
13954         (dired-compress-files-alist): New defvar.
13955         (dired-do-compress-to): New command.
13957         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
13958         (dired-do-compress-to): Add an autoload entry.
13960         * etc/NEWS: Add two entries.
13962 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
13964         Make RefTeX work with LaTeX subfiles package
13966         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
13967         document class argument as master file for referencing purposes.
13969 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
13971         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
13973 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
13975         Include-file cleanup for src directory
13977         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
13978         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
13979         but does not include it directly.  As a general rule, a source
13980         file should include foo.h if it needs the interfaces that foo.h
13981         defines.
13982         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
13983         systime.h.
13984         * src/atimer.c: Don’t include blockinput.h.
13985         * src/buffer.c: Include coding.h, systime.h.  Don’t include
13986         keyboard.h, coding.h.
13987         * src/callint.c: Don’t include commands.h, keymap.h.
13988         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
13989         systty.h, termhooks.h.
13990         * src/casetab.c: Don’t include character.h.
13991         * src/category.c: Don’t include charset.h, keymap.h.
13992         * src/ccl.h: Don’t include character.h.
13993         * src/character.c: Don’t include charset.h.
13994         * src/charset.c: Don’t include disptab.h.
13995         * src/chartab.c: Don’t include ccl.h.
13996         * src/cm.c: Don’t include frame.h, termhooks.h.
13997         * src/cmds.c: Don’t include window.h, dispextern.h.
13998         * src/coding.c: Don’t include window.h, frame.h.
13999         * src/composite.c: Include composite.h.  Don’t include window.h,
14000         font.h.
14001         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
14002         * src/dbusbind.c: Don’t include frame.h.
14003         * src/decompress.c: Don’t include character.h.
14004         * src/dired.c: Don’t include character.h, commands.h, charset.h.
14005         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
14006         process.h, timespec.h.  Include systime.h.
14007         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
14008         * src/editfns.c: Include composite.h.  Don’t include frame.h.
14009         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
14010         commands.h, systty.h..
14011         * src/fileio.c: Don’t include intervals.h, dispextern.h.
14012         Include composite.h.
14013         * src/filelock.c: Don’t include character.h, systime.h.
14014         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
14015         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
14016         * src/font.c: Include termhooks.h.
14017         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
14018         struct composition_it, struct face, struct glyph_string.
14019         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
14020         intervals.h, window.h, termhooks.h.
14021         * src/frame.c: Don’t include character.h, commands.h, font.h.
14022         * src/frame.h: Don’t include dispextern.h.
14023         * src/fringe.c: Don’t include character.h.
14024         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
14025         character.h, charset.h, fontset.h.
14026         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
14027         fontset.h.
14028         * src/ftxfont.c: Don’t include dispextern.h, character.h,
14029         charset.h, fontset.h.
14030         * src/gfilenotify.c: Don’t include frame.h, process.h.
14031         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
14032         Don’t include syssignal.h, buffer.h, charset.h, font.h.
14033         * src/gtkutil.h: Don’t include frame.h.
14034         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
14035         Don’t include character.h.
14036         * src/indent.c: Don’t include keyboard.h, termchar.h.
14037         * src/inotify.c: Don’t include character.h, frame.h.
14038         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
14039         * src/intervals.c: Don’t include character.h, keyboard.h.
14040         * src/intervals.h: Don’t include dispextern.h, composite.h.
14041         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
14042         Include coding.h.
14043         * src/keyboard.h: Don’t incldue systime.h.
14044         * src/keymap.c: Don’t include charset.h, frame.h.
14045         * src/lread.c: Include dispextern.h and systime.h.
14046         Don’t include frame.h.  Include systime.h.
14047         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
14048         * src/menu.c: Include character.h, coding.h.  Don’t include
14049         dispextern.h.
14050         * src/menu.h: Don’t include systime.h.
14051         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
14052         intervals.h, termhooks.h.
14053         * src/print.c: Include coding.h.  Don’t include keyboard.h,
14054         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
14055         Add forward decl of struct terminal.
14056         * src/process.c: Don’t include termhooks.h, commands.h,
14057         dispextern.h, composite.h.
14058         * src/region-cache.c: Don’t include character.h.
14059         * src/scroll.c: Don’t include keyboard.h, window.h.
14060         * src/search.c: Don’t include category.h, commands.h.
14061         * src/sound.c: Don’t include dispextern.h.
14062         * src/syntax.c: Don’t include command.h, keymap.h.
14063         * src/sysdep.c: Don’t include window.h, dispextern.h.
14064         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
14065         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
14066         * src/terminal.c: Include character.h.
14067         Don’t include charset.h, coding.h.
14068         * src/textprop.c: Don’t include character.h.
14069         * src/undo.c: Don’t include character.h, commands.h, window.h.
14070         * src/unexsol.c: Don’t include character.h, charset.h.
14071         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
14072         window.h, dispextern.h, blockinput.h, character.h, font.h.
14073         * src/widgetprv.h: Don’t include widget.h.
14074         * src/window.c: Don’t include character.h, menu.h, intervals.h.
14075         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
14076         macros.h, process.h.
14077         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
14078         intervals.h.
14079         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
14080         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
14081         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
14082         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
14083         * src/xgselect.c: Don’t include timespec.h, frame.h.
14084         Include systime.h.
14085         * src/xgselect.h: Don’t include time.h.
14086         Use a forward decl to struct timespec instead.
14087         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
14088         dispextern.h.  Include systime.h.
14089         * src/xml.c: Don’t include character.h.
14090         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
14091         * src/xselect.c: Don’t include dispextern.h, character.h,
14092         buffer.h, process.h.
14093         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
14094         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
14095         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
14097 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
14099         (/ N) now returns the reciprocal of N
14101         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
14102         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
14103         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
14104         (color-xyz-to-srgb, color-xyz-to-lab):
14105         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
14106         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
14107         (shr-color-hsl-to-rgb-fractions):
14108         Exploit the change to simplify the code a bit.
14109         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
14110         Don’t complain about single-argument calls to ‘/’.
14111         * src/data.c (arith_driver, float_arith_driver):
14112         Implement the change.
14114 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
14116         Call vc-dir-refresh after stash operations
14118         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
14119         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
14121         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
14122         since it can be abbreviated (as returned by vc-find-root).
14124 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
14126         * lisp/vc/vc-svn.el:
14127         * lisp/vc/vc-mtn.el:
14128         * lisp/vc/vc-hg.el:
14129         * lisp/vc/vc-cvs.el:
14130         * lisp/vc/vc-git.el:
14131         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
14132         Its usages have been replaced with vc-run-delayed.
14134 2015-10-20  Dima Kogan  <dima@secretsauce.net>
14136         Fix memory leak in fontset handling
14138         * src/font.c (copy_font_spec): Make a deep copy of the input
14139         argument FONT.  (Bug#21651)
14141 2015-10-20  Michael Sperber  <mike@xemacs.org>
14143         * lisp/gnus/mailcap.el (mailcap-mime-data):
14144         Conditonalize `doc-view-mode', which does not exist on XEmacs.
14146 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
14148         Update the way directories are compressed
14150         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
14151         for *.tar.gz decompression to use a pipe.
14152         Add an entry for the default directory compression (to *.tar.g).
14153         (dired-compress-file): Update.
14155         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
14157 2015-10-20  Michael Sperber  <mike@xemacs.org>
14159         Unbreak `group' option for `mail-sources'
14161         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
14162         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
14163         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
14165 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
14167         New function seq-position
14169         * lisp/emacs-lisp/seq.el (seq-position): New function.
14170         * test/automated/seq-tests.el: New tests for seq-position.
14171         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
14173 2015-10-19  Ken Brown  <kbrown@cornell.edu>
14175         Enable --with-wide-int build on 32-bit Cygwin
14177         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
14178         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
14180 2015-10-19  Glenn Morris  <rgm@gnu.org>
14182         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
14184 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
14186         Resurrect image loading under auto-image-file-mode
14188         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
14189         'openp' specially.  This special case was lost in the changes on
14190         2015-08-18.  (Bug#21685)
14192 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
14194         Fix return value of 'set-file-extended-attributes'
14196         * lisp/files.el (set-file-extended-attributes): Return non-nil
14197         when setting either ACLs or SELinux context succeeds.  Document
14198         the return value.  (Bug#21699)
14200         * doc/lispref/files.texi (Changing Files): Document the return
14201         value of set-file-extended-attributes.
14203 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
14205         Improve documentation of functions that change files
14207         * doc/lispref/files.texi (Changing Files): Document that these
14208         functions signal an error on failure.
14210 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
14212         Fix doc string of 'shell-quote-argument'
14214         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
14216 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
14218         Some minor Tramp changes
14220         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
14222         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
14223         Expand `tramp-auto-save-directory'.
14225 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
14227         Minor edits in Tramp
14229         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
14230         Declare it.
14232         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
14233         Remove declaration.
14235 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
14237         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
14239 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
14241         Avoid crashes when redisplayng a window changes faces or fonts
14243         * src/xdisp.c (redisplay_internal): If redisplaying the selected
14244         window or one of the frames turns on the frame's 'redisplay' flag,
14245         redisplay again.  (Bug#21428)
14247         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
14249 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
14251         Solve timimg issues in file-notify-tests.el
14253         * test/automated/file-notify-tests.el (file-notify-test02-events):
14254         Rectify `attribute-change' tests.  There are timing issues with
14255         gfilenotify.  (Bug#21669)
14257 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
14259         Fix quoting of data within htmlfontify doc
14261         * doc/misc/htmlfontify.texi (Data Structures, Customization):
14262         Fix quoting of data structures.  A Lisp quote is needed only
14263         when data appears within Lisp code.
14265 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
14267         * lisp/emacs-lisp/package.el: Reload archive-contents if
14268         priorities change.
14269         (package--old-archive-priorities): New variable.
14270         (package-read-all-archive-contents, package-menu--refresh): Use it
14271         to decide when the `package-archive-contents' needs to be read
14272         again.
14274 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
14276         Make src headers idempotent and standalone
14278         Redo src/*.h so that each include file is idempotent (that is, can
14279         be included multiple times with the latter inclusions having no
14280         effect) and standalone (that is, can be included by itself,
14281         with no include file other than config.h needed as a prerequisite).
14282         This is standard practice in GNU programs nowadays.
14283         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
14284         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
14285         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
14286         * src/regex.h [emacs]:
14287         * src/syntax.h, src/systty.h, src/termhooks.h:
14288         Include lisp.h, for Lisp_Object.
14289         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
14290         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
14291         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
14292         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
14293         * src/termopts.h, src/tparam.h, src/unexec.h:
14294         Protect against multiple inclusion.
14295         * src/buffer.h: Include character.h, for STRING_CHAR.
14296         * src/emacsgtkfixed.h (struct frame):
14297         * src/fontset.h (struct face):
14298         * src/region-cache.h (struct buffer):
14299         * src/termhooks.h (struct glyph):
14300         * src/xsettings.h (struct x_display_info):
14301         Add possibly-forward decl.
14302         * src/syntax.h: Include buffer.h, for BVAR.
14303         * src/sysselect.h: Include lisp.h, for eassume.
14304         * src/termchar.h: Include <stdio.h>, for FILE.
14305         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
14306         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
14308 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
14310         Handle symlink targets containing spaces in tramp-gvfs.el
14312         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
14313         Handle symlink targets containing spaces.
14315 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
14317         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
14319         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
14320         same reason that `load-path' shouldn't.  Setting it via the customize
14321         interface is a trap for the user.
14323         Installed themes commonly add themselves to this variable, which means
14324         its value is not fit for being saved (it will permanently remember dirs
14325         that don't exist anymore).
14327         This is aggravated by the fact that Emacs always applies the `user'
14328         theme on top of any theme that's loaded, since this will apply the old
14329         variable value and remove any new directories that had been recently
14330         added by themes themselves.
14332         Not to mention, we already have `custom-theme-directory', which is safe
14333         to customize.
14335 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
14337         * lisp/mpc.el: Rename the new toggling commands.
14338         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
14339         (mpc-toggle-shuffle): Add "-toggle" in the name.
14341 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
14343         Improve the doc string of 'completion-boundaries'
14345         * lisp/minibuffer.el (completion-boundaries): Rename the argument
14346         TABLE to COLLECTION, for consistency with other high-level
14347         completion functions.  Document how COLLECTION is called if it
14348         is a function.  (Bug#21644)
14350 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
14352         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
14354 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
14356         Make dired-do-compress work for *.zip files
14358         * lisp/dired-aux.el (dired-check-process): Transform the top-level
14359           comment into a docstring.
14360         (dired-shell-command): New command.  This mirrors
14361         `dired-check-process', but is more user-friendly for passing
14362         arguments.
14363         (dired-compress-file-suffixes): Allow to specify the command switches
14364         along with input (%i) and output (%o) inside the PROGRAM part.
14365         Add an entry for *.zip files, and update the entry for *.tar.gz files
14366         to the new style.  Update the docstring.
14367         (dired-compress-file): When PROGRAM matches %i or %o, use the new
14368         logic.
14369         (dired-update-file-line): Avoid an error when at end of buffer.
14371         Fixes bug#21637.
14373 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
14375         Minor improvement in documentation of internals
14377         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
14379 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
14381         Improve documentation of COLLECTION in completion functions
14383         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
14384         cross-reference to "Programmed Completion".
14386         * src/minibuf.c (Fcompleting_read): Improve the doc string.
14387         (Bug#21644)
14389 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
14391         Add more release info to etc/HISTORY
14393         * etc/HISTORY: Add more release information about 19.x and 20.x
14394         versions.
14396 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
14398         New file etc/HISTORY
14400         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
14401         * etc/HISTORY: New file.
14402         * etc/NEWS: Mention it.
14404 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
14406         js-mode: Don't misindent generator methods
14408         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
14409         generator methods from multiplication operator
14410         (https://github.com/mooz/js2-mode/issues/275).
14412 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
14414         Fix animation timeout delay calculation
14416         * lisp/image.el (image-animate-timeout):
14417         Don’t assume speed is floating-point.
14419 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
14421         Add commands for controlling MPD modes
14423         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
14424         (mpc-cmd-single): New functions.
14425         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
14426         (mpc-mode-menu): Add new commands as menu items.
14428 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
14430         Refer to `(elisp)Basic Completion' in completing-read docstring
14432         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
14433         Completion' in the docstring (bug#21644).
14435 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
14437         * lisp/mpc.el (mpc-format): Always push form to pred
14439 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
14441         Spelling fixes
14443         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
14444         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
14445         Fix misspelling of nonexistent file name.
14447 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
14449         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
14451 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
14453         Some editing fixes in Tramp
14455         * lisp/net/tramp-gvfs.el:
14456         * doc/misc/tramp.texi: "customer option" -> "custom option".
14458         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
14460 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
14462         Use proper localization in tramp-gvfs.el
14464         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
14465         Suppress localized settings in order to proper parse gfvs output.
14467 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
14469         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
14470         Quote argument in proper order.  (Bug#21562)
14472 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
14474         Fix typos in docstrings
14476         * lisp/emacs-lisp/map.el:
14477         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
14478           macros.
14480 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
14482         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
14484 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
14486         Make dired-jump work with tar-subfile-mode
14488         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
14489           emitting an error, switch to `tar-superior-buffer'.
14491 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
14493         * .gitignore: Add build-aux/ar-lib.
14495 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
14497         Better docstrings in seq.el and map.el
14499         * lisp/emacs-lisp/map.el:
14500         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
14502 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
14504         Merge from gnulib
14506         This incorporates:
14507         2015-10-13 binary-io, u64, unistd: port to strict C
14508         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
14509         2015-09-25 c-ctype: port better to z/OS EBCDIC
14510         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
14511         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
14512         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
14513         Copy from gnulib.
14515 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
14517         Take XPNTR private
14519         * src/alloc.c (PURE_POINTER_P): Remove.
14520         All uses replaced with PURE_P.
14521         (XPNTR_OR_SYMBOL_OFFSET): New function.
14522         (XPNTR): Move here from lisp.h.
14523         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
14524         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
14525         Remove unnecessary cast.
14526         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
14527         to avoid an unnecessary runtime test for symbols.
14528         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
14529         Only alloc.c needs XPNTR now.
14531 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
14533         Add MPC play/pause command
14535         * lisp/mpc.el (mpc-toggle-play): New command.
14536         (mpc-mode-map): Bind it to "s".
14537         (mpc-mode-menu): Add corresponding menu item.
14539 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
14541         Add bindings and menu items for prev and next tracks
14543         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
14544         "<" to mpc-prev.
14545         (mpc-mode-menu): Add corresponding menu items
14547 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
14549         Reduce face-related consing during frame creation.
14551         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
14552         attribute list once.
14553         (face-spec-reset-face): Use it instead of building the list.
14555 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
14557         Do process ConfigureNotify events indicating size changes.
14559         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
14560         events don't have the same size, process each one.
14562 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
14564         Derive mpc-mode from special-mode
14566         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
14567         (mpc-mode): Derive from special mode.
14568         (mpc-songs-mode-map): Don't set parent keymap.
14570 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
14572         Fix error messages for when covers are not found.
14574         The last change to mpc-format let the binding to file call
14575         mpc-file-local-copy with nil argument.  Instead, employ if-let here
14576         so nil bindings don't result in needless computation and errors.
14577         * lisp/mpc.el: Require 'subr-x at compile time.
14578         * lisp/mpc.el (mpc-format): Use if-let.
14580 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
14582         Make dired-do-compress work for *.tar.gz files
14584         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
14585           "tar -zxvf" to *.tar.gz; update docstring.
14587         (dired-compress-file): Allow to specify switches after the command in
14588         `dired-compress-file-suffixes'.
14590 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
14592         Make dired-do-compress work for directories
14594         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
14595           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
14596         Also convert the top comment into a docstring.
14598 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
14600         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
14602         ... since it might come straight from the memoizing table.
14604 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
14606         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
14608 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
14610         Use special-mode in eww list modes
14612         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
14613         (eww-buffers-mode): Derive from special-mode and remove redundant
14614         setting of buffer-read-only.
14615         (eww-mode-map): Remove redundant keymap parent setting.
14616         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
14617         Remove redundant keymap suppressions and mappings.
14619 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
14621         Allow setting frame pixel sizes from frame parameters (Bug#21415)
14623         Also fix some misfeatures in frame (re-)sizing code, add more
14624         debugging information and remove some dead code.
14626         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
14627         parameter names when setting `frame-size-history'.
14628         (frame--size-history): New function.
14630         * src/frame.c (frame_inhibit_resize): If frame has not been made
14631         yet, return t if inhibit_horizontal_resize or
14632         inhibit_vertical_resize bit have been set.
14633         (adjust_frame_size): Simplify.
14634         (make_frame): Initialize inhibit_horizontal_resize,
14635         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
14636         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
14637         inhibit_vertical_resize slots.
14638         (x_set_frame_parameters): Handle `text-pixels' specification for
14639         width and height parameters.  Don't consider new_height or
14640         new_width changes.  Call adjust_frame_size instead of
14641         Fset_frame_size.
14642         (x_figure_window_size): Two new arguments x_width and y_width
14643         returning frame's figures width and height.  Calculate tool bar
14644         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
14645         Handle `text-pixels' specification for width and height
14646         parameters.
14647         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
14648         (Qx_set_window_size_1, Qx_set_window_size_2)
14649         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
14650         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
14651         (Qfree_frame_menubar_2): New symbols.
14652         * src/frame.h (structure frame): New booleans
14653         tool_bar_redisplayed, tool_bar_resized,
14654         inhibit_horizontal_resize, inhibit_vertical_resize.
14655         (x_figure_window_size): Update external declaration.
14656         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
14657         calling gtk_window_resize.
14658         (update_frame_tool_bar): Make inhibiting of frame resizing more
14659         discriminative.  Set tool_bar_resized bit.
14660         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
14661         resizing more discriminative.  Call adjust_frame_size instead of
14662         x_set_window_size.
14663         (Fx_create_frame): Handle x_width and x_height if
14664         set by x_figure_window_size.
14665         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
14666         subtract 3 from tool bar height.
14667         (x_set_window_size): Add frame_size_history_add call.
14668         (x_new_font): Call adjust_frame_size instead of
14669         x_set_window_size.
14670         * src/w32fns.c (x_change_tool_bar_height): Reset
14671         tool_bar_redisplayed and tool_bar_resized bits when adding tool
14672         bar.  Make inhibiting of frame resizing more discriminative.
14673         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
14674         (Fx_create_frame): Handle x_width and x_height if set by
14675         x_figure_window_size.  Set size hints before adjusting frame size.
14676         (x_create_tip_frame): Adjust x_figure_window_size call.
14677         * src/w32term.c (x_set_window_size): Add frame_size_history_add
14678         call.
14679         * src/widget.c (set_frame_size): Remove dead code.  Add
14680         frame_size_history_add call.  When frame_resize_pixelwise is t
14681         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
14682         pixel_width and pixel_height.
14683         (update_various_frame_slots): Remove dead code.
14684         (EmacsFrameResize): Add more information in
14685         frame_size_history_add call.
14686         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
14687         is not set.
14688         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
14689         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
14690         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
14691         tool_bar_resized bits when adding tool bar.  Make inhibiting of
14692         frame resizing more discriminative.
14693         (Fx_create_frame): Handle x_width and x_height if set by
14694         x_figure_window_size.  Set size hints before adjusting frame size.
14695         (x_create_tip_frame): Adjust x_figure_window_size call.
14696         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
14697         (set_frame_menubar): On Lucid never add core-border-width to
14698         avoid that adding XtNinternalBorderWidth adds it again.
14699         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
14700         * src/xterm.c (x_new_font): In non-toolkit case handle size
14701         change of menu bar.
14702         (x_set_window_size_1): Fix calls to frame_size_history_add.
14703         (x_wm_set_size_hint): Remove dead code.  Set
14704         size_hints.min_width and size_hints.min_height to base_width and
14705         base_height.
14707 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
14709         * test/automated/file-notify-tests.el (file-notify--test-timeout):
14710         Add docstring.  Increase to 10 seconds for remote
14711         directories.  (Bug#21669)
14713 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
14715         Unmacroize ebrowse.c and etags.c a bit
14717         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
14718         (streq, filename_eq, set_flag, has_flag): Now inline functions.
14719         (set_flag): First arg is now an address, not an lvalue.
14720         All callers changed.
14721         (filename_eq, set_flag, has_flag):
14722         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
14723         All callers changed.
14724         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
14725         Now inline functions.  Remove asserts that are unnecessary these
14726         days (and in some cases were too-generous anyway).
14728 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
14730         Use highlight for current items
14732         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
14733         Apply highlight face instead of region face.
14735 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
14737         Search for more cover image names in MPC
14739         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
14740         case insensitively
14742 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
14744         Remove or comment out unused variables
14746         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
14747         nontext_cursor, mode_cursor, hand_cursor and count.
14748         (x_change_tool_bar_height): Remove variable old_text_height.
14749         (deliver_wm_chars): Remove variable strip_Alt.
14750         (Fw32_shell_execute): Remove variable document_a.
14751         (Fw32_frame_geometry): Remove variable fullboth.
14752         * src/w32term.c (w32_setup_relief_color): Comment out variable
14753         w32_display_info.
14754         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
14755         (w32_read_socket): Comment out variables rows, columns.
14756         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
14758 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
14760         * src/w32proc.c (sys_select): Fix bitwise test.
14762 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
14764         Minor typo corrections in doc strings
14766         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
14767         Doc fixes.
14769 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
14771         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
14773 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
14775         Attempt to avoid crashes in plist-member
14777         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
14778         and a call to XCDR.  (Bug#21655)
14780 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
14782         * lisp/select.el (gui-get-primary-selection): In
14783         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
14785 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
14787         Support RTF in doc-view
14789         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
14791 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
14793         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
14795 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
14797         Replace the usage of an obsolete function in auth-source.el
14799         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
14800         Replace an usage of `epg-context-set-armor' with `setf'.
14802 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
14804         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
14806 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
14808         Have calc-yank recognize numbers in different bases.
14810         * lisp/calc/calc-yank.el (math-number-regexp): New function.
14811         (calc-yank): Use `math-number-regexp' to recognize numbers.
14813 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
14815         Handle an opaque-move X11 window manager operation more efficiently
14817         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
14818         followed by more ConfigureNotify events for the same window, process
14819         only the last one.
14821 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
14823         Fix cursor setting for tip frame; re-enable cursor generation
14825         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
14826         attributes sent when creating the new X window.  Don't skip setting
14827         the pointerColor parameter.
14829 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
14831         Rewrite x_set_mouse_color to sync less
14833         We can track serial numbers of X requests and correlate error events
14834         with the associated requests.  This way we can identify errors for
14835         specific calls without having to use XSync after every one.
14837         * src/xfns.c (enum mouse_cursor): New type.
14838         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
14839         (mouse_cursor_types): New array listing the Lisp variables and default
14840         cursor appearances for each cursor type.
14841         (x_set_mouse_color_handler): New function; checks error event serial
14842         number against submitted requests.
14843         (x_set_mouse_color): Updated to use the new error handler callback,
14844         and to be more table-driven, to simplify repetitious code.
14846 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
14848         Add x_catch_errors_with_handler
14850         * src/xterm.c (struct x_error_message_stack): Add new fields for a
14851         callback function and associated data pointer.
14852         (x_error_catcher): If the callback function is set, call it after
14853         saving the error message string.
14854         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
14855         accepts a callback function and data pointer.
14856         (x_catch_errors): Now a wrapper function.
14857         * src/xterm.h (x_special_error_handler): New typedef.
14858         (x_catch_errors_with_handler): Declare.
14860 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
14862         Introduce x_uncatch_errors_after_check to reduce XSync calls
14864         Both x_had_errors_p and x_check_errors call XSync, so if they're
14865         immediately followed by x_uncatch_errors, its XSync call will be
14866         redundant, resulting in a wasted round trip to the X server.
14868         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
14869         x_uncatch_errors without the XSync call.
14870         (XTmouse_position, x_wm_supports):
14871         * src/xfns.c (x_set_mouse_color):
14872         * src/xmenu.c (Fx_menu_bar_open_internal):
14873         * src/xselect.c (x_own_selection, x_get_foreign_selection):
14874         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
14875         * src/xterm.h (x_uncatch_errors_after_check): Declare.
14877 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
14879         Document the optional prefix to `calc-yank'
14881         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
14882         prefix to `calc-yank'.
14883         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
14884         the Calc buffer are yanked back unchanged.
14886 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
14888         * lisp/calendar/calendar.el: Display buffer before executing body.
14890         In each use of this macro, the modeline is derived from a window width
14891         calculation, which will be wrong if (display-buffer) splits the window
14892         horizontally.
14894 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
14896         Use ‘echo’ safely with ‘\’ or leading ‘-’
14898         POSIX says that ‘echo FOO’ produces implementation-defined output
14899         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
14900         behavior in that case.
14901         * Makefile.in (removenullpaths): Remove.
14902         (epaths-force): Rewrite to avoid the need for ‘echo’.
14903         (install-etc): Be clearer about escaping the shell metacharacters
14904         ‘\’ and ‘$’.
14905         * Makefile.in (install-arch-indep, install-etcdoc):
14906         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
14907         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
14908         * configure.ac, lib-src/rcs2log, make-dist:
14909         * src/Makefile.in (lisp.mk):
14910         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
14911         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
14912         if $foo can contain arbitrary characters.
14913         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
14914         * doc/lispref/two-volume.make (vol1.pdf):
14915         * test/etags/make-src/Makefile (web ftp publish):
14916         Use ‘printf’ rather than ‘echo -e’.
14918 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
14920         Allow numbers with different radixes to be yanked.
14922         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
14923         default base 10.
14925 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
14927         Improve CHECK_IMPURE and PURE_P speedup
14929         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
14931 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
14933         Use events instead of chars to keep track of steps.
14935         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
14936         to keep track of steps.
14938 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
14940         Fix --enable-gcc-warnings problem with older GCC
14942         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
14943         This is for building with --enable-gcc-warnings with
14944         GCC 4.6 through 5.0.
14946 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
14948         Fix vertical-motion in truncated lines that end in a stretch
14950         * src/indent.c (Fvertical_motion): Expect overshoot when point is
14951         beyond window margin and lines are truncated, even if we have a
14952         stretch at point.  (Bug#21468)
14954 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
14956         Avoid link-time errors due to inline functions
14958         * src/emacs.c: Include puresize.h, to avoid link-time errors in
14959         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
14960         inline functions.
14962 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
14964         * src/data.c (Faset): Fix last change.
14966 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
14968         CHECK_IMPURE and PURE_P speedup
14970         * src/intervals.c (create_root_interval):
14971         Do CHECK_IMPURE only for strings; not needed for buffers.
14972         Prefer ! STRINGP to BUFFERP, for a tad more speed.
14973         * src/puresize.h (CHECK_IMPURE, PURE_P):
14974         Now inline functions instead of macros.
14975         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
14976         All callers changed.
14977         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
14978         All callers changed.
14980 2015-10-09  Noah Friedman  <friedman@splode.com>
14982         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
14984 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
14986         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
14988         our after-change-function, rather than re-adding it if it was removed.
14990 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
14992         * lisp/cedet/ede: Silence some compiler warnings
14994         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
14995         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
14996         (ede-apply-object-keymap, ede-reset-all-buffers)
14997         (ede-auto-add-to-target): Use dolist.
14998         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
14999         Use field names rather than initarg names in `oref'.
15000         (ede-load-project-file): Remove unused var `file'.
15001         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
15002         (ede-set): Remove unused var `a'.
15004         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
15005         (ede-project-autoload): Avoid the old-style "name" argument.
15006         (ede-emacs-find-matching-target): Use field names rather than initarg
15007         names in `oref'.
15009         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
15010         (ede-linux-load, ede-project-autoload): Avoid the old-style
15011         "name" argument.
15012         (ede-linux-find-matching-target): Use field names rather than initarg
15013         names in `oref'.
15015 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
15017         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
15019 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
15021         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
15022         indenting too far after ":-".
15024 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
15026         Update case-table and categories of recently added characters
15028         * lisp/international/characters.el: Update information about Latin
15029         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
15030         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
15031         blocks.  (Byug#21654)
15033 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
15035         * src/frame.c (adjust_frame_size): In minibuffer-only windows
15036         don't count minibuffer height twice.  (Bug#21643)
15038 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
15040         Avoid inflooping in font-lock
15042         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
15043         inhibit-field-text-motion around the call to
15044         line-beginning-position, to avoid inflooping.  (Bug#21615)
15046 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
15048         Refactor duplicated code; ensure default is in completions
15050         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
15051         New function.
15052         (reftex-extract-bib-entries): Use it.
15053         (reftex-extract-bib-entries-from-thebibliography): Use it.
15055 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
15057         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
15058         in the example.
15060 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
15062         * lisp/calc/calc.el: Silence byte-compiler warnings.
15063         (calc-scan-for-dels): Use ignore-errors.
15064         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
15065         (calc-read-key-sequence): Remove unused var `prompt2'.
15066         (calc-kill-stack-buffer): Remove unused var `buflist'.
15067         (calc): Remove unused var `oldbuf'.
15068         (calc-refresh): Use inhibit-read-only.
15069         (calc-can-abbrev-vectors): Declare.
15070         (calc-record): Remove unused var `mainbuf'.
15071         (math-sub-bignum): Remove unused var `sum'.
15072         (math-svo-c, math-svo-wid, math-svo-off): Declare.
15074 2015-10-08  Daiki Ueno  <ueno@gnu.org>
15076         Use g_clear_error instead of g_error_free
15078         * src/image.c: Define g_clear_error instead of g_error_free.
15079         (init_svg_functions): Resolve symbol g_clear_error instead of
15080         g_error_free.
15081         (svg_load_image): Use g_clear_error instead of g_error_free, to
15082         suppress GLib warnings when ERR is not set.  See bug#21641.
15084 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
15086         * src/image.c (image_size_error): Simplify.
15088 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
15090         Fix problems caught with --enable-gcc-warnings
15092         * src/image.c (lookup_rgb_color):
15093         * src/xfns.c (x_defined_color):
15094         * src/xterm.c (x_parse_color):
15095         Remove unused locals.
15097 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
15099         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
15101 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
15103         Format initial input uniformly
15105         * lisp/calc/calc.el (calc-digit-start-entry): New function.
15106         * lisp/calc/calc.el (calcDigit-start):
15107         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
15108         Use `calc-digit-start-entry' to format input.
15110 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
15112         Disable non-working pointerColor setting for X tooltip frame
15114         It generates a bunch of server traffic, but there's some bug wherein
15115         the new mouse cursor settings don't seem to get used.  In most
15116         situations the cursor isn't likely to be seen anyway, so it's not
15117         urgent to fix.
15119         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
15121 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
15123         Reduce some unnecessary X calls
15125         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
15126         call.  If border width is wanted, get it from the XGetGeometry call
15127         instead of calling XGetWindowAttributes on the same window.  Skip some
15128         X calls if we've already detected an error from the X server.
15129         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
15130         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
15132 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
15134         Reduce color allocation/query traffic in the TrueColor case
15136         When working with an X visual with TrueColor class, pixel values can
15137         be generated from the RGB values according to mask value provided by
15138         the server on connection.  Some of the image-handling code was already
15139         doing this.
15141         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
15142         lookup_rgb_color.
15143         (x_mutable_colormap): New function.
15144         * src/image.c (lookup_rgb_color): Move pixel composition code to
15145         x_make_truecolor_pixel.
15146         (x_kill_gs_process): Call x_mutable_colormap.
15147         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
15148         x_mutable_colormap.
15149         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
15150         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
15151         pixel value into RGB values directly, and don't send a request to the
15152         server.
15153         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
15154         value with x_make_truecolor_pixel.
15155         (x_copy_color): For an immutable color map, just return the provided
15156         pixel value.
15158 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
15160         Cache XParseColor results in the X display info structure
15162         With repeated lookups of foreground and background colors for multiple
15163         faces per frame, we issue a lot of redundant color name lookups to the
15164         X server, waiting every time for the response.  On a remote network
15165         with, say, 30ms round-trip time, this can add nearly a full second to
15166         creation of a new frame.
15168         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
15169         * src/image.c (get_spec_bg_or_alpha_as_argb):
15170         (xpm_init_color_cache, xpm_lookup_color):
15171         * src/xfns.c (x_defined_color):
15172         * src/xterm.c (x_parse_color): New function; caches color names not
15173         starting with "#" in the display-info structure.
15174         (x_delete_display): Delete the cache content.
15175         * src/xterm.h (struct color_name_cache_entry): New type.
15176         (x_parse_color): Declare.
15177         (struct x_display_info): Add a new field for the cache.
15179 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
15181         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
15183 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
15185         Fix segfault in image_size_error
15187         * src/image.c (image_size_error): Pass a Lisp string to
15188         image_error, not a C string.  (Bug#21641)
15190 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
15192         Highlight CSS variable definitions
15194         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
15195         CSS variables.  (Bug#21638)
15197 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
15199         * test/automated/tabulated-list-test.el: New file.
15200         Test bug#21639 and some basic functionality.
15202 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
15204         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
15205         Check if column can be sorted before trying.  (Bug#21639)
15207 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
15209         Add test for `self-insert-command' (bug#21633)
15211         * test/automated/cmds-tests.el: New file.
15213 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
15215         * src/window.c (resize_frame_windows): Don't set root window's
15216         top position when resizing horizontally.
15218 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
15220         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
15221         Document more possible values.
15223 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
15225         * lisp/textmodes/tex-mode.el: Use lexical-binding.
15227 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
15229         * lisp/indent.el (indent--default-inside-comment): New function.
15230         (indent-for-tab-command): Use it for `noindent' indentation.
15232 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
15234         Fix bug in GC_CHECK_MARKED_OBJECTS check
15236         * src/alloc.c (mark_object): Fix bug in checking code.
15237         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
15238         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
15239         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
15240         bucket.  The bug did not affect behavior either in the normal case
15241         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
15242         not have an internal error that a properly-written
15243         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
15245 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
15247         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
15248         Add prettified version for \\Bbb{Q}.
15250 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
15252         * test/automated/package-test.el (package-test-install-single):
15253         Add a test for bug#21625.
15255 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
15257         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
15258           not a package-desc object.  Also clarify documentation.  (Bug#21625)
15260 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
15262         Fix display of characters adjacent to ZWJ and ZWNJ
15264         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
15265         characters the same as directional formatting controls.
15266         (bidi_level_of_next_char): Include all Bn characters in rule L1,
15267         as mandated by the UBA.
15269 2015-10-06  Andreas Schwab  <schwab@suse.de>
15271         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
15272         number.  (Bug#21633)
15274 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
15276         * doc/lispref/objects.texi (Window Type): Add a cross reference.
15278         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
15280 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
15282         * lisp/language/misc-lang.el (composition-function-table):
15283         Fix entries for Arabic and Syriac.
15285 2015-10-05  Damien Cassou  <damien@cassou.me>
15287         Add first unit tests for auth-source.el
15289         * test/automated/auth-source-tests.el: New file.
15291 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
15293         Remove redundant redisplay code
15295         * src/xdisp.c (redisplay_internal, try_cursor_movement)
15296         (try_window_reusing_current_matrix, try_window_id): Remove
15297         redundant restrictions on redisplay optimizations based on the
15298         frame's 'redisplay' flag.  See
15299         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
15300         discussions.
15302 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
15304         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
15306 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
15308         Update tutorials/TUTORIAL.cn
15310         * etc/tutorials/TUTORIAL.cn: Improve translation.
15312 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15314         * src/macfont.m (macfont_encode_char, syms_of_macfont):
15315         Remove unused vars.
15317 2015-10-04  Stefan Merten  <stefan@merten-home.de>
15319         Pull in version numbers from rst.el upstream release.
15321         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
15322         (rst-svn-timestamp, rst-official-version)
15323         (rst-official-cvs-rev, rst-package-emacs-version-alist):
15324         Update version numbers.
15326 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
15328         * test/automated/coding-tests.el: New file.
15330 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
15332         Improve XEmacs compatibility of Tramp
15334         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
15335         Declare if it doesn't exist.
15336         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
15337         (redisplay): Make it an alias if it doesn't exist.
15339         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
15340         `file-remote-p' (due to XEmacs compatibility).
15342         * lisp/net/trampver.el (locate-dominating-file)
15343         (tramp-compat-replace-regexp-in-string): Autoload.
15344         (tramp-repository-get-version): Do not dupe byte-compiler.
15346 2015-09-02  K. Handa  <handa@gnu.org>
15348         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
15350         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
15351         Adjusted for the change of type of elements in the array
15352         MFLTGlyphString.glyphs.
15354 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
15355             Michael Heerdegen  <michael_heerdegen@web.de>
15357         shr: fix too long lines in rendered buffers (Bug#21012)
15359         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
15360         Correct calculation of available width.
15361         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
15362         is nil.
15364 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
15366         Restore blank line before next section, erroneously erased
15367         in my previous commit
15369         * etc/compilation.txt (symbol ant): Add an additional trailing blank
15370         line to this section, so that there are two of them immediately before
15371         the next section.
15373 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
15375         Support MSW filename style for ant compilation error regexp
15377         * etc/compilation.txt (symbol ant):
15378         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
15379         Support MSW filename style.
15381 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
15383         * nt/INSTALL: Minor spelling and quote fixes.
15385         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
15387 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
15389         Maintain ordering of JSON object keys by default
15391         * lisp/json.el (json-object-type): Mention order handling in doc-string.
15392         (json--plist-reverse): New utility function.
15393         (json-read-object): Maintain ordering for alists and plists.
15394         (json-pretty-print): Ensure that ordering is maintained.
15396         * test/automated/json-tests.el (test-json-plist-reverse): New test for
15397         `json--plist-reverse'.
15398         (json-read-simple-alist): Update test to accommodate for changes in
15399         `json-read-object'.
15401         * etc/NEWS: Document the new behavior of the pretty printing functions.
15403 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
15405         * src/coding.c (complement_process_encoding_system): Revert last change.
15407 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
15409         * admin/MAINTAINERS: Add entry for Ulf Jasper.
15411 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
15413         Doc fix for `defmacro'
15415         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
15417 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
15419         More validatation of coding systems
15421         * src/fileio.c (Finsert_file_contents): Remove redundant
15422         coding-system check.
15423         (choose_write_coding_system): Likewise.
15424         * src/coding.c (complement_process_encoding_system): Check argument
15425         for valid coding system.
15427 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
15429         Avoid crashes in coding_inherit_eol_type
15431         * src/coding.c (coding_inherit_eol_type): Check the validity of
15432         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
15433         (Bug#21602)
15435 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
15437         More validatation of coding system in 'write-region'
15439         * src/coding.c (choose_write_coding_system): More validation of
15440         coding-system from various sources.  Suggested by Andreas Schwab
15441         <schwab@linux-m68k.org>.  (Bug#21602)
15443 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
15445         Avoid crashes due to invalid coding-system
15447         * src/fileio.c (choose_write_coding_system)
15448         (Finsert_file_contents): Check validity of coding-system-for-write
15449         and coding-system-for-read bound by the caller.  (Bug#21602)
15451 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
15453         Adapt to new prettify-symbols-unprettify-at-point default
15455         * etc/NEWS: Mention that unprettication of symbol at point is off
15456         by default.
15458 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
15460         Revert my two recent process.c changes
15462         Revert "Improve last commit to process.c" and "Remove callback-handled
15463         channels from Available set" because they did not fix bug#21313.
15465         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
15466         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
15468 2015-10-02  Markus Triska  <triska@metalevel.at>
15470         * lisp/progmodes/prolog.el: Update and extend operator table.
15471         (prolog-smie-grammar): Add multifile, public etc.
15473 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
15475         Allow autogen even when Git is not installed
15477         * autogen.sh: Test ‘git status’ before trying to use Git.
15479 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
15481         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
15482         Adjust lto/lfrom when we have uncommitted changes.
15484 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
15486         Fix problems found by clang 3.5.0
15488         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
15489         * src/font.c (font_parse_family_registry):
15490         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
15492 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
15494         * nt/INSTALL: Update instructions for running autogen.sh.
15496         * nt/INSTALL: Point to ezwinports for libXpm binaries.
15498 2015-10-02  Daniel Colascione  <dancol@dancol.org>
15500         Fix winner in cl-lib not loaded case
15502         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
15503         without requiring CL
15505 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
15507         Fix a few problems with directed quotes
15509         This is in response to a problem report by Kaushal Modi in:
15510         http://bugs.gnu.org/21588#25
15511         * lisp/cedet/mode-local.el (describe-mode-local-overload):
15512         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
15513         * lisp/info-xref.el (info-xref-check-all-custom):
15514         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
15515         Prefer directed to undirected single quotes in diagnostics.
15517 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
15519         Revert "Attempt to fix slow redisplay caused by last changes"
15521         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
15522         (try_cursor_movement): Don't relax requirements for redisplay
15523         optimizations for the selected frame.  (Bug#21597)
15525         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
15527 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
15529         Fix slow redisplay when daemon frame exists
15531         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
15532         when looking for frames that need to be redisplayed.  (Bug#21597)
15534 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
15536         Attempt to fix slow redisplay caused by last changes
15538         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
15539         (try_cursor_movement): Relax requirements for redisplay
15540         optimizations for the selected frame.  (Bug#21597)
15542 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
15544         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
15545         Improve doc string.
15547 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
15549         * lisp/minibuffer.el (minibuffer-completion-help):
15550         Set default base-size, in case completion table does not set it.
15552 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
15554         Fix GUD display of GDB output with non-ASCII text
15556         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
15557         (gdb-mi-decode): New function.
15558         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
15559         decode octal escapes in GDB output.  (Bug#21572)
15561 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
15563         * nt/INSTALL: Document where to find XPM support files.
15565 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
15567         Un- and re-prettification are not exclusive
15569         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
15570         Re-apply prettification to previous symbol also when unprettifying
15571         next one.
15573 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
15575         Don't unprettify symbol at point by default
15577         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
15578         Default to disabled (nil).
15580 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15582         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
15583         Support unprettifying when point is after a symbol.
15585         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
15587 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
15589         Avoid assertion violations in push_prefix_prop
15591         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
15592         a line that has a line-prefix defined starts with an image.  (Bug#21428)
15594 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
15596         Disable some display optimizations when frames need redisplay
15598         These optimizations were previously disabled by the
15599         windows_or_buffers_changed flag, which now is not set
15600         when only some frames need to be redrawn.
15601         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
15602         'redisplay' flag is set.
15603         (try_window_reusing_current_matrix, try_window_id)
15604         (try_cursor_movement): Disable these optimizations when the
15605         frame's 'redisplay' flag is set.
15607 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
15609         Don't modify buffer by unprettification
15611         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
15612         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
15613         modify buffer when setting/removing custom prettify-symbols-start/end
15614         text properties.  Add them to font-lock-extra-managed-props, too.
15616 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
15618         Try to avoid redisplaying all frames when creating a new one
15620         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
15621         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
15622         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
15623         * src/frame.c (x_set_screen_gamma): Set the specific frame's
15624         `redisplay' bit rather than windows_or_buffers_changed.
15626         * src/window.c (apply_window_adjustment): Remove redundant setting of
15627         windows_or_buffers_changed.
15629         * src/xdisp.c (redisplay_internal): Set the specific frame's
15630         `redisplay' bit rather than update_mode_lines in response to
15631         cursor_type_changed.
15632         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
15633         (AINC): Adjust accordingly.
15635 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
15637         Implement unprettification of symbol at point
15639         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
15640         symbol at point.
15641         (prettify-symbols--current-symbol-bounds): New variable.
15642         (prettify-symbols--post-command-hook): New function.
15643         (prettify-symbols-unprettify-at-point): New defcustom.
15644         (prettify-symbols-mode): Use it.
15645         (prettify-symbols--compose-symbol): Use them.
15647 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15649         * src/macfont.m (mac_font_descriptor_supports_languages):
15650         Regard "zh" as synonym of "zh-Hans".
15652 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15654         Work around crash when displaying etc/HELLO on OS X 10.11
15656         * src/macfont.m (mac_font_get_weight)
15657         (mac_font_descriptor_get_adjusted_weight): New functions.
15658         (macfont_store_descriptor_attributes): Adjust weight.
15660 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15662         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
15664 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
15666         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
15667         of the columns.
15669 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
15671         Use unar and lsar to handle RAR archives in arc-mode
15673         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
15674         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
15676 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
15678         Clarify :create in auth-source's docs
15680         * lisp/gnus/auth-source.el (auth-source-search):
15681         Clarify :create's meaning.
15683 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
15685         Avoid empty -path arguments in rgrep
15687         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
15688         the list produced according to grep-find-ignored-directories,
15689         before passing it to Find/Grep invocation.  (Bug#21548)
15691 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
15693         Clarify documentation of pos-visible-in-window-p
15695         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
15696         t for POS.  See
15697         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
15698         for the original report.
15700         * doc/lispref/windows.texi (Window Start and End): Clarify the
15701         meaning of t for the POSITION argument of pos-visible-in-window-p.
15703 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15705         * lisp/progmodes/prolog.el: Fix various indentation cases.
15706         (prolog-operator-chars): New const (add \\).
15707         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
15708         (prolog-smie-rules): Add rules according to bug#21526.
15710 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15712         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
15713         (sh-indent-after-continuation): Add new value `always' (bug#17620)
15714         (sh-smie-sh-rules): Remove old handling of continued lines.
15715         (sh-smie--indent-continuation): New function.
15716         (sh-set-shell): Use it.
15718 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15720         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
15721         Remove redundant :group keyword args.
15722         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
15723         Remove variables.
15724         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
15725         turn them into compile-time variables.
15726         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
15727         Add rules for break, continue, return, global, and persistent.
15728         Refine the rule for "until".
15729         (octave-smie--funcall-p, octave-smie--end-index-p)
15730         (octave-smie--in-parens-p): New functions.
15731         (octave-smie-backward-token, octave-smie-forward-token): Use them to
15732         distinguish the "enumeration" function and the "end" index from
15733         their corresponding keywords.
15734         (octave--block-offset-keywords): New constant.
15735         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
15736         parsing.
15737         (octave-reserved-words): Redefine using octave-smie-grammar.
15738         (octave-font-lock-keywords): Use octave-smie--funcall-p and
15739         octave-smie--end-index-p.
15741 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15743         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
15745 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
15747         * nt/INSTALL: Remove references to GTK site.
15748         That site no longer offers Windows downloads.
15750 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
15752         * nt/INSTALL: Add instructions for installing Git.
15754 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
15756         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
15757         use colors.  Suggested by Eli Zaretskii.
15759 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
15761         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
15762         not supporting 256 above colors (bug#21557).
15764 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
15766         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
15768         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
15770 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
15772         Add documentation for seq.el
15774         * doc/lispref/sequences.texi: Add documentation regarding extending
15775         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
15776         seq-do and seq-map.
15778 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
15780         Better documentation for seq-some
15782         * doc/lispref/sequences.texi:
15783         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
15784         guarantee that the returned value is the first non-nil value that
15785         resulted from applying the predicate.
15787 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
15789         * lisp/arc-mode.el: Sharp-quote function arguments.
15791 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
15793         Avoid redisplay error in ediff-regions-wordwise
15795         * lisp/vc/ediff-util.el
15796         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
15797         set before activating it.  (Bug#21567)
15799 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
15801         Another attempt to fix crashes due to prematurely freed faces
15803         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
15804         faces for as long as we might have desired matrices that reference
15805         those faces.  (Bug#21428)
15807 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
15809         Add auctex development list email address
15811 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
15813         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
15815 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
15817         Improve wrapfig package support and caption parsing
15819         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
15820         Correct description string and add wraptable environment.
15821         (reftex-default-context-regexps): Improve caption regexp.
15823 2015-09-28  Anders Lindgren  <andlind@gmail.com>
15825         Respect value of frame_resize_pixelwise when handling fullscreen state
15827         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
15828         setting size increments.
15830 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
15832         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
15834 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
15836         Add prettify-symbols-alist for js-mode
15838         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
15839         (js-mode): Use it.
15841 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
15843         * nt/subdirs.el: File deleted (no longer used).
15845 2015-09-26  Alan Mackenzie  <acm@muc.de>
15847         Fix follow-scroll-up/down, making them replacements for scroll-up/down
15849         1. Allow point to move between follow windows in scroll operations.
15850         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
15851         when EOB was isolated in the last follow window.
15853         * lisp/follow.el (follow-fixed-window): New variable.
15854         (follow-get-scrolled-point): New function.
15855         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
15856         Reformulate the code.  Put `scroll-command' properties on the functions.
15857         Correct minor errors in ...-down's doc string and code.
15858         (follow-calc-win-end): Amend incomplete doc string.  Use
15859         `pos-visible-in-window-p' to check whether EOB is in the window.
15860         (follow-estimate-first-window-start): Correct an off-by-1 error.
15861         (follow-adjust-window): Add handling for explicit scrolling operations.
15863 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
15865         * admin/MAINTAINERS: Add self, plus list some more files
15866         sans maintaners.
15868 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
15870         New DWIM commands for changing letter-case
15872         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
15873         New functions.  (Bug#21501)
15875 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
15877         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
15879 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
15881         Make face realization be more frame-specific
15883         * src/frame.h (struct f): New flag face_change.
15884         * src/xfaces.c (Finternal_make_lisp_face)
15885         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
15886         (update_face_from_frame_parameter): Set the face_change flag only
15887         for the frame whose faces are affected.
15888         * src/xdisp.c (init_iterator): If a frame's face_change flag is
15889         set, free faces only on that frame.
15890         (redisplay_internal): Disable "display optimization 1" if the
15891         frame's face_change flag is set.
15892         (redisplay_window): Don't allow skipping a window's redisplay if
15893         its frame's face_change flag is set.
15894         * src/frame.c (x_set_screen_gamma): Instead of calling
15895         Fclear_face_cache, call clear_face_cache and set
15896         windows_or_buffers_changed to a non-zero value.  This avoids
15897         setting the global face_change flag that triggers face realization
15898         on all frames and thorough redisplay of all of them.
15900         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
15901         clear face cache if the selected frame is a GUI frame.
15903 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
15905         Remove font-latex specific check
15907         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
15908         Use syntax-ppss data to identify verbatim contents.
15910 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
15912         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
15913         Fix some false negatives.
15915 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
15917         Reorder Windows version in Emacs manifests
15919         * nt/emacs-x64.manifest:
15920         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
15921         highest.
15923 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
15925         Update Emacs manifest files for Windows 10
15927         * nt/emacs-x86.manifest:
15928         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
15930 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
15932         Avoid non-ASCII decoding errors in C src files
15934         * src/nsterm.m:
15935         * src/lisp.h:
15936         * src/editfns.c:
15937         * src/doprnt.c: Add 'coding' cookies -- these files include
15938         Unicode characters and should be decoded as UTF-8.
15940 2015-09-25  Alan Mackenzie  <acm@muc.de>
15942         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
15944         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
15945         amend to match current modes and functions.
15946         (edebug-set-initial-mode): Uncomment and change from setting a defun's
15947         `edebug-initial-mode''s property to setting the variable
15948         `edebug-initial-mode'.
15949         (top level): Create new binding C-x C-a C-m for
15950         `edebug-set-initial-mode'.
15952         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
15953         `edebug-set-initial-mode' and its new key binding.
15954         (Edebug Options): Mention the new command in the pertinent place.
15956         * etc/NEWS: Write entry for this change.
15958 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
15960         Avoid non-ASCII decoding errors in Texinfo files
15962         * doc/misc/tramp.texi:
15963         * doc/lispref/strings.texi:
15964         * doc/lispref/positions.texi:
15965         * doc/lispref/help.texi:
15966         * doc/lispref/functions.texi:
15967         * doc/lispintro/emacs-lisp-intro.texi:
15968         * doc/emacs/text.texi:
15969         * doc/emacs/modes.texi:
15970         * doc/emacs/mini.texi:
15971         * doc/emacs/display.texi:
15972         * doc/emacs/custom.texi:
15973         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
15974         Unicode characters and should be decoded as UTF-8.
15975         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
15976         apostrophe unnecessarily.
15978 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
15980         Merge from gnulib
15982         This incorporates:
15983         2015-09-25 c-ctype: rewrite to use inline functions
15984         2015-09-24 maint: add coding cookies to non-ASCII sources
15985         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
15986         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
15987         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
15988         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
15989         * lib/set-permissions.c:
15990         Copy from gnulib.
15992 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
15994         Update publicsuffix.txt from upstream
15996         * etc/publicsuffix.txt: Update from
15997         https://publicsuffix.org/list/effective_tld_names.dat
15998         dated 2015-09-24 17:29:21 UTC.
16000 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
16002         Prevent timers from messing up TTY menus
16004         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
16005         the TTY menu is open.  (Bug#21530)
16007 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
16009         No need to mention K&R C in c-mode intro
16011 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
16013         Fix recent bootstrap problems
16015         * src/syntax.c (parse_sexp_propertize): Fix last fix.
16016         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
16017         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
16019 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
16021         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
16023 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
16025         Properly quote nested xml comments (Bug#6267) (Bug#20001)
16027         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
16028         (nxml-mode): Set comment-quote-nested-function.
16030 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
16032         Allow major-modes full control over quoting nested comments
16034         * lisp/newcomment.el (comment-quote-nested-function): New variable.
16035         (comment-quote-nested-default): New function.
16036         (comment-quote-nested): Use `comment-quote-nested-function'.
16038 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
16040         Prefer CALLN in a few more places
16042         * src/macfont.m (macfont_set_family_cache):
16043         * src/nsterm.m (append2):
16044         * src/xterm.c (x_cr_export_frames):
16045         Prefer CALLN to allocating the arg arrays by hand.
16047 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
16049         Adapt file-notify-test02-events test case
16051         * test/automated/file-notify-tests.el (file-notify-test02-events):
16052         Create a new watch for every test.
16054 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
16056         Continue gfilenotify.c implementation of missing parts
16058         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
16059         `gfile-add-watch' call.
16060         (file-notify-rm-watch): Modify `file-notify-descriptors' only
16061         after calling the low level functions.
16063         * src/gfilenotify.c (dir_monitor_callback): Check, whether
16064         event_type is expected.
16065         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
16066         (Fgfile_rm_watch): Fix typo.
16067         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
16069 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
16071         * src/syntax.c (parse_sexp_propertize): Handle spurious
16072         e_property_truncated flag.
16073         (update_syntax_table_forward): Remove invalid assertion.
16075 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
16077         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
16078         space display spec on text-mode terminals, by calling
16079         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
16080         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
16081         test for a GUI frame.
16083 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
16085         Move let-when-compile to lisp-mode.el
16087         This fixes the bootstrapping problem of `let-when-compile' using
16088         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
16090 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16092         * lisp/url/url-http.el (url-http-parse-headers): Do not
16093         automatically include Authorization header in redirect.
16094         (Bug#21350)
16096 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
16098         Clarify documentation of ':relative-width'
16100         * doc/lispref/display.texi (Specified Space): Document that
16101         ':relative-width' is only supported on GUI frames.
16103 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
16105         Fix 'current-column' in presence of :relative-width
16107         * src/indent.c (check_display_width): Support ':relative-width'
16108         in a display spec that specifies a stretch glyph.  (Bug#21533)
16110 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
16112         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
16114         ... to conform better to CONTRIBUTE guidelines.
16116 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
16118         * lisp/progmodes/prolog.el: Fix indentation of empty line
16120         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
16121         `empty-line-token' element.
16122         (smie-indent-empty-line): New function.
16123         (smie-indent-functions): Add it.
16125         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
16126         behavior and use the new `empty-line-token' element (bug#21526).
16127         (prolog-mode-variables): Fix comment-start-skip setting to match
16128         comment-start.
16130         * test/indent/prolog.prolog: Add nested indentation tests.
16132         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
16133         comment-start-skip not to misuse submatch 1.
16135 2015-09-22  Alan Mackenzie  <acm@muc.de>
16137         Make description of `edebug-initial-mode' user friendly
16139         Fixes bug#21365.
16141         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
16142         description of `edebug-initial-mode' from that of its implementation
16143         to that of its visual effect and use.  Move the paragraph higher up.
16145 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
16147         lisp/progmodes/gud.el (gud-format-command): Fix last commit
16149         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
16150         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
16152 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
16154         Improve last commit to process.c
16156 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
16158         Implement gfile-valid-p
16160         * lisp/filenotify.el (file-notify-callback): Fix typo.
16161         (gfile-valid-p): Remove defalias.
16163         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
16164         the file or directory to be watched is deleted.
16165         (Fgfile_add_watch): Make watch_object a triple.
16166         (Fgfile_rm_watch): Check, whether watch is cancelled already.
16167         (Fgfile_valid_p): New defun.
16168         (syms_of_gfilenotify): Declare Sgfile_valid_p.
16170 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
16172         Remove callback-handled channels from Available set
16174         * src/process.c (wait_reading_process_output): Remove channel from
16175         Available set if it is handled by a callback, e.g., dbus or
16176         inotify (bug#21313).
16178 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
16180         Use lunate epsilon for TeX \epsilon
16182         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
16183         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
16184         \epsilon to use GREEK LUNATE EPSILON SYMBOL
16186 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
16188         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
16190         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
16191         rather than outermost paren (bug#21526).
16193 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
16195         Improve git diff hunk headers for .el, .texi
16197         Problem reported by Alan Mackenzie in:
16198         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
16199         * .gitattributes (*.el, *.texi): New patterns.
16200         * autogen.sh: Configure diff.elisp.xfuncname and
16201         diff.texinfo.xfuncname if using Git.
16203 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
16205         Don't rely on defaults in decoding UTF-8 encoded Lisp files
16207         * lisp/replace.el:
16208         * lisp/textmodes/rst.el:
16209         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
16211 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
16213         Clarify or replace a few \u escapes
16215         * doc/lispref/nonascii.texi (Character Properties)
16216         More-detailed commentary for \u escapes.
16217         * lisp/progmodes/python.el (python--prettify-symbols-alist):
16218         * lisp/replace.el (query-replace-from-to-separator):
16219         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
16220         (rst-mode-syntax-table):
16221         * lisp/whitespace.el (whitespace-display-mappings):
16222         Prefer actual character to \u escape when this makes the code
16223         easier to follow in the usual case where Unicode chars can be
16224         displayed.
16226 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
16228         Pacify GCC -Wmaybe-uninitialized in xdisp.c
16230         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
16231         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
16232         charpos.  The loop should always execute at least once anyway.
16234 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
16236         Signal error on invalid regexp
16238         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
16239         Signal an error when the user tries searching with a regexp
16240         matching the empty string.
16242 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
16244         Another fix of file-notify-tests for w32notify
16246         * test/automated/file-notify-tests.el (file-notify-test02-events):
16247         Further adaptation for w32notify: reduce the number of expected
16248         'changed' events.  (Bug#21435)
16250 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
16252         Adapt tests and manual for w32notify
16254         * doc/lispref/os.texi (File Notifications): w32notify does not
16255         send `attribute-changed' events.
16257         * test/automated/file-notify-tests.el (file-notify--test-with-events):
16258         Simplify parameters.  Adapt all callees.
16259         (file-notify-test02-events): w32notify does not send
16260         `attribute-changed' events.
16261         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
16262         Do not skip in case of w32notify.  Simply ignore this part of the test.
16264 2015-09-21  Dima Kogan  <dima@secretsauce.net>
16266         Fix setting breakpoints when remote-debugging
16268         * lisp/progmodes/gud.el (gud-format-command): Send localized file
16269         names to the debugger running on the remote.  (Bug#13304)
16271 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
16273         Better docstring and parameter name for seq-find
16275         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
16276         the parameter `sentinel' to `default'.
16278         * doc/lispref/sequences.texi (Sequence Functions): Update the
16279           documentation for `seq-find' accordingly.
16281 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
16283         Avoid infinite recursion while displaying box face
16285         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
16286         the previous string/buffer character position under bidi
16287         iteration.  (Bug#21428)
16289 2015-09-21  Anders Lindgren  <andlind@gmail.com>
16291         Keep upper edge unchanged when changing size of NS frame
16293         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
16294         (Bug#21415).
16296 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
16298         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
16299         (prolog-smie-rules): Accommodate standard if/then/else special
16300         indentation.
16301         (prolog-mode): Add . to electric-indent-chars.
16302         (prolog-electric--if-then-else): Re-indent the line before adding space
16303         after the new char (bug#21526).
16305 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
16307         Add prettify symbols to python-mode
16309         * lisp/progmodes/python.el (python-prettify-symbols-alist):
16310         New variable.
16311         (python-mode): Use it
16313 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
16315         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
16317 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
16319         (compilation-error-regexp-alist-alist): Tone down guile-file
16321         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
16322         Make guile-file a bit less enthusiastic (bug#21496).
16324 2015-09-20  Drew Csillag  <drew@thecsillags.com>
16326         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
16327         Fix m4_* highlighting.
16329         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
16330         of commands when they have a "m4_" prefix.
16332 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
16334         '.' -> `.' in doc string
16336         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
16337         individual chars with grave quotes instead of straight quotes, as
16338         this works better when they are translated to curved quotes.
16340 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
16342         Improve file notifications, especially for Tramp
16344         * doc/lispref/files.texi (Magic File Names):
16345         Mention `file-notify-valid-p'.
16347         * doc/lispref/os.texi (File Notifications):
16348         Describe `file-notify-valid-p'.
16350         * etc/NEWS: Add `file-notify-valid-p'.
16352         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
16353         Improve implementation.
16354         (tramp-gvfs-monitor-file-process-filter): Rename from
16355         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
16356         process if appropriate.
16358         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
16359         Improve implementation.
16360         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
16361         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
16362         if appropriate.
16363         (tramp-sh-inotifywait-process-filter): Rename from
16364         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
16365         appropriate.
16367         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
16368         Use `delete-process'.
16369         (tramp-handle-file-notify-valid-p): Check also, that file or
16370         directory to be watched still exists.
16372         * test/automated/file-notify-tests.el (file-notify--test-timeout):
16373         New defun.  Use it at all places a timeout is needed.
16374         (file-notify--test-cleanup): Delete directories recursively.
16375         Cleanup also Tramp connections.
16376         (file-notify-test02-events): Add tests for `attribute-change'.
16377         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
16378         Add tests for `file-notify-rm-watch'.
16380 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
16382         Use %s to format strings instead of splicing them
16384         If FOO might contain quotes that are part of a file or variable
16385         name, the quotes should not be translated when showing FOO’s name
16386         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
16387         is not quite right, as it would translate FOO’s quotes.
16388         Change it to (message "%s: bar" FOO) instead.
16389         * lisp/allout.el (allout-process-exposed):
16390         * lisp/calc/calc-ext.el (calc-do-prefix-help):
16391         * lisp/calc/calc-store.el (calc-store-into):
16392         * lisp/calendar/todo-mode.el (todo-category-completions):
16393         * lisp/cedet/semantic/complete.el (semantic-completion-message):
16394         * lisp/org/ob-latex.el (convert-pdf):
16395         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
16396         * lisp/org/ox-latex.el (org-latex-compile):
16397         * lisp/org/ox-man.el (org-man-compile):
16398         * lisp/org/ox-odt.el (org-odt--export-wrap):
16399         * lisp/org/ox-texinfo.el (org-texinfo-compile):
16400         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
16401         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
16402         (verilog-signals-combine-bus, verilog-read-defines)
16403         (verilog-getopt-file, verilog-expand-dirnames)
16404         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
16405         * lisp/term/ns-win.el (ns-spi-service-call):
16406         Use %s to avoid translating quotes of file names etc. in diagnostics.
16408 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
16410         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
16411         (js-mode): Don't set syntax-begin-function.
16413 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
16415         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
16416         syntax-begin-function is a symbol.
16418 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
16420         Improve documentation of 'run-at-time'
16421         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
16422         In particular, don't refer to 'diary-entry-time', because it is
16423         unavailable until diary-lib is loaded.  Also, refer to
16424         'timer-duration-words', not 'timer-duration', as the latter's doc
16425         string says nothing about the accepted strings.
16427 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
16429         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
16431 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
16433         Repair pdbtrack remote file tracking
16434         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
16435         Rectify pdbtrack so it follows transitions from one remote source
16436         file to the next.
16438 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
16440         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
16442 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
16444         Adapt vc-src to the old-new vc-checkin API
16445         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
16446         additional optional parameter.
16448 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
16450         Add overflow module to CSS property list
16451         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
16452         from CSS Overflow Module Level 3.
16454 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
16456         Fix documentation of "C-u C-x v v"
16457         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
16458         documentation of "C-u C-x v v" match what the code does.
16460         Resurrect the ability to specify a revision in vc-next-action
16461         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
16462         * lisp/vc/vc-dav.el (vc-dav-checkin):
16463         * lisp/vc/vc-git.el (vc-git-checkin):
16464         * lisp/vc/vc-hg.el (vc-hg-checkin):
16465         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
16466         an additional optional argument, the revision to checkin.
16467         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
16468         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
16469         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
16470         a revision to checkin.
16471         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
16472         revision when checking in files.
16473         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
16474         for the details.
16476 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
16478         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
16479         (verilog-decls-princ, verilog-modport-princ)
16480         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
16482 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
16484         Fix the routine for help on Calc's prefixes
16485         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
16486         (calc-do-prefix-help): Use `read-char' to determine the next Calc
16487         command.
16489 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
16491         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
16492         (font-lock-fontify-block): Don't let-bind it.
16493         (font-lock-compile-keywords): Don't use it.
16494         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
16495         start one slot earlier, instead.
16496         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
16497         Don't declare.
16498         (syntax-ppss): Don't use it either.
16499         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
16500         from docstring.
16501         * doc/emacs/display.texi (Font Lock): Don't mention
16502         font-lock-beginning-of-syntax-function.
16503         * doc/lispref/modes.texi (Font Lock Basics): Update description of
16504         font-lock-defaults.
16505         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
16506         * lisp/loadhist.el (unload-feature-special-hooks):
16507         Remove font-lock-beginning-of-syntax-function.
16508         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
16509         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
16510         font-lock-beginning-of-syntax-function.
16512 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
16514         Backslash cleanup in Elisp source files
16515         This patch should not change behavior.  It typically omits backslashes
16516         where they are redundant (e.g., in the string literal "^\$").
16517         In a few places, insert backslashes where they make regular
16518         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
16519         "^\\*", which has the same effect as a regular expression.
16520         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
16521         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
16522         RCS IDs, as that makes it clearer that the backslash is intended.
16524         Some more minor backslash fixes
16525         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
16526         * test/automated/info-xref.el (info-xref-test-write-file):
16527         Double backslashes in strings.
16529         Fix several backslash typos in Elisp strings
16530         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
16531         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
16532         (todo-reset-done-string, todo-reset-comment-string)
16533         (todo-reset-highlight-item):
16534         * lisp/erc/erc-networks.el (erc-networks-alist):
16535         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
16536         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
16537         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
16538         (nntp-telnet-shell-prompt):
16539         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
16540         * lisp/image-dired.el (image-dired-rotate-original):
16541         (image-dired-get-exif-file-name):
16542         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
16543         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
16544         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
16545         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
16546         * lisp/net/shr-color.el (shr-color->hexadecimal):
16547         * lisp/org/org-bibtex.el (org-bibtex-fields):
16548         * lisp/org/org-docview.el (org-docview-export):
16549         * lisp/org/org-entities.el (org-entities):
16550         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
16551         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
16552         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
16553         (ebnf-style-database):
16554         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
16555         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
16556         * lisp/progmodes/sql.el (sql-product-alist):
16557         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
16558         (verilog-error-font-lock-keywords)
16559         (verilog-assignment-operator-re):
16560         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
16561         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
16562         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
16563         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
16564         For example, to get the regular expression ‘\.’ use the string
16565         literal "\\.", not "\." (which is equivalent to ".").
16566         * lisp/emulation/viper-util.el (viper-glob-unix-files):
16567         Remove stray ‘\j’ from string.
16568         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
16569         (nntp-telnet-shell-prompt):
16570         Treat > like $ when matching a shell prompt.
16571         * lisp/progmodes/make-mode.el (makefile-browse):
16572         Properly quote a diagnostic.
16574         Fix minor quoting problems in diagnostics
16575         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
16576         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
16577         Follow text-quoting-style in diagnostic, and quote a file name.
16579 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
16581         * doc/lispref/frames.texi (Cursor Parameters):
16582         Document 'x-stretch-cursor'.
16584 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
16586         Omit unnecessary \ before paren in C docstrings
16587         Although \( is needed in docstrings in Elisp code, it is not needed in
16588         docstrings in C code, since C function definitiions do not start with
16589         a parenthesis.  The backslashes made the docstrings a bit harder to
16590         read and to format in columns.  Also, some C docstrings had ( in
16591         column 1 and this did not appear to be causing any problems.  So,
16592         simplify C docstrings by replacing \( with ( and \) with ).
16594         A few more minor quoting fixes in a script and a text file
16596         Minor quoting fixes in scripts and doc
16597         Prefer straight quotes in random script files, as they are not
16598         converted.  Prefer grave quotes in a couple of places in the manual
16599         that were missed earlier, as these quotes are converted.
16601         Minor backslash fixes in manuals and scripts
16602         * Makefile.in (install-arch-indep):
16603         * admin/charsets/compact.awk:
16604         * admin/charsets/gb180302.awk (gb_to_index):
16605         * admin/charsets/gb180304.awk (gb_to_index):
16606         Avoid undefined behavior in Awk regular expression backslashes.
16607         * doc/misc/efaq.texi (Matching parentheses):
16608         Omit unnecessary backslashes.
16609         * doc/misc/gnus-faq.texi (FAQ 5-8):
16610         Avoid undefined behavior in suggested sed backslash usage.
16612         Add -Wswitch to --enable-gcc-warnings
16613         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
16614         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
16615         * lib-src/etags.c (main, consider_token, C_entries):
16616         * src/coding.c (encode_invocation_designation):
16617         * src/data.c (Ftype_of):
16618         * src/eval.c (Fdefvaralias, default_toplevel_binding)
16619         (Fbacktrace__locals, mark_specpdl):
16620         * src/lisp.h (record_xmalloc):
16621         * src/syntax.c (scan_lists, scan_sexps_forward):
16622         * src/window.c (window_relative_x_coord):
16623         * src/xdisp.c (push_it, pop_it):
16624         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
16625         Error out or do nothing (as appropriate) if a switch statement
16626         with an enum value does not cover all of the enum.
16627         * src/dispextern.h (struct iterator_stack_entry.u.comp):
16628         Remove unused member discovered by using -Wswitch.
16629         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
16630         * src/vm-limit.c (check_memory_limits):
16631         Simplify warning-diagnostic computation by using a table.
16633         etags ‘fatal’ function is now printf-like
16634         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
16635         Also, now static; not clear why it needed to be extern.
16636         (verror): New function, with most of the old contents of ‘error’.
16637         (fatal, error): Use it.
16639 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
16641         More adaptations in file-notify-tests.el
16642         * test/automated/file-notify-tests.el
16643         (file-notify-test05-dir-validity): Skip for w32notify in
16644         batch-mode.  (Bug#21432)
16646 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
16648         Adapt test in file-notify-tests.el
16649         * test/automated/file-notify-tests.el
16650         (file-notify-test04-file-validity): Skip for w32notify in
16651         batch-mode.  Add test lost last commit.
16653 2015-09-16  Dima Kogan  <dima@secretsauce.net>
16655         winner no longer holds on to dead frames
16656         * lisp/winner.el (winner-change-fun): Cull dead frames.
16657         This prevents a potentially massive memory leak.  See:
16658         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
16660 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
16662         Use common report_file_notify_error function
16663         * src/fileio.c (report_file_notify_error): New function.
16664         * src/inotify.c (report_inotify_error): Remove function.
16665         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
16666         (Finotify_rm_watch): Use report_file_notify_error.
16667         * src/lisp.h (report_file_notify_error): Declare external function.
16668         * src/w32notify.c (report_w32notify_error): Remove function.
16669         (Fw32notify_add_watch, Fw32notify_rm_watch):
16670         Use report_file_notify_error.
16672 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
16674         Fix documentation.
16675         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
16676         the documentation of the root mean square.
16678 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
16680         Remove tool_bar_redisplayed_once and associated code.
16681         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
16682         * src/frame.c (make_frame, x_set_font): Remove initialization of
16683         f->tool_bar_redisplayed_once.
16684         * src/w32fns.c (x_change_tool_bar_height):
16685         * src/xfns.c (x_change_tool_bar_height): Don't check for
16686         f->tool_bar_redisplayed_once.
16687         * src/xdisp.c (redisplay_internal): Remove handling of
16688         f->tool_bar_redisplayed_once.
16690 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
16692         Restore some of the quoting in the manuals
16693         * doc/lispref/windows.texi (Coordinates and Windows)
16694         (Coordinates and Windows):
16695         * doc/lispref/variables.texi (Lexical Binding)
16696         (File Local Variables):
16697         * doc/lispref/text.texi (Format Properties):
16698         * doc/lispref/symbols.texi (Symbol Components):
16699         * doc/lispref/strings.texi (Creating Strings):
16700         * doc/lispref/sequences.texi (Sequence Functions):
16701         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
16702         (Search and Replace):
16703         * doc/lispref/processes.texi (Bindat Spec):
16704         * doc/lispref/os.texi (Idle Timers):
16705         * doc/lispref/objects.texi (Basic Char Syntax):
16706         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
16707         * doc/lispref/nonascii.texi (Character Properties):
16708         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
16709         (Mode Line Variables):
16710         * doc/lispref/minibuf.texi (Text from Minibuffer):
16711         * doc/lispref/loading.texi (Autoload):
16712         * doc/lispref/keymaps.texi (Controlling Active Maps):
16713         * doc/lispref/frames.texi (Frame Layout, Size and Position)
16714         (Size Parameters, Implied Frame Resizing):
16715         * doc/lispref/files.texi (Changing Files, Magic File Names):
16716         * doc/lispref/eval.texi (Self-Evaluating Forms):
16717         * doc/lispref/display.texi (Progress, Abstract Display)
16718         (Abstract Display Example, Bidirectional Display):
16719         * doc/lispref/commands.texi (Event Mod):
16720         * doc/emacs/windows.texi (Displaying Buffers):
16721         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
16722         * doc/emacs/text.texi (Enriched Text):
16723         * doc/emacs/programs.texi (MixedCase Words):
16724         * doc/emacs/picture-xtra.texi (Insert in Picture)
16725         (Tabs in Picture):
16726         * doc/emacs/misc.texi (Emacs Server, Printing):
16727         * doc/emacs/mini.texi (Minibuffer History):
16728         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
16729         (Pulling / Pushing):
16730         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
16731         * doc/emacs/help.texi (Help, Help Echo):
16732         * doc/emacs/glossary.texi (Glossary):
16733         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
16734         (Frame Commands):
16735         * doc/emacs/files.texi (Reverting, Saving, Directories):
16736         * doc/emacs/entering.texi (Exiting):
16737         * doc/emacs/emacs.texi (Top):
16738         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
16739         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
16740         appropriate or replace quoting with @dfn.
16741         * doc/misc/ediff.texi (Window and Frame Configuration):
16742         * doc/lispref/processes.texi (Network Feature Testing):
16743         * doc/lispref/display.texi (Display Margins): Quote the phrase
16744         after "a.k.a." where appropriate.
16746 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
16748         Clarify reftex-extra-bindings docs
16749         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
16750         * doc/misc/reftex.texi (Key Bindings): Document that the variable
16751         only has an effect at load-time.
16753 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
16755         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
16756         search argument.  (Bug#21492) (Bug#21493)
16758 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
16760         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
16761         Add pretty symbols for \qquad and \varrho.
16763 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
16765         Add new functions for the root mean square of a (Calc) vector
16766         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
16767         New functions.
16768         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
16769         `calc-vector-rms', add autoloads for `calc-vector-rms' and
16770         `calcFunc-rms'.
16771         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
16772         `calcFunc-rms'.
16773         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
16774         `calc-vector-rms'.
16775         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
16776         command.
16778 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
16780         Add monotone EDE generic project
16781         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
16782         Add monotone generic project.
16784         Revert premature commit
16785         * doc/lispref/files.texi: Revert premature commit of change to
16786         file-name-all-completions.
16788         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
16789         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
16790         with cl-generic defaults.
16791         (elisp--xref-find-references): Add doc string.
16792         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
16793         tests to find bug.
16795         Fix bugs in eieio-oref-default related to class symbols
16796         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
16797         (eieio-oref-default): Handle class properly.
16799 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
16801         Quote “fullboth” when defining it
16802         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
16803         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
16805 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
16807         Minor doc fix in emacs/ack.texi
16808         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
16809         first argument.
16811 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
16813         Adapt tests in auto-revert-tests.el
16814         * test/automated/auto-revert-tests.el (auto-revert--timeout):
16815         Make it a defconst.
16816         (auto-revert--wait-for-revert): New defun.
16817         (auto-revert-test00-auto-revert-mode)
16818         (auto-revert-test01-auto-revert-tail-mode)
16819         (auto-revert-test02-auto-revert-mode-dired): Use it.
16821 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
16823         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
16824         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
16825         (cl-lib-fdefs): Add defgeneric.
16826         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
16827         (eieio-kw, cl-lib-kw, el-kw): Remove.
16829 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
16831         Quote less in manuals
16832         The manuals often used quotes ``...'' when it is better to use @dfn or
16833         @code or capitalized words or no quoting at all.  For example, there is
16834         no need for the `` and '' in “if a variable has one effect for
16835         @code{nil} values and another effect for ``non-@code{nil}'' values”.
16836         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
16837         unnecessary quoting like this, and to use @dfn etc. instead when called
16838         for (Bug#21472).
16840 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
16842         * lisp/custom.el (load-theme): Only compute hash when needed.
16844 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
16846         Pacify --enable-gcc-warnings
16847         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
16849 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
16851         Improve error reports in inotify.c
16852         * src/inotify.c (report_inotify_error): New function.  Clone of
16853         report_w32notify_error.
16854         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
16855         (Finotify_rm_watch): Use it.
16857 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
16859         Fix the file-notify tests for watch validation on w32
16860         * test/automated/file-notify-tests.el
16861         (file-notify-test04-file-validity): Move the directory deletion
16862         out of the file-notify--test-with-events macro.
16863         (file-notify-test04-file-validity)
16864         (file-notify-test05-dir-validity): Enlarge the timeout of
16865         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
16867 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
16869         Use OPEN BOX instead of space for \quad.
16870         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
16871         character for \quad instead of a space.
16873 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
16875         Add missing *.pbm images
16876         * etc/images/connect.pbm: New file.
16877         * etc/images/custom/down-pushed.pbm: New file.
16878         * etc/images/custom/down.pbm: New file.
16879         * etc/images/custom/right-pushed.pbm: New file.
16880         * etc/images/custom/right.pbm: New file.
16881         * etc/images/describe.pbm: New file.
16882         * etc/images/disconnect.pbm: New file.
16883         * etc/images/ezimage/bits.pbm: New file.
16884         * etc/images/ezimage/bitsbang.pbm: New file.
16885         * etc/images/ezimage/box-minus.pbm: New file.
16886         * etc/images/ezimage/box-plus.pbm: New file.
16887         * etc/images/ezimage/box.pbm: New file.
16888         * etc/images/ezimage/checkmark.pbm: New file.
16889         * etc/images/ezimage/dir-minus.pbm: New file.
16890         * etc/images/ezimage/dir-plus.pbm: New file.
16891         * etc/images/ezimage/dir.pbm: New file.
16892         * etc/images/ezimage/doc-minus.pbm: New file.
16893         * etc/images/ezimage/doc-plus.pbm: New file.
16894         * etc/images/ezimage/doc.pbm: New file.
16895         * etc/images/ezimage/info.pbm: New file.
16896         * etc/images/ezimage/key.pbm: New file.
16897         * etc/images/ezimage/label.pbm: New file.
16898         * etc/images/ezimage/lock.pbm: New file.
16899         * etc/images/ezimage/mail.pbm: New file.
16900         * etc/images/ezimage/page-minus.pbm: New file.
16901         * etc/images/ezimage/page-plus.pbm: New file.
16902         * etc/images/ezimage/page.pbm: New file.
16903         * etc/images/ezimage/tag-gt.pbm: New file.
16904         * etc/images/ezimage/tag-minus.pbm: New file.
16905         * etc/images/ezimage/tag-plus.pbm: New file.
16906         * etc/images/ezimage/tag-type.pbm: New file.
16907         * etc/images/ezimage/tag-v.pbm: New file.
16908         * etc/images/ezimage/tag.pbm: New file.
16909         * etc/images/ezimage/unlock.pbm: New file.
16910         * etc/images/gnus/important.pbm: New file.
16911         * etc/images/gnus/mail-send.pbm: New file.
16912         * etc/images/gnus/receipt.pbm: New file.
16913         * etc/images/gnus/toggle-subscription.pbm: New file.
16914         * etc/images/gnus/unimportant.pbm: New file.
16915         * etc/images/gud/all.pbm: New file.
16916         * etc/images/gud/rcont.pbm: New file.
16917         * etc/images/gud/recstart.pbm: New file.
16918         * etc/images/gud/recstop.pbm: New file.
16919         * etc/images/gud/rfinish.pbm: New file.
16920         * etc/images/gud/rnext.pbm: New file.
16921         * etc/images/gud/rnexti.pbm: New file.
16922         * etc/images/gud/rstep.pbm: New file.
16923         * etc/images/gud/rstepi.pbm: New file.
16924         * etc/images/gud/thread.pbm: New file.
16925         * etc/images/lock-broken.pbm: New file.
16926         * etc/images/lock-ok.pbm: New file.
16927         * etc/images/lock.pbm: New file.
16928         * etc/images/mail/copy.pbm: New file.
16929         * etc/images/mail/forward.pbm: New file.
16930         * etc/images/mail/not-spam.pbm: New file.
16931         * etc/images/mail/outbox.pbm: New file.
16932         * etc/images/mail/preview.pbm: New file.
16933         * etc/images/mail/save-draft.pbm: New file.
16934         * etc/images/mh-logo.pbm: New file.
16935         * etc/images/mpc/add.pbm: New file.
16936         * etc/images/mpc/ffwd.pbm: New file.
16937         * etc/images/mpc/next.pbm: New file.
16938         * etc/images/mpc/pause.pbm: New file.
16939         * etc/images/mpc/play.pbm: New file.
16940         * etc/images/mpc/prev.pbm: New file.
16941         * etc/images/mpc/rewind.pbm: New file.
16942         * etc/images/mpc/stop.pbm: New file.
16943         * etc/images/redo.pbm: New file.
16944         * etc/images/smilies/braindamaged.pbm: New file.
16945         * etc/images/smilies/cry.pbm: New file.
16946         * etc/images/smilies/dead.pbm: New file.
16947         * etc/images/smilies/evil.pbm: New file.
16948         * etc/images/smilies/forced.pbm: New file.
16949         * etc/images/smilies/grin.pbm: New file.
16950         * etc/images/smilies/indifferent.pbm: New file.
16951         * etc/images/sort-ascending.pbm: New file.
16952         * etc/images/sort-column-ascending.pbm: New file.
16953         * etc/images/sort-criteria.pbm: New file.
16954         * etc/images/sort-descending.pbm: New file.
16955         * etc/images/sort-row-ascending.pbm: New file.
16956         * etc/images/unchecked.pbm: New file.
16957         * etc/images/zoom-in.pbm: New file.
16958         * etc/images/README: Update instructions for PBM files.
16960         Add separator.pbm tool-bar image
16961         * etc/images/separator.pbm: New file.  Having it avoids the side
16962         effect of changing the tool-bar height when the default font's size
16963         changes and XPM image support is not available, due to the SPC
16964         characters that are left in the Lisp string used to display the tool
16965         bar, because there are no images to display instead of those SPC
16966         characters.
16968         Make show-paren-match face visible on mono-color displays
16969         * lisp/faces.el (show-paren-match): Use the underline face for
16970         mono-color displays.  (Bug#21481)
16972 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
16974         Don’t double-encode non-ASCII mail clipboard
16975         * lisp/mail/mailclient.el (mailclient-send-it):
16976         Also fix the case when mailclient-place-body-on-clipboard-flag
16977         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
16979 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
16981         Adapt file-notify-tests.el test cases
16982         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
16983         * src/inotify.c (Finotify_valid_p): Adapt docstring.
16984         * test/automated/file-notify-tests.el
16985         (file-notify-test03-autorevert)
16986         (file-notify-test04-file-validity)
16987         (file-notify-test04-file-validity-remote)
16988         (file-notify-test05-dir-validity)
16989         (file-notify-test05-dir-validity-remote): Adapt docstring.
16990         (file-notify-test04-file-validity): Let events arrive before
16991         calling final `file-notify-valid-p'.  Do not ignore errors.
16992         (file-notify-test05-dir-validity): Do not manipulate
16993         `temporary-file-directory', it isn't necessary.  Let events arrive
16994         before calling final `file-notify-valid-p'.  Do not ignore errors.
16996 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
16998         Don’t double-encode non-ASCII for mail client
16999         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
17000         Use RFC 6068’s list of unreserved characters.
17001         (mailclient-send-it): When encoding the body as a URL,
17002         first decode it as per Content-Type: and Content-Transfer-Encoding:,
17003         as URLs must use percent-encoded UTF-8 (Bug#21471).
17004         * doc/misc/url.texi (mailto): Update RFC number.
17006 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
17008         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
17010 2015-09-14  Alan Mackenzie  <acm@muc.de>
17012         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
17013         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
17014         `cadr/car'.
17016 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
17018         Clarify documentation of char-table extra slots
17019         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
17020         slot numbers are zero-based.  (Bug#21467)
17022 2015-09-14  Alan Mackenzie  <acm@muc.de>
17024         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
17025         Fixes bug#21449.
17026         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
17027         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
17028         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
17029         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
17030         Insert "\\|\\\\." into regexps which match symbols.
17032 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
17034         Improve the doc string of w32notify-valid-p
17035         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
17036         that removing a watch makes its object invalid.
17038 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
17040         Fix tests for file-notify-valid-p
17041         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
17042         Use delete-directory to delete file-notify--test-tmpfile if it is
17043         a directory.  Likewise for file-notify--test-tmpfile1.
17044         (file-notify-test04-file-validity)
17045         (file-notify-test05-dir-validity): Delete the parent directory of
17046         the test.  Ignore errors when cleaning up after the test.
17048 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
17050         Report file-notify-error in w32notify.c
17051         * src/w32notify.c (report_w32notify_error): New function.
17052         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
17053         errors, instead of calling report_file_error.  (Bug#21432)
17055         Implement w32notify-valid-p
17056         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
17057         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
17058         'identity'.
17060 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
17062         Test file-notify-valid-p
17063         * test/automated/file-notify-tests.el
17064         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
17065         New tests.
17067 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
17069         Fix markup in ELisp manual
17070         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
17071         of the 'alpha' parameter value.  (Bug#21470)
17073 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
17075         Introduce `file-notify-valid-p'
17076         * lisp/filenotify.el (file-notify-valid-p): New defun.
17077         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
17078         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
17079         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
17080         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
17081         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
17082         <file-notify-valid-p>: Add handler.
17083         * lisp/net/tramp.el (tramp-file-name-for-operation):
17084         Add `file-notify-valid-p'.
17085         (tramp-handle-file-notify-valid-p): New defun.
17086         * src/inotify.c (Finotify_valid_p): New defun.
17087         (syms_of_inotify): Declare Sinotify_valid_p.
17089 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
17091         Port Unicode char detection to FreeBSD+svgalib
17092         Problem reported by Ashish SHUKLA in:
17093         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
17094         * configure.ac: Check for struct unipair.unicode instead of for
17095         <linux/kd.h>, since that’s more specific to what the code
17096         actually needs.
17097         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
17099         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
17101 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
17103         Fix vertical cursor motion across overlay strings with newlines
17104         * src/indent.c (Fvertical_motion): Don't leave point in the middle
17105         of an overlay string with newlines, as that will position the
17106         cursor after the string at whatever column is there.  (Bug#21468)
17108 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
17110         Fix tests in file-notify-tests.el
17111         * test/automated/file-notify-tests.el: Remove Tramp declarations.
17112         (file-notify-test00-availability): Print remote command w/o Tramp
17113         internal functions.
17114         (file-notify-test02-events, file-notify-test02-events-remote):
17115         Adapt docstring.
17116         (file-notify-test03-autorevert): Use `format-message' when
17117         inspecting *Messages* buffer.
17119 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
17121         Bind inhibit-modification-hooks rather than a/b-c-f
17122         * lisp/wid-edit.el (widget-editable-list-insert-before)
17123         (widget-editable-list-delete-at):
17124         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
17125         (cperl-font-lock-unfontify-region-function):
17126         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
17127         * lisp/obsolete/longlines.el (longlines-mode):
17128         * lisp/obsolete/fast-lock.el (save-buffer-state):
17129         * lisp/mouse.el (mouse-save-then-kill-delete-region):
17130         * lisp/gnus/message.el (message-hide-headers):
17131         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
17132         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
17133         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
17134         than after/before-change-functions to nil.
17136 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
17138         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
17139         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
17140         the buffers, even if the forced redisplay is interrupted.
17142         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
17144         Merge syntax-propertize--done and parse-sexp-propertize-done
17145         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
17146         (syntax-propertize): Set syntax-propertize--done even if
17147         syntax-propertize-function is nil.  Avoid recursive invocations.
17148         (syntax-propertize-chunks): New var.
17149         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
17150         Simplify.
17151         (parse-sexp-propertize-function): Don't set any more.
17152         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
17153         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
17154         Call Qinternal__syntax_propertize instead of
17155         Vparse_sexp_propertize_function.  Truncate e_property if needed.
17156         (update_syntax_table_forward): Streamline.
17157         (syms_of_syntax): Define Qinternal__syntax_propertize.
17158         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
17160 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
17162         Prefer straight quoting in some text files
17163         Mostly this just changes ` to ' in static text.  Some exceptions:
17164         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
17165         typically does that now.
17166         * admin/quick-install-emacs (TRY, top level):
17167         Use straight quoting in diagnostics.
17168         * src/README: Fix working-directory confusion.
17170         * CONTRIBUTE: Move send-email here from git-workflow.
17172 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
17174         Improve file notifications in Tramp
17175         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
17176         Set proper events to watch for.
17177         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
17178         watched events.
17180 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
17182         Fix NS build with --enable-checking='glyphs'
17183         * src/nsfns.m (unwind_create_frame): Make the preprocessor
17184         conditionals for referencing 'dpyinfo' consistent throughout the
17185         function.  (Bug#21426)
17187 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
17189         Add seq-find
17190         This function is similar to `seq-some' but returns the found element.
17191         In the cases where nil can be the found element, a sentinel optional
17192         argument can be provided to avoid ambiguities.
17193         * lisp/emacs-lisp/seq.el (seq-find): New function.
17194         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
17195         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
17196         seq-find.
17198 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
17200         Document file-notify--test-with-events.
17201         * test/automated/file-notify-tests.el (file-notify--test-with-events):
17202         Add docstring.
17204 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
17206         Report used native library in file-notify-tests.el
17207         * test/automated/file-notify-tests.el
17208         (tramp-get-remote-gvfs-monitor-dir)
17209         (tramp-get-remote-inotifywait): Declare them.
17210         (file-notify-test00-availability): Print used native library.
17212 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
17214         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
17215         (mpc-file-local-copy): Check for absolute path.  Check more config
17216         locations.
17218 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
17220         Improve documentation of categories
17221         * doc/lispref/syntax.texi (Categories): Clarify the example of
17222         using define-category and modify-category-entry.  (Bug#21448)
17224 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
17226         Revert some stray curved quotes I missed earlier
17227         Problem reported by David Kastrup in:
17228         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
17229         * lisp/international/mule-cmds.el (leim-list-header):
17230         Use format-message with an ASCII-only format.
17232         Prefer NUMBERP to spelling it out
17233         * src/editfns.c (styled_format):
17234         * src/frame.h (NUMVAL):
17235         * src/image.c (parse_image_spec):
17236         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
17237         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
17238         * src/process.c (Fsignal_process):
17239         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
17240         * src/xfaces.c (check_lface_attrs):
17241         * src/xselect.c (x_fill_property_data, x_send_client_event):
17242         Use NUMBERP rather than INTEGERP || FLOATP.
17244 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
17246         Improve file-notify-tests
17247         * test/automated/file-notify-tests.el: Use lexical-binding.
17248         (file-notify--test-cleanup): New function.
17249         (file-notify-test00-availability, file-notify-test01-add-watch)
17250         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
17251         (file-notify--test-with-events): New macro.
17252         (file-notify-test02-events): Use it.
17254 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
17256         Add patch-sending instructions to git-workflow
17257         From a suggestion by Mitchel Humpherys in:
17258         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
17259         * admin/notes/git-workflow (Sending patches): New section.
17261         Port to GIFLIB 5.0.6 and later
17262         Problem reported by Mitchel Humpherys in:
17263         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
17264         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
17265         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
17266         (gif_load) [HAVE_GIF]: Use it.
17268 2015-09-10  Glenn Morris  <rgm@gnu.org>
17270         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
17272 2015-09-09  Glenn Morris  <rgm@gnu.org>
17274         * test/automated/file-notify-tests.el (file-notify-test02-events):
17275         Fix recent change.
17277 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
17279         Refix movemail GCC pacification
17280         Problem reported by Ken Brown in:
17281         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
17282         * lib-src/movemail.c (main): Fix previous change.
17284 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
17286         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
17287         Mark unused vars with underscore.
17289         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
17290         (parse_sexp_propertize): ...from here.
17292         * lisp/filenotify.el: Use lexical-binding
17293         (file-notify-add-watch): Avoid add-to-list.
17295 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
17297         Start checking event types in file-notify tests
17298         * test/automated/file-notify-tests.el (file-notify--test-events):
17299         New variable.
17300         (file-notify--test-event-handler): Append received event to
17301         file-notify--test-events for later analysis.
17302         (file-notify-test02-events): Assert that the expected notifications have
17303         arrived in the expected order.
17305 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
17307         Merge from gnulib and texinfo
17308         This incorporates:
17309         2015-08-03 Improve port of stdalign to C++11
17310         * lib/stdalign.in.h: Copy from gnulib.
17311         * doc/misc/texinfo.tex: Copy from texinfo.
17313 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
17315         Make syntax.c call syntax-propertize on demand
17316         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
17317         (parse-sexp-propertize-function): Use it.
17318         (syntax-propertize): Disable parse-sexp-propertize-function.
17319         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
17320         New functions.
17321         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
17322         `parse-sexp-propertize-function'.
17323         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
17324         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
17325         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
17326         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
17327         Don't assume `point' is set.
17329 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
17331         Fix indentation of an @example in ELisp manual
17332         * doc/lispref/syntax.texi (Categories): Untabify the example.
17333         (Bug#21448)
17335 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
17337         Define internal-char-font even if --without-x
17338         The function is used now even in non-graphical environments.
17339         Problem reported by Glenn Morris in:
17340         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
17341         * src/font.c (Finternal_char_font): Move here ...
17342         * src/fontset.c (Finternal_char_font): ... from here.
17344 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
17346         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
17347         Remove warning.
17349 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
17351         Fix display of complex local data types in GDB-MI
17352         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
17353         variable has no value, display "<complex data type>" as a
17354         placeholder, instead of a confusing "nil".  (Bug#21438)
17356 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
17358         Remove redundant redefinition of seq-drop-while from seq.el
17359         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
17361 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
17363         * lisp/emacs-lisp/package.el (package--ensure-init-file):
17364         More robust check for `package-initialize' calls in init file.
17365         This function accepts an optional argument, but calls passing
17366         an argument would not have been detected.
17368 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
17370         Port movemail to RHEL 6 with --enable-gcc-warnings
17371         * lib-src/movemail.c (main): Declare local only if needed.
17373         Port recent Linux console changes to RHEL 6
17374         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
17376         Improvements for curved quotes on Linux consule
17377         This should help Emacs work better out-of-the-box on Linux consoles,
17378         which have only limited support for displaying Unicode characters.
17379         Also, undo the recent change that caused text-quoting-style to
17380         affect quote display on terminals, so that the two features are
17381         independent.  See Alan Mackenzie in:
17382         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
17383         Finally, add a style parameter to startup--setup-quote-display,
17384         so that this function can also be invoked after startup, with
17385         different styles depending on user preference at the time.
17386         * configure.ac: Check for linux/kd.h header.
17387         * doc/emacs/display.texi (Text Display): Document quote display.
17388         * doc/lispref/display.texi (Active Display Table):
17389         * etc/NEWS:
17390         * lisp/startup.el (startup--setup-quote-display, command-line):
17391         text-quoting-style no longer affects quote display.
17392         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
17393         * lisp/international/mule-util.el (char-displayable-p):
17394         * lisp/startup.el (startup--setup-quote-display):
17395         On a text terminal supporting glyph codes, use the reported
17396         glyph codes instead of the terminal coding system, as this
17397         is more accurate on the Linux console.
17398         * lisp/startup.el (startup--setup-quote-display):
17399         New optional arg STYLE.
17400         * src/fontset.c (Finternal_char_font):
17401         Report glyph codes for a text terminal, if they are available.
17402         Currently this is supported only for the Linux console.
17403         * src/termhooks.h (struct terminal): New member glyph-code-table.
17404         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
17405         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
17406         (terminal_glyph_code): New function.
17408 2015-09-08  Juri Linkov  <juri@linkov.net>
17410         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
17411         underline.  (Bug#21433)
17413 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
17415         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
17417 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
17419         Fix double-reporting of rename events with inotify
17420         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
17421         of rename events with inotify (bug#21435).
17423 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
17425         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
17426         (tetris-mode-map): Use it.
17428 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
17430         Remove a few simple cases of global redisplay
17431         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
17432         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
17433         rather than returning a "resized_p" boolean.
17434         (redisplay_internal): Adjust call accordingly.
17435         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
17436         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
17437         tracking of this undesirable situation.
17439         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
17440         * src/process.c (status_notify): Only set the update_mode_line on the
17441         relevant buffers rather than setting it globally.
17443 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
17445         * lisp/electric.el (electric-quote-post-self-insert-function):
17446         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
17447         (electric-quote-mode): Activate everywhere in message-mode.
17449 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
17451         Go back to grave quoting in source-code docstrings etc.
17452         This reverts almost all my recent changes to use curved quotes
17453         in docstrings and/or strings used for error diagnostics.
17454         There are a few exceptions, e.g., Bahá’í proper names.
17455         * admin/unidata/unidata-gen.el (unidata-gen-table):
17456         * lisp/abbrev.el (expand-region-abbrevs):
17457         * lisp/align.el (align-region):
17458         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
17459         (outlineify-sticky):
17460         * lisp/apropos.el (apropos-library):
17461         * lisp/bookmark.el (bookmark-default-annotation-text):
17462         * lisp/button.el (button-category-symbol, button-put)
17463         (make-text-button):
17464         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
17465         * lisp/calc/calc-embed.el (calc-do-embedded):
17466         * lisp/calc/calc-ext.el (calc-user-function-list):
17467         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
17468         * lisp/calc/calc-help.el (calc-describe-key)
17469         (calc-describe-thing, calc-full-help):
17470         * lisp/calc/calc-lang.el (calc-c-language)
17471         (math-parse-fortran-vector-end, math-parse-tex-sum)
17472         (math-parse-eqn-matrix, math-parse-eqn-prime)
17473         (calc-yacas-language, calc-maxima-language, calc-giac-language)
17474         (math-read-giac-subscr, math-read-math-subscr)
17475         (math-read-big-rec, math-read-big-balance):
17476         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
17477         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
17478         (calc-auto-recompute):
17479         * lisp/calc/calc-prog.el (calc-fix-token-name)
17480         (calc-read-parse-table-part, calc-user-define-invocation)
17481         (math-do-arg-check):
17482         * lisp/calc/calc-store.el (calc-edit-variable):
17483         * lisp/calc/calc-units.el (math-build-units-table-buffer):
17484         * lisp/calc/calc-vec.el (math-read-brackets):
17485         * lisp/calc/calc-yank.el (calc-edit-mode):
17486         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
17487         * lisp/calendar/appt.el (appt-display-message):
17488         * lisp/calendar/diary-lib.el (diary-check-diary-file)
17489         (diary-mail-entries, diary-from-outlook):
17490         * lisp/calendar/icalendar.el (icalendar-export-region)
17491         (icalendar--convert-float-to-ical)
17492         (icalendar--convert-date-to-ical)
17493         (icalendar--convert-ical-to-diary)
17494         (icalendar--convert-recurring-to-diary)
17495         (icalendar--add-diary-entry):
17496         * lisp/calendar/time-date.el (format-seconds):
17497         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
17498         (timeclock-make-hours-explicit, timeclock-log-data):
17499         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
17500         (todo-item-mark, todo-check-format)
17501         (todo-insert-item--next-param, todo-edit-item--next-key)
17502         (todo-mode):
17503         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
17504         * lisp/cedet/mode-local.el (describe-mode-local-overload)
17505         (mode-local-print-binding, mode-local-describe-bindings-2):
17506         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
17507         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
17508         * lisp/cus-start.el (standard):
17509         * lisp/cus-theme.el (describe-theme-1):
17510         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
17511         (custom--sort-vars-1, load-theme):
17512         * lisp/descr-text.el (describe-text-properties-1, describe-char):
17513         * lisp/dired-x.el (dired-do-run-mail):
17514         * lisp/dired.el (dired-log):
17515         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
17516         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
17517         (ad-disable-advice, ad-remove-advice, ad-set-argument)
17518         (ad-set-arguments, ad--defalias-fset, ad-activate)
17519         (ad-deactivate):
17520         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
17521         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
17522         (byte-optimize-while, byte-optimize-apply):
17523         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
17524         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
17525         (byte-compile-log-file, byte-compile-format-warn)
17526         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
17527         (byte-compile-cl-warn)
17528         (byte-compile-warn-about-unresolved-functions)
17529         (byte-compile-file, byte-compile--declare-var)
17530         (byte-compile-file-form-defmumble, byte-compile-form)
17531         (byte-compile-normal-call, byte-compile-check-variable)
17532         (byte-compile-variable-ref, byte-compile-variable-set)
17533         (byte-compile-subr-wrong-args, byte-compile-setq-default)
17534         (byte-compile-negation-optimizer)
17535         (byte-compile-condition-case--old)
17536         (byte-compile-condition-case--new, byte-compile-save-excursion)
17537         (byte-compile-defvar, byte-compile-autoload)
17538         (byte-compile-lambda-form)
17539         (byte-compile-make-variable-buffer-local, display-call-tree)
17540         (batch-byte-compile):
17541         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
17542         * lisp/emacs-lisp/chart.el (chart-space-usage):
17543         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
17544         (check-declare-warn, check-declare-file)
17545         (check-declare-directory):
17546         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
17547         (checkdoc-message-text-engine):
17548         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
17549         (cl--describe-class):
17550         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
17551         (cl--generic-describe, cl-generic-generalizers):
17552         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
17553         (cl-symbol-macrolet):
17554         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
17555         * lisp/emacs-lisp/copyright.el (copyright)
17556         (copyright-update-directory):
17557         * lisp/emacs-lisp/edebug.el (edebug-read-list):
17558         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
17559         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
17560         (eieio-oref):
17561         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
17562         * lisp/emacs-lisp/eieio-speedbar.el:
17563         (eieio-speedbar-child-make-tag-lines)
17564         (eieio-speedbar-child-description):
17565         * lisp/emacs-lisp/eieio.el (defclass, change-class):
17566         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
17567         (elint-init-form, elint-check-defalias-form)
17568         (elint-check-let-form):
17569         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
17570         (ert-results-pop-to-backtrace-for-test-at-point)
17571         (ert-results-pop-to-messages-for-test-at-point)
17572         (ert-results-pop-to-should-forms-for-test-at-point)
17573         (ert-describe-test):
17574         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
17575         (find-function-library):
17576         * lisp/emacs-lisp/generator.el (iter-yield):
17577         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
17578         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
17579         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
17580         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
17581         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
17582         (advice--make, define-advice):
17583         * lisp/emacs-lisp/package-x.el (package-upload-file):
17584         * lisp/emacs-lisp/package.el (package-version-join)
17585         (package-disabled-p, package-activate-1, package-activate)
17586         (package--download-one-archive)
17587         (package--download-and-read-archives)
17588         (package-compute-transaction, package-install-from-archive)
17589         (package-install, package-install-selected-packages)
17590         (package-delete, package-autoremove, describe-package-1)
17591         (package-install-button-action, package-delete-button-action)
17592         (package-menu-hide-package, package-menu--list-to-prompt)
17593         (package-menu--perform-transaction)
17594         (package-menu--find-and-notify-upgrades):
17595         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
17596         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
17597         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
17598         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
17599         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
17600         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
17601         (rx-form):
17602         * lisp/emacs-lisp/smie.el (smie-config-save):
17603         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
17604         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
17605         * lisp/emacs-lisp/testcover.el (testcover-1value):
17606         * lisp/emacs-lisp/timer.el (timer-event-handler):
17607         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
17608         (viper-toggle-search-style, viper-kill-buffer)
17609         (viper-brac-function):
17610         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
17611         * lisp/env.el (setenv):
17612         * lisp/erc/erc-button.el (erc-nick-popup):
17613         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
17614         * lisp/eshell/em-dirs.el (eshell/cd):
17615         * lisp/eshell/em-glob.el (eshell-glob-regexp)
17616         (eshell-glob-entries):
17617         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
17618         * lisp/eshell/esh-opt.el (eshell-show-usage):
17619         * lisp/facemenu.el (facemenu-add-new-face)
17620         (facemenu-add-new-color):
17621         * lisp/faces.el (read-face-name, read-face-font, describe-face)
17622         (x-resolve-font-name):
17623         * lisp/files-x.el (modify-file-local-variable):
17624         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
17625         (set-auto-mode, hack-one-local-variable--obsolete)
17626         (dir-locals-set-directory-class, write-file, basic-save-buffer)
17627         (delete-directory, copy-directory, recover-session)
17628         (recover-session-finish, insert-directory)
17629         (file-modes-char-to-who, file-modes-symbolic-to-number)
17630         (move-file-to-trash):
17631         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
17632         * lisp/find-cmd.el (find-generic, find-to-string):
17633         * lisp/finder.el (finder-commentary):
17634         * lisp/font-lock.el (font-lock-fontify-buffer):
17635         * lisp/format.el (format-write-file, format-find-file)
17636         (format-insert-file):
17637         * lisp/frame.el (get-device-terminal, select-frame-by-name):
17638         * lisp/fringe.el (fringe--check-style):
17639         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
17640         * lisp/help-fns.el (help-fns--key-bindings)
17641         (help-fns--compiler-macro, help-fns--parent-mode)
17642         (help-fns--obsolete, help-fns--interactive-only)
17643         (describe-function-1, describe-variable):
17644         * lisp/help.el (describe-mode)
17645         (describe-minor-mode-from-indicator):
17646         * lisp/image.el (image-type):
17647         * lisp/international/ccl.el (ccl-dump):
17648         * lisp/international/fontset.el (x-must-resolve-font-name):
17649         * lisp/international/mule-cmds.el (prefer-coding-system)
17650         (select-safe-coding-system-interactively)
17651         (select-safe-coding-system, activate-input-method)
17652         (toggle-input-method, describe-current-input-method)
17653         (describe-language-environment):
17654         * lisp/international/mule-conf.el (code-offset):
17655         * lisp/international/mule-diag.el (describe-character-set)
17656         (list-input-methods-1):
17657         * lisp/mail/feedmail.el (feedmail-run-the-queue):
17658         * lisp/mouse.el (minor-mode-menu-from-indicator):
17659         * lisp/mpc.el (mpc-playlist-rename):
17660         * lisp/msb.el (msb--choose-menu):
17661         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
17662         * lisp/net/imap.el (imap-interactive-login):
17663         * lisp/net/mairix.el (mairix-widget-create-query):
17664         * lisp/net/newst-backend.el (newsticker--sentinel-work):
17665         * lisp/net/newst-treeview.el (newsticker--treeview-load):
17666         * lisp/net/rlogin.el (rlogin):
17667         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
17668         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
17669         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
17670         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
17671         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
17672         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
17673         (org-babel-goto-named-result):
17674         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
17675         * lisp/org/ob-ref.el (org-babel-ref-resolve):
17676         * lisp/org/org-agenda.el (org-agenda-prepare):
17677         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
17678         (org-clock-resolve):
17679         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
17680         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
17681         * lisp/org/org-habit.el (org-habit-parse-todo):
17682         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
17683         (org-mouse-context-menu):
17684         * lisp/org/org-table.el (org-table-edit-formulas):
17685         * lisp/org/ox.el (org-export-async-start):
17686         * lisp/proced.el (proced-log):
17687         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
17688         (ada-check-matching-start, ada-goto-matching-start):
17689         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
17690         * lisp/progmodes/ada-xref.el (ada-find-executable):
17691         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
17692         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
17693         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
17694         (flymake-start-syntax-check-process):
17695         * lisp/progmodes/python.el (python-shell-get-process-or-error)
17696         (python-define-auxiliary-skeleton):
17697         * lisp/progmodes/sql.el (sql-comint):
17698         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
17699         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
17700         * lisp/recentf.el (recentf-open-files):
17701         * lisp/replace.el (query-replace-read-from)
17702         (occur-after-change-function, occur-1):
17703         * lisp/scroll-bar.el (scroll-bar-columns):
17704         * lisp/server.el (server-get-auth-key):
17705         * lisp/simple.el (execute-extended-command)
17706         (undo-outer-limit-truncate, list-processes--refresh)
17707         (compose-mail, set-variable, choose-completion-string)
17708         (define-alternatives):
17709         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
17710         (command-line-1):
17711         * lisp/subr.el (noreturn, define-error, add-to-list)
17712         (read-char-choice, version-to-list):
17713         * lisp/term/common-win.el (x-handle-xrm-switch)
17714         (x-handle-name-switch, x-handle-args):
17715         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
17716         * lisp/textmodes/reftex-ref.el (reftex-label):
17717         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
17718         * lisp/textmodes/two-column.el (2C-split):
17719         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
17720         (tutorial--find-changed-keys):
17721         * lisp/type-break.el (type-break-noninteractive-query):
17722         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
17723         (wdired-do-perm-changes):
17724         * lisp/whitespace.el (whitespace-report-region):
17725         Prefer grave quoting in source-code strings used to generate help
17726         and diagnostics.
17727         * lisp/faces.el (face-documentation):
17728         No need to convert quotes, since the result is a docstring.
17729         * lisp/info.el (Info-virtual-index-find-node)
17730         (Info-virtual-index, info-apropos):
17731         Simplify by generating only curved quotes, since info files are
17732         typically that ways nowadays anyway.
17733         * lisp/international/mule-diag.el (list-input-methods):
17734         Don’t assume text quoting style is curved.
17735         * lisp/org/org-bibtex.el (org-bibtex-fields):
17736         Revert my recent changes, going back to the old quoting style.
17738 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17740         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
17741         (package--autoloads-file-name)
17742         (package--activate-autoloads-and-load-path): New function.
17743         (package-activate-1): Delegate autoloading and load-path
17744         configuration to `package--activate-autoloads-and-load-path'.
17745         (package--compile): Before compilation, call
17746         `package--activate-autoloads-and-load-path' instead of
17747         `package-activate-1'.
17749 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
17751         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
17753 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
17755         Fix deletion of symlinks to directories on MS-Windows
17756         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
17757         symlink to a directory, try again with 'rmdir'.
17758         (is_symlink): If the argument is a symlink to a directory, set a
17759         bit in the return value to indicate that fact.
17761 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17763         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
17764         When `package-initialize' is called as part of loading the init file,
17765         the user probably doesn't want it to be called again afterwards.
17766         In this situation, `package-initialize' now sets
17767         `package-enable-at-startup' to nil to prevent that.  The user can have
17768         the old behavior by setting this variable to t after the call to
17769         `package-initialize'.  (Bug#21423)
17770         * doc/emacs/package.texi (Package Installation): Document it.
17771         * doc/lispref/package.texi (Packaging Basics): Document it.
17772         * etc/NEWS: Document it.
17774 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17776         Bump version of ntlm.el to 2.00
17777         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
17778         Add comm keyword.
17780 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
17782         * doc/misc/gnus.texi (Mail Source Specifiers):
17783         Allow :mailbox to be a list.
17785 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
17787         * lisp/progmodes/etags.el (etags-tags-completion-table):
17788         Allow even one non-regular character before the implicit tag name.
17789         Reported at http://emacs.stackexchange.com/questions/15269/.
17791 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17793         Add support for NTLMv2 authentication
17794         * lisp/net/ntlm.el (ntlm): New customization group.
17795         (ntlm-compatibility-level): New defcustom.
17796         (ntlm-compute-timestamp): New function.
17797         (ntlm-generate-nonce): Likewise.
17798         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
17800 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
17802         * lisp/emacs-lisp/package.el: Rename custom faces.
17803         All of the recently introduced faces, like `package-name-face', have
17804         been renamed to no end in `-face' to comply with the convention
17805         described in (info "(elisp) Defining Faces").
17806         (package-name, package-description)
17807         (package-status-built-in, package-status-external)
17808         (package-status-available, package-status-new)
17809         (package-status-held, package-status-disabled)
17810         (package-status-installed, package-status-dependency)
17811         (package-status-unsigned, package-status-incompat)
17812         (package-status-avail-obso): New faces.
17813         (package-menu--print-info-simple): Use them.
17815 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
17817         mail-source.el: Make the imap mail-source's :mailbox handle a list
17818         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
17819         Allow :mailbox to be  a list.
17821 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
17823         nnimap.el: Handle nil arg to nnimap-request-group
17824         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
17825         This arg isn't always passed in, check it's not nil before making it
17826         into a list.  The active arg will also be nil if the group is new,
17827         check for that.
17829 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
17831         File notifications: Support renaming over directory boundaries
17832         * lisp/filenotify.el (file-notify-handle-event):
17833         (file-notify--pending-event): Adapt docstring.
17834         (file-notify--descriptor, file-notify-callback): Reimplement in
17835         order to support renaming over directory boundaries.
17836         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
17837         * doc/lispref/os.texi (File Notifications): Remove limitation of
17838         file renaming to the same directory.
17840 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
17842         Spelling fix (Bug#21420)
17844 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
17846         Improve the semantic of map-some
17847         Update map-some to return the returned by the predicate, similar to
17848         seq-some.
17849         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
17850           return value of the predicate.
17851         * test/automated/map-tests.el (test-map-some): Update the test to check
17852           for non-nil values only.
17854         Rename map-contains-key-p and map-some-p
17855         Remove the "-p" suffix from both function names.
17856         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
17857           Rename the functions.
17858         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
17859           Update both test functions.
17861         Improve the semantic of seq-some
17862         Update seq-some to return non-nil if the predicate returns non-nil for
17863         any element of the seq, in which case the returned value is the one
17864         returned by the predicate.
17865         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
17866           docstring.
17867         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
17868         * doc/lispref/sequences.texi (Sequence Functions): Update the
17869           documentation for seq-some.
17871         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
17872         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
17873           without the "-p" prefix.
17874         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
17875           the tests accordingly.
17876         * doc/lispref/sequences.texi (Sequence Functions): Update the
17877           documentation for seq.el.
17879 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
17881         text-quoting-style for usage of fn names with ‘’
17882         * lisp/help.el (help--docstring-quote): Don’t assume
17883         text-quoting-style is ‘curve’ when generating usage strings for
17884         functions whose names contain curved quotes.
17886 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
17888         Fix fix for describe-function keybinding confusion
17889         This fixes a bug introduced by the previous patch.
17890         * lisp/help-fns.el (help-fns--signature):
17891         Last arg of help-fns--signature is now a buffer, or nil if a
17892         raw signature is wanted.  All callers changed.
17893         (describe-function-1): Use this to do the right thing with signatures.
17895 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
17897         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
17899         Use PAT rather than UPAT in pcase macros
17900         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
17901         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
17902           than UPAT.
17904 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
17906         Fix describe-function keybinding confusion
17907         * lisp/help-fns.el (describe-function-1): Compute signature
17908         in the original buffer, not in standard-output, so that
17909         substitute-command-keys uses the proper keybindings.
17910         This fixes Bug#21412, introduced in commit
17911         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
17913 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
17915         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
17917 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
17919         Avoid read error messages from 'inotify'
17920         * src/process.c (wait_reading_process_output): Add a
17921         'tls_available' set and manipulate it instead of 'Available' when
17922         checking TLS inputs.  Assign the value to 'Available' only if we
17923         find any TLS data waiting to be read.  This avoids error messages
17924         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
17926 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
17928         Avoid errors in thing-at-point with 2nd argument non-nil
17929         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
17930         sequences.  (Bug#21391)
17932 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
17934         Fix segfaults due to using a stale face ID
17935         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
17936         (display_echo_area_1, redisplay_internal): Call it to avoid
17937         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
17938         faces, which could case a segfault if the frame's face cache was
17939         freed since the last redisplay.  (Bug#21394)
17940         * src/xfaces.c (free_realized_faces):
17941         Call forget_escape_and_glyphless_faces.
17942         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
17944 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
17946         Fix minor problems with " in manual
17948 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
17950         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
17951         multi-hop files.
17953 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
17955         Support automated ‘make check’ in non-C locale
17956         This lets the builder optionally test Emacs behavior in other locales.
17957         The C locale is still the default for tests.
17958         * test/automated/Makefile.in (TEST_LOCALE): New macro.
17959         (emacs): Use it.
17960         * test/automated/flymake-tests.el (flymake-tests--current-face):
17961         Use C locale for subprocesses so that tests behave as expected.
17962         * test/automated/python-tests.el:
17963         (python-shell-prompt-validate-regexps-1)
17964         (python-shell-prompt-validate-regexps-2)
17965         (python-shell-prompt-validate-regexps-3)
17966         (python-shell-prompt-validate-regexps-4)
17967         (python-shell-prompt-validate-regexps-5)
17968         (python-shell-prompt-validate-regexps-6)
17969         (python-shell-prompt-set-calculated-regexps-1):
17970         Adjust expected output to match locale.
17971         * test/automated/tildify-tests.el (tildify-test--test)
17972         (tildify-space-test--test, tildify-space-undo-test--test):
17973         This test assumes UTF-8 encoding.
17975 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
17977         Fix some more docstring etc. quoting problems
17978         Mostly these fixes prevent the transliteration of apostrophes
17979         that should stay apostrophes.  Also, prefer curved quotes in
17980         Bahá’í proper names, as that’s the preferred Bahá’í style and
17981         these names are chock-full of non-ASCII characters anyway.
17982         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
17983         (eieio-defclass-internal):
17984         * lisp/emacs-lisp/eieio.el (defclass):
17985         * lisp/hi-lock.el (hi-lock-mode):
17986         Don’t transliterate Lisp apostrophes when generating a
17987         doc string or diagnostic.
17988         * lisp/international/mule-diag.el (list-coding-systems-1):
17989         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
17990         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
17991         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
17992         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
17993         Substitute quotes before putting them in the help buffer.
17995 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
17997         Re-add the notion of echo_prompt lost in the translation
17998         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
17999         echo_prompt which contains the actual string.  Update all uses.
18000         * src/keyboard.c (kset_echo_prompt): New function.
18001         (echo_update): Add echo_prompt at the very beginning.
18002         (read_char): Remove workaround for bug#19875, not needed any more.
18003         (read_key_sequence): Set echo_prompt rather than echo_string
18004         (bug#21403).
18005         (mark_kboards): Mark echo_prompt.
18007         Fix disassembly of non-compiled lexical functions (bug#21377)
18008         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
18009         * lisp/emacs-lisp/disass.el: Use lexical-binding.
18010         (disassemble): Recognize `closure's as well.
18011         (disassemble-internal): Use indirect-function and
18012         help-function-arglist, and accept `closure's.
18013         (disassemble-internal): Use interactive-form.
18014         (disassemble-1): Use functionp.
18016         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
18017         Don't compose inside verbatim blocks!
18019 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
18021         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
18022         (bug#19441).
18024         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
18026 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
18028         vc-git-mode-line-string: Explicitly re-apply the face
18029         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
18030         the face (bug#21404).
18032 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
18034         Treat initial-scratch-message as a doc string
18035         * doc/emacs/building.texi (Lisp Interaction):
18036         * doc/lispref/os.texi (Startup Summary):
18037         * etc/NEWS: Document this.
18038         * lisp/startup.el (initial-scratch-message):
18039         Look up find-file’s key rather than hardcoding it.
18040         (command-line-1): Substitute the doc string.
18041         This also substitutes the quotes, which will help test display
18042         quoting at startup.
18044         Fix describe-char bug with glyphs on terminals
18045         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
18046         buffers too, so don’t treat them differently from graphic displays.
18047         Without this fix, describe-char would throw an error on a terminal
18048         if given a glyph with a non-default face.
18050         Follow text-quoting-style in display table init
18051         This attempts to fix a problem reported by Alan Mackenzie in:
18052         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
18053         * doc/lispref/display.texi (Active Display Table):
18054         Mention how text-quoting-style affects it.
18055         * doc/lispref/help.texi (Keys in Documentation):
18056         Say how to set text-quoting-style in ~/.emacs.
18057         * etc/NEWS: Document the change.
18058         * lisp/startup.el (startup--setup-quote-display):
18059         Follow user preference if text-quoting-style is set.
18060         (command-line): Setup quote display again if user expresses
18061         a preference in .emacs.
18063 2015-09-02  K. Handa  <handa@gnu.org>
18065         Fix typo
18066         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
18067         -> OTF_positioning_type_components_mask.
18069         Fix previous change
18070         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
18071         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
18073 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
18075         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
18076         Rename from vc-find-file-hook and make interactive.
18077         (vc-find-file-hook): Redefine as obsolete alias.
18079 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
18081         Escape ` and ' in doc
18082         Escape apostrophes and grave accents in docstrings if they are
18083         are supposed to stand for themselves and are not quotes.  Remove
18084         apostrophes from docstring examples like ‘'(calendar-nth-named-day
18085         -1 0 10 year)’ that confuse source code with data.  Do some other
18086         minor docstring fixups as well, e.g., insert a missing close quote.
18088 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
18090         Generalize the prefix-command machinery of C-u
18091         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
18092         (prefix-command-preserve-state-hook): New hooks.
18093         (internal-echo-keystrokes-prefix): New function.
18094         (prefix-command--needs-update, prefix-command--last-echo): New vars.
18095         (prefix-command-update, prefix-command-preserve): New functions.
18096         (reset-this-command-lengths): New compatibility definition.
18097         (universal-argument--mode): Call prefix-command-update.
18098         (universal-argument, universal-argument-more, negative-argument)
18099         (digit-argument): Call prefix-command-preserve-state.
18100         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
18101         the "prefix argument" to echo.
18102         (this_command_key_count_reset, before_command_key_count)
18103         (before_command_echo_length): Delete variables.
18104         (echo_add_key): Always add a space.
18105         (echo_char): Remove.
18106         (echo_dash): Don't give up when this_command_key_count is 0, since that
18107         is now the case after a prefix command.
18108         (echo_update): New function, extracted from echo_now.
18109         (echo_now): Use it.
18110         (add_command_key, read_char, record_menu_key): Remove old disabled code.
18111         (command_loop_1): Don't refrain from pushing an undo boundary when
18112         prefix-arg is set.  Remove other prefix-arg special case, now handled
18113         directly in the prefix commands instead.  But call echo_now if there's
18114         a prefix state to echo.
18115         (read_char, record_menu_key): Use echo_update instead of echo_char.
18116         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
18117         (Freset_this_command_lengths): Delete function.
18118         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
18119         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
18120         * lisp/simple.el: Use those new hooks for C-u.
18121         (universal-argument--description): New function.
18122         (prefix-command-echo-keystrokes-functions): Use it.
18123         (universal-argument--preserve): New function.
18124         (prefix-command-preserve-state-hook): Use it.
18125         (command-execute): Call prefix-command-update if needed.
18126         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
18127         (kmacro-step-edit-prefix-index): Delete variables.
18128         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
18129         support for prefix arg commands.
18130         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
18131         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
18132         (cua--shift-control-prefix): Use prefix-command-preserve-state.
18133         Remove now unused arg `arg'.
18134         (cua--prefix-override-handler, cua--prefix-repeat-handler)
18135         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
18136         Update accordingly.
18137         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
18138         any more.
18139         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
18140         if the mark is not set.
18142 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
18144         Rework quoting in Emacs Lisp Introduction
18145         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
18146         (if in more detail, type-of-animal in detail, else): Rework the
18147         early example to use " rather than ' so that we don’t burden
18148         complete novices with the low-priority detail of text quoting style.
18149         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
18150         (kill-new function, kill-ring-yank-pointer)
18151         (Complete forward-sentence, Loading Files)
18152         (Code for current-kill, Code for current-kill, yank):
18153         Resurrect the Emacs 22 versions of the code, which uses grave
18154         quoting style in doc strings.
18155         (Complete zap-to-char): Mention how quoting works in doc strings.
18157         Setup quote display only if interactive
18158         * lisp/startup.el (command-line):
18159         Skip call to startup--setup-quote-display if noninteractive.
18160         Without this change, python-shell-prompt-validate-regexps-1
18161         fails in test/automated/python-tests.el when run in an
18162         en_US.utf8 locale on Fedora.
18164 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
18166         Use defalias at the top level
18167         * lisp/gnus/gnus-util.el (gnus-format-message):
18168         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
18169         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
18171 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
18173         terminal-init-w32console mimicks command-line
18174         Problem reported by Eli Zaretskii.
18175         * lisp/startup.el (startup--setup-quote-display):
18176         New function, refactored from a part of ‘command-line’.
18177         (command-line): Use it.
18178         * lisp/term/w32console.el (terminal-init-w32console):
18179         Use it, so that this function stays consistent with ‘command-line’.
18181         Display replacement quotes with shadow glyphs
18182         * lisp/startup.el (command-line): When displaying ASCII
18183         replacements for curved quotes, use a shadow glyph instead of a
18184         regular one, to avoid ambiguity.
18186 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
18188         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
18190 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
18192         Docstring fixes re quotes in C code
18193         Fix some docstring quoting problems, mostly by escaping apostrophe.
18195 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
18197         Some Tramp password fixes
18198         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
18199         of the hops.
18200         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
18201         at the beginning of the command.  Otherwise, it could be
18202         interpreted as password prompt if the remote host echoes the
18203         command.
18204         (tramp-remote-coding-commands): Add "openssl enc -base64".
18206 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
18208         Make vc-git-working-revision always return the commit hash
18209         * lisp/vc/vc-git.el (vc-git-working-revision):
18210         Return the commit hash (bug#21383).
18211         (vc-git--symbolic-ref): New function, extracted from above.
18212         (vc-git-mode-line-string): Use it.
18214 2015-09-01  K. Handa  <handa@gnu.org>
18216         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
18217         * src/ftfont.c (MFLTGlyphFT): New type.
18218         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
18219         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
18220         elements in the array MFLTGlyphString.glyphs.
18222 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
18224         Improve comments in elisp-mode.el, elisp-mode-tests.el
18225         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
18227         Delete Emacs 25 test in mode-local.el
18228         * lisp/cedet/mode-local.el (describe-mode-local-overload):
18229         Fix missed an edit in previous commit.
18231         Show all known mode-local overrides in *Help*
18232         * lisp/cedet/mode-local.el (describe-mode-local-overload):
18233         Assume Emacs 25. Add all known mode-local overrides.
18235 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
18237         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
18238         Ensure that the article where the search word is found is displayed
18239         and pointed to in the summary buffer.
18241 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
18243         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
18244         When the region is active, but is empty (length 0), act as though
18245         the region was not active; that is, put a comment at the end of
18246         the line.  (Bug#21119)
18248 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
18250         Port tls.el to older Emacs
18251         * lisp/net/tls.el (tls-format-message):
18252         Alias to format-message, or format if not available.
18253         (open-tls-stream): Use it.
18255 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
18257         hideif.el: Recognize .h++ as C++ header
18258         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
18260         isearch: Document character folding mode
18261         * lisp/isearch.el (isearch-forward):
18262         Mention `isearch-toggle-character-fold' in doc string.
18264 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
18266         Quoting fixes in ERC and Eshell
18267         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
18268         * lisp/erc/erc-backend.el (define-erc-response-handler):
18269         * lisp/erc/erc-fill.el (erc-fill-static-center):
18270         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
18271         * lisp/eshell/em-glob.el (eshell-glob-entries):
18272         * lisp/eshell/em-hist.el (eshell-save-some-history):
18273         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
18274         (eshell-shuffle-files):
18275         * lisp/eshell/esh-cmd.el (eshell-do-eval):
18276         * lisp/eshell/esh-proc.el (eshell-process-interact)
18277         (eshell-query-kill-processes):
18278         Respect ‘text-quoting-style’ in diagnostics and doc strings.
18280         Quoting fixes in Gnus
18281         * lisp/gnus/gnus-agent.el:
18282         (gnus-agent-possibly-synchronize-flags-server):
18283         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
18284         * lisp/gnus/gnus-eform.el (gnus-edit-form):
18285         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
18286         (gnus-group-nnimap-edit-acl):
18287         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
18288         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
18289         * lisp/gnus/message.el (message-strip-subject-encoded-words)
18290         (message-check-recipients, message-send-form-letter):
18291         * lisp/gnus/mm-decode.el (mm-display-part):
18292         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
18293         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
18294         (mml-smime-get-ldap-cert):
18295         * lisp/gnus/spam-report.el (spam-report-process-queue):
18296         Respect ‘text-quoting-style’ in diagnostics.
18297         * lisp/gnus/gnus-art.el (article-display-face)
18298         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
18299         Use straight quoting in email.
18300         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
18301         Escape apostrophes in doc strings.
18303         Quoting fixes in lisp mail, mh-e, net, url
18304         * lisp/mail/emacsbug.el (report-emacs-bug)
18305         (report-emacs-bug-hook): Use straight quotes in outgoing email,
18306         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
18307         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
18308         * lisp/mail/rmailout.el (rmail-output-read-file-name):
18309         * lisp/net/imap.el (imap-interactive-login):
18310         * lisp/net/tls.el (open-tls-stream):
18311         * lisp/url/url-auth.el (url-register-auth-scheme):
18312         Respect ‘text-quoting-style’ in diagnostics.
18313         * lisp/mh-e/mh-e.el (mh-sortm-args):
18314         Quote docstring example using text quotes, not as a Lisp quote.
18316 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
18318         Fix some byte-compiler warnings in EDE
18319         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
18320         existing autoloader list, rather than add to it.
18321         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
18322         argument to eieio class constructor.
18323         (ede-show-supported-projects): New.
18324         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
18325         with (oref ... name).
18326         (ede-auto-load-project): Use slot name, not initarg key.
18327         * lisp/cedet/ede/generic.el (ede-generic-load)
18328         (ede-generic-find-matching-target): Use slot name, not initarg key.
18329         (ede-find-target): Use oref-default on class name.
18330         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
18331         class constructor.
18332         (ede-enable-generic-projects): Make project type names unique.
18334 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
18336         Fix directory accessibility tests for w32 network volumes
18337         * src/w32.c (faccessat): Don't fail with network volumes without a
18338         share.
18339         (w32_accessible_directory_p): Handle network volumes without a
18340         share.
18342         Fix handling long file names in readdir on MS-Windows
18343         * src/w32.c (sys_readdir): Append "\*" to the directory after
18344         converting it to UTF-16/ANSI, not before, to avoid overflowing the
18345         260-character limit on file names in filename_to_utf16/ansi.
18347         Make file-accessible-directory-p reliable on MS-Windows
18348         * src/w32.c (w32_accessible_directory_p): New function.
18349         * src/w32.h (w32_accessible_directory_p): Add prototype.
18350         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
18351         w32_accessible_directory_p to test a directory for accessibility
18352         by the current user.  (Bug#21346)
18353         (Ffile_accessible_directory_p): Remove the w32 specific caveat
18354         from the doc string.
18356 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
18358         Don't call do_pending_window_change in signal handlers (Bug#21380)
18359         * src/gtkutil.c (xg_frame_resized):
18360         * src/xterm.c (x_set_window_size):
18361         * src/w32term.c (x_set_window_size): Don't call
18362         do_pending_window_change.
18364 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
18366         Quoting fixes in lisp/org
18367         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
18368         (org-tags-view):
18369         * lisp/org/org-capture.el (org-capture-mode)
18370         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
18371         (org-ctags-ask-append-topic):
18372         * lisp/org/org.el (org-time-string-to-time)
18373         (org-time-string-to-absolute):
18374         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
18375         (org-ctags-ask-append-topic):
18376         * lisp/org/org.el (org-time-string-to-time)
18377         (org-time-string-to-absolute):
18378         Respect ‘text-quoting-style’ in diagnostics.
18379         * lisp/org/org-agenda.el (org-agenda-custom-commands)
18380         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
18381         * lisp/org/org-capture.el (org-capture-fill-template):
18382         Avoid contraction in output file that might be ASCII.
18383         * lisp/org/org-compat.el (format-message):
18384         Define if not already defined, for backward compatibility.
18385         * lisp/org/org-src.el (org-edit-src-save):
18386         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
18387         Escape apostrophes in diagnostics.
18389         Treat “instead” strings as docstrings
18390         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
18391         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
18392         Substitute quotes in instead strings.
18394 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
18396         Better documentation of seq-let
18397         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
18398         documentation of seq-let.
18400 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
18402         * lisp/international/ccl.el: Fix quoting.
18404         Quoting fixes in lisp/international and lisp/leim
18405         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
18406         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
18407         * lisp/international/mule-cmds.el:
18408         (select-safe-coding-system-interactively, leim-list-file-name):
18409         * lisp/international/quail.el (quail-use-package, quail-help):
18410         * lisp/international/titdic-cnv.el (tit-process-header)
18411         (miscdic-convert):
18412         Respect text quoting style in doc strings and diagnostics.
18413         * lisp/international/quail.el (lisp/international/quail.el):
18414         * lisp/leim/quail/ethiopic.el ("ethiopic"):
18415         Escape apostrophes in doc strings.
18417         Make ‘text-quoting-style’ a plain defvar
18418         It doesn’t need customization, as it’s likely useful only by experts.
18419         Suggested by Stefan Monnier in:
18420         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
18421         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
18423         Quoting fixes in lisp/textmodes
18424         * lisp/textmodes/bibtex.el (bibtex-validate)
18425         (bibtex-validate-globally, bibtex-search-entries):
18426         * lisp/textmodes/ispell.el (ispell-command-loop):
18427         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
18428         * lisp/textmodes/texinfmt.el (texinfmt-version)
18429         (texinfo-format-region, texinfo-format-buffer-1):
18430         * lisp/textmodes/two-column.el (2C-split):
18431         Respect text quoting style in doc strings and diagnostics.
18432         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
18433         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
18434         Escape apostrophes in doc strings.
18436         Documentation fixes re quotes
18437         Prefer curved quotes in examples if users will typically see
18438         curved quotes when the examples run.
18439         Mention format-message when appropriate.
18440         Don’t use @code in examples.
18441         Quote an apostrophe with @kbd.
18443         Quoting fixes in lisp/progmodes
18444         * lisp/progmodes/cc-engine.el (c-bos-report-error):
18445         * lisp/progmodes/cpp.el (cpp-edit-reset):
18446         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
18447         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
18448         (etags-tags-apropos, list-tags, tags-apropos):
18449         * lisp/progmodes/executable.el (executable-set-magic):
18450         * lisp/progmodes/octave.el (octave-sync-function-file-names)
18451         (octave-help, octave-find-definition-default-filename)
18452         (octave-find-definition):
18453         Respect text quoting style in doc strings and diagnostics.
18454         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
18455         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
18456         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
18457         Escape apostrophes in doc strings.
18458         * lisp/progmodes/cmacexp.el (c-macro-expansion):
18459         Use straight quoting in ASCII comment.
18460         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
18461         (idlwave-pad-keyword):
18462         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
18463         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
18464         (vhdl-electric-semicolon, vhdl-electric-comma)
18465         (vhdl-electric-period, vhdl-electric-equal):
18466         Use directed quotes in diagnostics and doc strings.
18468 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
18470         Minor documentation and NEWS tweak
18471         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
18472         Add an index entry.
18473         * etc/NEWS: Fix a typo in character-fold-to-regexp.
18475 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
18477         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
18478         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
18479         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
18480         Adapt test.
18482 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
18484         Text quoting fixes in cedet, emulation, emacs-lisp
18485         * lisp/cedet/ede.el (ede-check-project-directory):
18486         * lisp/cedet/semantic/analyze/debug.el
18487         (semantic-analyzer-debug-insert-include-summary):
18488         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
18489         * lisp/cedet/semantic/decorate/include.el
18490         (semantic-decoration-unknown-include-describe)
18491         (semantic-decoration-all-include-summary):
18492         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
18493         * lisp/emulation/edt.el (edt-load-keys):
18494         * lisp/emulation/viper-cmd.el
18495         (viper-display-current-destructive-command)
18496         (viper-query-replace, viper-brac-function):
18497         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
18498         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
18499         Respect text quoting style in doc string or diagnostic.
18500         * lisp/cedet/mode-local.el (describe-mode-local-overload):
18501         Use format-message to avoid overtranslating quotes.
18502         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
18503         Escape an apostrophe in a docstring.
18504         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
18506 2015-08-29  Daniel Colascione  <dancol@dancol.org>
18508         Fix which-func for curly quotes: look for symbol, not message
18509         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
18510         imenu-unavailable error symbol instead of trying to match message
18511         exactly.
18512         * lisp/imenu.el (imenu-unavailable): New error.
18513         (imenu-unavailable-error): New function.
18515 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
18517         Fix Python tests on MS-Windows
18518         * test/automated/python-tests.el
18519         (python-shell-calculate-command-1): Run python-shell-interpreter
18520         through shell-quote-argument before comparing with what
18521         python-shell-calculate-command returns.
18522         (python-shell-calculate-pythonpath-1)
18523         (python-shell-calculate-pythonpath-2)
18524         (python-shell-calculate-process-environment-2): Use path-separator
18525         instead of a literal ':'.
18526         (python-shell-calculate-exec-path-2)
18527         (python-shell-calculate-exec-path-3)
18528         (python-shell-calculate-exec-path-4)
18529         (python-shell-with-environment-1)
18530         (python-shell-with-environment-2): Run "/env/bin" through
18531         expand-file-name before comparing with exec-path.  (Bug#21375)
18533 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18535         Use Core Text types/functions/variables/enumerators directly
18536         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
18537         (CharacterCollection): Remove typedefs.  All uses replaced with
18538         definitions.
18539         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
18540         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
18541         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
18542         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
18543         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
18544         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
18545         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
18546         definitions.
18547         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
18548         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
18549         (MAC_FONT_FORMAT_BITMAP)
18550         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
18551         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
18552         All uses replaced with definitions.
18553         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
18554         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
18555         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
18556         Add compatibility enumerators for older versions.
18557         (mac_font_descriptor_create_with_attributes)
18558         (mac_font_descriptor_create_matching_font_descriptors)
18559         (mac_font_descriptor_create_matching_font_descriptor)
18560         (mac_font_descriptor_copy_attribute)
18561         (mac_font_descriptor_supports_languages)
18562         (mac_font_create_with_name, mac_font_get_size)
18563         (mac_font_copy_family_name, mac_font_copy_character_set)
18564         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
18565         (mac_font_get_descent, mac_font_get_leading)
18566         (mac_font_get_underline_position)
18567         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
18568         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
18569         replaced with definitions.
18570         (mac_font_create_preferred_family_for_attributes)
18571         (mac_font_get_advance_width_for_glyph)
18572         (mac_font_get_bounding_rect_for_glyph)
18573         (mac_font_create_available_families, mac_font_shape):
18574         Remove macros for renamed functions.
18575         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
18576         * src/macfont.m (mac_font_descriptor_supports_languages):
18577         Rename from mac_ctfont_descriptor_supports_languages.
18578         (mac_font_create_preferred_family_for_attributes): Rename from
18579         mac_ctfont_create_preferred_family_for_attributes.
18580         (mac_font_get_advance_width_for_glyph): Rename from
18581         mac_ctfont_get_advance_width_for_glyph.
18582         Use kCTFontOrientationDefault also for older versions.
18583         (mac_font_get_bounding_rect_for_glyph): Rename from
18584         mac_ctfont_get_bounding_rect_for_glyph.
18585         Use kCTFontOrientationDefault also for older versions.
18586         (mac_font_create_available_families): Rename from
18587         mac_ctfont_create_available_families.
18588         (mac_font_equal_in_postscript_name): Rename from
18589         mac_ctfont_equal_in_postscript_name.  All uses changed.
18590         (mac_font_create_line_with_string_and_font): Rename from
18591         mac_ctfont_create_line_with_string_and_font.  All uses changed.
18592         (mac_font_shape): Rename from mac_ctfont_shape.
18593         (mac_font_family_compare): Remove unused declaration.
18595 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
18597         Fix minor text quoting in calc, calendar, vc
18598         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
18599         * lisp/calc/calc-help.el (calc-j-prefix-help):
18600         * lisp/calc/calc-misc.el (calc-help):
18601         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
18602         Escape an apostrophe in a docstring.
18603         * lisp/calc/calc-forms.el (calc-hms-notation):
18604         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
18605         Escape an apostrophe in a diagnostic.
18606         * lisp/calc/calc-misc.el (calc-help):
18607         * lisp/calendar/diary-lib.el (diary-include-files):
18608         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
18609         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
18610         * lisp/vc/ediff-diff.el (ediff-same-contents):
18611         * lisp/vc/ediff-merg.el (ediff-re-merge):
18612         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
18613         * lisp/vc/ediff-util.el (ediff-test-save-region)
18614         (ediff-status-info):
18615         * lisp/vc/ediff.el (ediff-merge-revisions)
18616         (ediff-merge-revisions-with-ancestor):
18617         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
18618         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
18619         Respect text quoting style in doc string or diagnostic.
18620         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
18621         * lisp/vc/add-log.el (change-log-goto-source):
18622         Avoid double-formatting.
18623         * lisp/vc/ediff-init.el (format-message):
18624         New backward-compatibility alias.
18626 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
18628         Fix minor text quoting problems in lisp top level
18629         * lisp/apropos.el (apropos-describe-plist):
18630         * lisp/cus-theme.el (customize-themes):
18631         * lisp/dired.el (dired-log):
18632         * lisp/help-fns.el (describe-variable):
18633         * lisp/hexl.el (hexl-insert-multibyte-char):
18634         * lisp/info.el (Info-finder-find-node):
18635         * lisp/json.el (json-read-string):
18636         * lisp/novice.el (disabled-command-function)
18637         (disabled-command-function):
18638         * lisp/startup.el (normal-mouse-startup-screen):
18639         * lisp/woman.el (WoMan-log, WoMan-warn):
18640         Respect text quoting style in doc string or diagnostic.
18641         * lisp/replace.el (replace-character-fold):
18642         * src/syntax.c (Fmodify_syntax_entry):
18643         Escape an apostrophe in a docstring.
18644         * lisp/tempo.el (tempo-define-template):
18645         Remove confusing apostrophe from docstring.
18646         * lisp/whitespace.el (whitespace-mark-x):
18647         Use directed quotes in docstring.
18649 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
18651         Fix indentation rule in css-mode
18652         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
18653         brackets in presence of pseudo-selectors.  (Bug#21328)
18655 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
18657         Fix a bug in recording a macro while flyspell-mode is active
18658         * lisp/subr.el (sit-for): Don't call read-event when recording a
18659         macro.  (Bug#21329)
18661 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
18663         Tweak startup screen quoting
18664         * lisp/startup.el (normal-splash-screen): Use standard
18665         "M-" abbrevation rather than a confusingly-different one.
18666         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
18668 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
18670         Add test case for ‘format’ bug and refactor
18671         * src/editfns.c (styled_format): Refactor internally, mostly by
18672         moving declarations closer to uses.  This should not affect behavior.
18673         * test/automated/textprop-tests.el (textprop-tests-format): New test.
18675         Fix ‘format’ bug with property offsets
18676         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
18677         bug in calculating string property offsets (Bug#21351).
18679         Use straight quotes in lib-src diagnostics
18680         These auxiliary programs can’t use Emacs’s text-quoting-style,
18681         and it’s too much trouble to redo that mechanism by hand.
18682         So just use straight quotes for now.
18683         * lib-src/ebrowse.c (main):
18684         * lib-src/emacsclient.c (decode_options, main):
18685         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
18686         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
18687         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
18688         (none_help, print_language_names, print_help, add_regex)
18689         (suggest_asking_for_help):
18690         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
18691         Use straight quotes in diagnostics.
18693         ‘text-quoting-style’ fixes for admin
18694         * admin/admin.el (cusver-scan, cusver-check):
18695         * admin/authors.el (authors-canonical-file-name):
18696         * admin/bzrmerge.el (bzrmerge-missing):
18697         Respect ‘text-quoting-style’ in diagnostics.
18699 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
18701         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
18702         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
18703         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
18704         * doc/lispref/internals.texi (Writing Emacs Primitives):
18705         * etc/NEWS:
18706         Document the change.
18707         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
18708         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
18709         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
18710         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
18711         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
18712         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
18713         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
18714         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
18715         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
18716         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
18717         Remove.  All uses removed.  The code now assumes
18718         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
18719         * src/bytecode.c (relocate_byte_stack):
18720         Rename from unmark_byte_stack, since it now only relocates.
18721         All callers changed.
18722         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
18723         with GCPROs removed.
18724         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
18725         * test/automated/finalizer-tests.el (finalizer-basic)
18726         (finalizer-circular-reference, finalizer-cross-reference)
18727         (finalizer-error):
18728         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
18729         Remove tests, as they depend on gc-precise.
18731 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
18733         Improve seq-concatenate for new sequence types
18734         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
18735         ensure that concatenation happens on sequences only.  This makes it
18736         possible to use `seq-concatenate' for new types of seqs.
18737         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
18738         New function used in `seq-concatenate'.
18739         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
18740         for seq-into-sequence.
18742 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
18744         Add mode local overrides to xref-find-definitions
18745         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
18746         (xref-mode-local-overload): New; add mode local overrides to
18747         xref-find-definitions.
18748         * test/automated/elisp-mode-tests.el: Add mode local override tests.
18749         (xref-elisp-test-run): Handle indented defuns.
18750         (xref-elisp-generic-*): Improve doc strings.
18751         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
18752         (elisp--xref-find-definitions): Use it.
18754         Add mode local overrides to describe-function
18755         * lisp/cedet/mode-local.el (describe-mode-local-overload):
18756         New; add mode local overrides to describe-function.
18757         * etc/NEWS: Document change.
18759 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
18761         Prefer straight quoting in some etc text files
18762         These files are plain text and might be used by non-Emacs apps.
18763         They’re mostly ASCII, so just use straight quotes.
18765         Fix quoting in ‘message_with_string’
18766         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
18767         should work now.
18768         * src/xdisp.c (message_to_stderr): New function, refactored from
18769         part of ‘message3_nolog’.
18770         (message3_nolog): Use it.
18771         (message_with_string): Use it.  Don’t mishandle NUL bytes when
18772         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
18773         Use ‘format-message’, not ‘format’, so that quotes are translated.
18775 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
18777         Mention false positives of file-accessible-directory on w32
18778         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
18779         (Bug#21346)
18781 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
18783         Treat error strings as help
18784         * src/print.c (print_error_message): Translate quotes and command
18785         keys in errmsg so that users see, e.g., "Symbol’s value as
18786         variable is void: foo" when text-quoting-style is curved.
18788 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
18790         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
18792 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
18794         Top-level elisp files respect ‘text-quoting-style’
18795         In top-level elisp files, use format-message in diagnostic formats,
18796         so that they follow user preference as per ‘text-quoting-style’
18797         rather than being hard-coded to quote `like this'.
18798         * lisp/allout.el (allout-get-configvar-values):
18799         * lisp/apropos.el (apropos-symbols-internal):
18800         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
18801         (dired-do-create-files-regexp, dired-create-files-non-directory):
18802         * lisp/dired-x.el (dired-do-run-mail):
18803         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
18804         * lisp/disp-table.el (standard-display-european):
18805         * lisp/find-dired.el (find-dired):
18806         * lisp/forms.el (forms-mode):
18807         * lisp/ido.el (ido-buffer-internal):
18808         * lisp/info.el (Info-index-next):
18809         * lisp/outline.el (outline-invent-heading):
18810         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
18811         * lisp/proced.el (proced-log):
18812         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
18813         * lisp/recentf.el (recentf-open-files, recentf-save-list):
18814         * lisp/savehist.el (savehist-save):
18815         * lisp/server.el (server-ensure-safe-dir):
18816         * lisp/ses.el (ses-rename-cell):
18817         * lisp/simple.el (list-processes--refresh):
18818         * lisp/startup.el (command-line):
18819         * lisp/strokes.el (strokes-unset-last-stroke)
18820         (strokes-execute-stroke):
18821         Use format-message so that quotes are restyled.
18822         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
18823         Don’t quote ‘raised’.
18824         * lisp/descr-text.el (describe-char):
18825         * lisp/dirtrack.el (dirtrack-debug-message):
18826         * lisp/hexl.el (hexl-insert-multibyte-char):
18827         Apply substitute-command-keys to help string.
18828         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
18829         (wdired-do-perm-changes):
18830         Let dired-log do the formatting.
18832 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
18834         Go back to grave quoting in Tramp
18835         * lisp/net/tramp-adb.el:
18836         * lisp/net/tramp-cache.el:
18837         * lisp/net/tramp-compat.el:
18838         * lisp/net/tramp-gvfs.el:
18839         * lisp/net/tramp-gw.el:
18840         * lisp/net/tramp-sh.el:
18841         * lisp/net/tramp-smb.el:
18842         * lisp/net/tramp.el:
18843         Stick with grave quoting in diagnostics strings.  This is more
18844         portable to older Emacs, desirable for Tramp.
18845         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
18846         for diagnostic that needs requoting.
18847         * lisp/net/tramp-compat.el (format-message):
18848         Fall back on simple ‘format’, since that’s good enough now.
18850         Go back to grave quoting in Gnus
18851         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
18852         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
18853         (gnus-agent-fetch-headers):
18854         * lisp/gnus/gnus-int.el (gnus-start-news-server):
18855         * lisp/gnus/gnus-registry.el:
18856         (gnus-registry--split-fancy-with-parent-internal)
18857         (gnus-registry-post-process-groups):
18858         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
18859         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
18860         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
18861         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
18862         * lisp/gnus/spam.el (spam-check-blackholes):
18863         Stick with grave quoting in diagnostics strings.  This is more
18864         portable to older Emacs, desirable for Gnus.
18866         Fix customization of text-quoting-style
18867         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
18868         * lisp/wid-edit.el (widget-docstring):
18869         Get raw docstring here since it’s cooked later and should not be
18870         cooked twice.
18871         * lisp/cus-edit.el (custom-group-value-create):
18872         Cook the docstring before inserting it.
18873         * lisp/cus-start.el (text-quoting-style): Quote the customization
18874         docstrings according to the new rules.  Give curved examples.
18876         format-message now curves ` and '
18877         That way, the caller doesn’t have to use curved quotes to
18878         get diagnostics that match the text-quoting-style preferences.
18879         Suggested by Dmitry Gutov in:
18880         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
18881         This means we no longer need %qs, so remove that format.
18882         While we’re at it, fix an unlikely bug and lessen the pressure
18883         on the garbage collector by processing the string once rather
18884         than twice in the usual case.
18885         * doc/lispref/strings.texi (Formatting Strings):
18886         * etc/NEWS: Document this.
18887         * lisp/subr.el (format-message): Remove; now done in C.
18888         * src/callint.c (Fcall_interactively):
18889         * src/editfns.c (Fmessage, Fmessage_box):
18890         Use Fformat_message instead of Finternal__text_restyle
18891         followed by Fformat.
18892         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
18893         uLSQM and uRSQM.
18894         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
18895         when pure ASCII now suffices.  Fix unlikely bug when parsing
18896         unibyte string containing non-ASCII bytes.  Use inline code
18897         rather than memcpy, as it’s a tiny number of bytes.
18898         (Finternal__text_restyle): Remove; no longer used.
18899         (syms_of_doc): Don’t declare it.
18900         * src/editfns.c (Fformat): Rewrite in terms of new function
18901         ‘styled_format’.
18902         (Fformat_message): New function, moved here from subr.el.
18903         (styled_format): New function, with the old guts of Fformat,
18904         except it now optionally transliterates quotes, and it transliterates
18905         traditional grave accent and apostrophe quoting as well.
18906         Remove recently-added q flag; no longer needed or used.
18907         (syms_of_editfns): Define format-message.
18908         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
18909         Remove; no longer need to be global symbols.
18910         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
18911         so that callers can use `%s'.
18912         * src/image.c (image_size_error, xbm_load_image, xbm_load)
18913         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
18914         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
18915         (svg_load_image, gs_load, x_kill_gs_process):
18916         * src/lread.c (load_warn_old_style_backquotes):
18917         * src/xfaces.c (load_pixmap):
18918         * src/xselect.c (x_clipboard_manager_error_1):
18919         Use `%s' instead of %qs in formats.
18921 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
18923         Minor fixes in doc/emacs/search.texi
18924         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
18925         (Special Isearch): Use @w{} to generate several consecutive spaces
18926         with Texinfo 6.  (Bug#21345)
18928 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
18930         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
18931         (tramp-awk-coding-test): New defconsts.
18932         (tramp-remote-coding-commands): Use them.
18933         (tramp-find-inline-encoding): Check for Perl only if necessary.
18935 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
18937         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
18938         index entries for the special form `quote'.
18940 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
18942         Spelling fixes
18944         Gnus format-message typo fix
18945         * lisp/gnus/gnus-util.el (gnus-format-message):
18946         Fix typo when running in older Emacs.
18948         Prefer directed to neutral quotes in docstings and diagnostics.
18949         In docstrings, escape apostrophes that would otherwise be translated
18950         to curved quotes using the newer, simpler rules.
18951         * admin/unidata/unidata-gen.el (unidata-gen-table):
18952         * lisp/align.el (align-region):
18953         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
18954         * lisp/bookmark.el (bookmark-default-annotation-text):
18955         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
18956         * lisp/calc/calc-lang.el (math-read-giac-subscr)
18957         (math-read-math-subscr):
18958         * lisp/calc/calc-misc.el (report-calc-bug):
18959         * lisp/calc/calc-prog.el (calc-fix-token-name)
18960         (calc-read-parse-table-part):
18961         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
18962         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
18963         * lisp/dabbrev.el (dabbrev-expand):
18964         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
18965         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
18966         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
18967         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
18968         * lisp/erc/erc-button.el (erc-nick-popup):
18969         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
18970         * lisp/eshell/em-dirs.el (eshell/cd):
18971         * lisp/eshell/em-glob.el (eshell-glob-regexp):
18972         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
18973         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
18974         * lisp/eshell/esh-opt.el (eshell-show-usage):
18975         * lisp/files-x.el (modify-file-local-variable):
18976         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
18977         (filesets-update-pre010505):
18978         * lisp/find-cmd.el (find-generic, find-to-string):
18979         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
18980         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
18981         (gnus-agent-fetch-headers):
18982         * lisp/gnus/gnus-int.el (gnus-start-news-server):
18983         * lisp/gnus/gnus-registry.el:
18984         (gnus-registry--split-fancy-with-parent-internal):
18985         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
18986         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
18987         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
18988         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
18989         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
18990         * lisp/gnus/spam.el (spam-check-blackholes):
18991         * lisp/mail/feedmail.el (feedmail-run-the-queue):
18992         * lisp/mpc.el (mpc-playlist-rename):
18993         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
18994         * lisp/net/mairix.el (mairix-widget-create-query):
18995         * lisp/net/tramp-cache.el:
18996         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
18997         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
18998         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
18999         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
19000         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
19001         (org-babel-goto-named-result):
19002         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
19003         * lisp/org/ob-ref.el (org-babel-ref-resolve):
19004         * lisp/org/org-agenda.el (org-agenda-prepare):
19005         * lisp/org/org-bibtex.el (org-bibtex-fields):
19006         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
19007         (org-clock-resolve):
19008         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
19009         * lisp/org/org-habit.el (org-habit-parse-todo):
19010         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
19011         (org-mouse-context-menu):
19012         * lisp/org/org-table.el (org-table-edit-formulas):
19013         * lisp/org/ox.el (org-export-async-start):
19014         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
19015         (dun-rooms, dun-endgame-questions):
19016         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
19017         * lisp/progmodes/ada-xref.el (ada-find-executable):
19018         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
19019         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
19020         (flymake-start-syntax-check-process):
19021         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
19022         * lisp/progmodes/sql.el (sql-comint):
19023         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
19024         * lisp/server.el (server-get-auth-key):
19025         * lisp/subr.el (version-to-list):
19026         * lisp/textmodes/reftex-ref.el (reftex-label):
19027         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
19028         * lisp/vc/ediff-diff.el (ediff-same-contents):
19029         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
19030         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
19031         Use directed rather than neutral quotes in diagnostics.
19033         Treat ' like ’ even when not matching `
19034         This is simpler and easier to explain, and should encourage better
19035         typography.  Do this in Electric Quote mode and when translating
19036         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
19037         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
19038         * doc/emacs/text.texi (Quotation Marks):
19039         * doc/lispref/help.texi (Keys in Documentation):
19040         * etc/NEWS:
19041         Document this.
19042         * lisp/electric.el (electric-quote-post-self-insert-function):
19043         * src/doc.c (Fsubstitute_command_keys):
19044         Always treat ' like ’ even when not matched by an open quote.
19046 2015-08-25  Glenn Morris  <rgm@gnu.org>
19048         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
19049         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
19051 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
19053         * src/macfont.m (macfont_create_family_with_symbol):
19054         Accept localized names.
19056 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
19058         Tramp diagnostics as per ‘text-quoting-style’
19059         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
19060         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
19061         (tramp-adb-handle-delete-directory)
19062         (tramp-adb-handle-delete-file)
19063         (tramp-adb-handle-file-local-copy)
19064         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
19065         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
19066         (tramp-adb-maybe-open-connection):
19067         * lisp/net/tramp-cache.el:
19068         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
19069         (tramp-compat-octal-to-decimal)
19070         (tramp-compat-coding-system-change-eol-conversion):
19071         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
19072         (tramp-gvfs-do-copy-or-rename-file)
19073         (tramp-gvfs-handle-delete-directory)
19074         (tramp-gvfs-handle-delete-file)
19075         (tramp-gvfs-handle-expand-file-name)
19076         (tramp-gvfs-handle-file-local-copy)
19077         (tramp-gvfs-handle-file-notify-add-watch)
19078         (tramp-gvfs-handle-make-directory)
19079         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
19080         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
19081         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
19082         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
19083         (tramp-sh-handle-set-visited-file-modtime)
19084         (tramp-sh-handle-set-file-modes)
19085         (tramp-sh-handle-file-name-all-completions)
19086         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
19087         (tramp-do-copy-or-rename-file-directly)
19088         (tramp-do-copy-or-rename-file-out-of-band)
19089         (tramp-sh-handle-make-directory)
19090         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
19091         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
19092         (tramp-sh-handle-start-file-process)
19093         (tramp-sh-handle-file-local-copy)
19094         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
19095         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
19096         (tramp-find-file-exists-command, tramp-open-shell)
19097         (tramp-find-shell)
19098         (tramp-open-connection-setup-interactive-shell)
19099         (tramp-find-inline-encoding, tramp-find-inline-compress)
19100         (tramp-compute-multi-hops, tramp-maybe-open-connection)
19101         (tramp-wait-for-output, tramp-send-command-and-check)
19102         (tramp-send-command-and-read, tramp-get-remote-path)
19103         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
19104         (tramp-get-ls-command-with-quoting-style)
19105         (tramp-get-test-command, tramp-get-remote-ln)
19106         (tramp-get-remote-perl, tramp-get-remote-stat)
19107         (tramp-get-remote-readlink, tramp-get-remote-trash)
19108         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
19109         (tramp-get-remote-inotifywait, tramp-get-remote-id)
19110         (tramp-get-remote-python):
19111         * lisp/net/tramp-smb.el (tramp-smb-errors)
19112         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
19113         (tramp-smb-handle-delete-directory)
19114         (tramp-smb-handle-delete-file)
19115         (tramp-smb-handle-file-local-copy)
19116         (tramp-smb-handle-make-directory)
19117         (tramp-smb-handle-make-directory-internal)
19118         (tramp-smb-handle-make-symbolic-link)
19119         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
19120         (tramp-smb-handle-set-file-modes)
19121         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
19122         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
19123         (tramp-process-actions):
19124         Generate diagnostics according to ‘text-quoting-style’, by
19125         using curved quotes in format strings and ‘format-message’
19126         when appropriate.
19127         * lisp/net/tramp-compat.el (format-message):
19128         Define a replacement, if it’s an older version of Emacs
19129         that doesn’t have it already.
19131         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
19133 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
19135         Fix documentation for `save-excursion'
19136         * doc/lispref/positions.texi (Excursions):
19137         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
19138         (Template for save-excursion, Point and mark): `save-excursion'
19139         does not save&restore the mark any more.
19141 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
19143         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
19144         New defconsts.
19145         (tramp-do-file-attributes-with-stat)
19146         (tramp-do-directory-files-and-attributes-with-stat): Use them.
19147         (tramp-convert-file-attributes): Remove double slashes in symlinks.
19148         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
19149         Handle symlinks with "//" in the file name.
19151         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
19153 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
19155         Fix cl-subseq and cl-concatenate
19156         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
19157         seq functions.
19158         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
19159         seq-concatenate.
19161 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
19163         Fix full-screen code when there is no window manager (Bug#21317)
19164         * src/xterm.h (x_wm_supports): Declare external.
19165         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
19166         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
19167         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
19168         `fullscreen' frame parameter.
19169         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
19170         without a window manager.
19172 2015-08-24  Glenn Morris  <rgm@gnu.org>
19174         * lisp/version.el (emacs-version): No longer include build host.
19175         * doc/lispref/intro.texi (Version Info): Update example.
19177 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
19179         * doc/lispref/elisp.texi: Fix typo in previous change.
19181         More-conservative ‘format’ quote restyling
19182         Instead of restyling curved quotes for every call to ‘format’,
19183         create a new function ‘format-message’ that does the restyling,
19184         and using the new function instead of ‘format’ only in contexts
19185         where this seems appropriate.
19186         Problem reported by Dmitry Gutov and Andreas Schwab in:
19187         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
19188         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
19189         * doc/lispref/commands.texi (Using Interactive):
19190         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
19191         * doc/lispref/display.texi (Displaying Messages, Progress):
19192         * doc/lispref/elisp.texi:
19193         * doc/lispref/help.texi (Keys in Documentation):
19194         * doc/lispref/minibuf.texi (Minibuffer Misc):
19195         * doc/lispref/strings.texi (Formatting Strings):
19196         * etc/NEWS:
19197         Document the changes.
19198         * lisp/abbrev.el (expand-region-abbrevs):
19199         * lisp/apropos.el (apropos-library):
19200         * lisp/calc/calc-ext.el (calc-record-message)
19201         (calc-user-function-list):
19202         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
19203         * lisp/calc/calc-lang.el (math-read-big-balance):
19204         * lisp/calc/calc-store.el (calc-edit-variable):
19205         * lisp/calc/calc-units.el (math-build-units-table-buffer):
19206         * lisp/calc/calc-yank.el (calc-edit-mode):
19207         * lisp/calendar/icalendar.el (icalendar-export-region)
19208         (icalendar--add-diary-entry):
19209         * lisp/cedet/mode-local.el (mode-local-print-binding)
19210         (mode-local-describe-bindings-2):
19211         * lisp/cedet/semantic/complete.el (semantic-completion-message):
19212         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
19213         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
19214         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
19215         * lisp/descr-text.el (describe-text-properties-1, describe-char):
19216         * lisp/dframe.el (dframe-message):
19217         * lisp/dired-aux.el (dired-query):
19218         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
19219         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
19220         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
19221         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
19222         (cconv-analyze-form):
19223         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
19224         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
19225         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
19226         * lisp/emacs-lisp/edebug.el (edebug-format):
19227         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
19228         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
19229         (eldoc-message):
19230         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
19231         * lisp/emacs-lisp/find-func.el (find-function-library):
19232         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
19233         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
19234         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
19235         * lisp/emacs-lisp/package.el (package-compute-transaction)
19236         (package-install-button-action, package-delete-button-action)
19237         (package-menu--list-to-prompt):
19238         * lisp/emacs-lisp/timer.el (timer-event-handler):
19239         * lisp/emacs-lisp/warnings.el (lwarn, warn):
19240         * lisp/emulation/viper-cmd.el:
19241         (viper-toggle-parse-sexp-ignore-comments)
19242         (viper-kill-buffer, viper-brac-function):
19243         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
19244         * lisp/facemenu.el (facemenu-add-new-face):
19245         * lisp/faces.el (face-documentation, read-face-name)
19246         (face-read-string, read-face-font, describe-face):
19247         * lisp/files.el (find-alternate-file, hack-local-variables)
19248         (hack-one-local-variable--obsolete, write-file)
19249         (basic-save-buffer, delete-directory):
19250         * lisp/format.el (format-write-file, format-find-file)
19251         (format-insert-file):
19252         * lisp/help-fns.el (help-fns--key-bindings)
19253         (help-fns--compiler-macro, help-fns--obsolete)
19254         (help-fns--interactive-only, describe-function-1)
19255         (describe-variable):
19256         * lisp/help.el (describe-mode):
19257         * lisp/info-xref.el (info-xref-output):
19258         * lisp/info.el (Info-virtual-index-find-node)
19259         (Info-virtual-index, info-apropos):
19260         * lisp/international/kkc.el (kkc-error):
19261         * lisp/international/mule-cmds.el:
19262         (select-safe-coding-system-interactively)
19263         (select-safe-coding-system, describe-input-method):
19264         * lisp/international/mule-conf.el (code-offset):
19265         * lisp/international/mule-diag.el (describe-character-set)
19266         (list-input-methods-1):
19267         * lisp/international/quail.el (quail-error):
19268         * lisp/minibuffer.el (minibuffer-message):
19269         * lisp/mpc.el (mpc--debug):
19270         * lisp/msb.el (msb--choose-menu):
19271         * lisp/net/ange-ftp.el (ange-ftp-message):
19272         * lisp/net/gnutls.el (gnutls-message-maybe):
19273         * lisp/net/newst-backend.el (newsticker--sentinel-work):
19274         * lisp/net/newst-treeview.el (newsticker--treeview-load):
19275         * lisp/net/nsm.el (nsm-query-user):
19276         * lisp/net/rlogin.el (rlogin):
19277         * lisp/net/soap-client.el (soap-warning):
19278         * lisp/net/tramp.el (tramp-debug-message):
19279         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
19280         * lisp/nxml/nxml-parse.el (nxml-parse-error):
19281         * lisp/nxml/rng-cmpct.el (rng-c-error):
19282         * lisp/nxml/rng-match.el (rng-compile-error):
19283         * lisp/nxml/rng-uri.el (rng-uri-error):
19284         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
19285         * lisp/org/org-ctags.el:
19286         (org-ctags-ask-rebuild-tags-file-then-find-tag):
19287         * lisp/proced.el (proced-log):
19288         * lisp/progmodes/ebnf2ps.el (ebnf-log):
19289         * lisp/progmodes/flymake.el (flymake-log):
19290         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
19291         * lisp/replace.el (occur-1):
19292         * lisp/simple.el (execute-extended-command)
19293         (undo-outer-limit-truncate, define-alternatives):
19294         * lisp/startup.el (command-line):
19295         * lisp/subr.el (error, user-error, add-to-list):
19296         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
19297         (tutorial--find-changed-keys):
19298         * src/callint.c (Fcall_interactively):
19299         * src/editfns.c (Fmessage, Fmessage_box):
19300         Restyle the quotes of format strings intended for use as a
19301         diagnostic, when restyling seems appropriate.
19302         * lisp/subr.el (format-message): New function.
19303         * src/doc.c (Finternal__text_restyle): New function.
19304         (syms_of_doc): Define it.
19306 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
19308         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
19310 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
19312         python.el: Fix python-shell-buffer-substring on indented code
19313         (Bug#21086)
19314         * lisp/progmodes/python.el (python-shell-buffer-substring):
19315         Respect current line indentation when calculating string.
19316         * test/automated/python-tests.el
19317         (python-shell-buffer-substring-10)
19318         (python-shell-buffer-substring-11)
19319         (python-shell-buffer-substring-12): New tests.
19321 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
19323         Fix minor glitches from ‘format’ reversion
19324         * doc/lispref/strings.texi (Formatting Strings):
19325         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
19326         Documentation’, not below.
19327         * src/syntax.c (Finternal_describe_syntax_value):
19328         Prefer AUTO_STRING to build_string where either will do, as
19329         AUTO_STRING is a bit faster.
19331 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
19333         python.el: Defer shell setup code until first interactive prompt
19334         * lisp/progmodes/python.el
19335         (python-shell-comint-watch-for-first-prompt-output-filter):
19336         New function.
19337         (inferior-python-mode): Use it.
19338         (python-shell-first-prompt-hook): New hook.
19339         (python-shell-send-setup-code)
19340         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
19341         this hook instead of inferior-python-hook.
19343 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
19345         Remove the calls to `seq-into` from `seq-concatenate`
19346         Since most new types of seq would have to be defined as sequences (cons
19347         cells or CL structs, mostly), there is no need to convert the seqs to
19348         sequences (which can be a fairly expensive operation).
19349         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
19350         sequences.
19352 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
19354         python.el: Fix completion for pdb interactions
19355         * lisp/progmodes/python.el (python-shell-completion-setup-code):
19356         Simplify.  Toggle print_mode for native wrapped completer.
19357         (python-shell-completion-native-setup): Ensure process buffer.
19358         Add print_mode attribute to completer wrapper to toggle returning
19359         or printing candidates.
19360         (python-shell-completion-native-get-completions): Cleanup.
19361         (python-shell-completion-get-completions): Cleanup.
19362         (python-shell-completion-at-point): Perform prompt checks.
19363         Force fallback completion in pdb interactions.
19365 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
19367         Make seq.el more extensible by using cl-defmethod
19368         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
19369         make it easier to extend seq.el with new "seq types".
19370         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
19371         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
19372         subseq in cl-extra.el, and use it in seq.el.
19374 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
19376         python.el: Fix prompt detection with user overridden interpreter
19377         * lisp/progmodes/python.el (python-shell-prompt-detect):
19378         Honor buffer local python-shell-interpreter and
19379         python-shell-interpreter-interactive-arg.
19381 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
19383         Support exec-directory with non-ASCII characters on Windows
19384         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
19385         in the system's ANSI codepage, when it is used for invoking
19386         cmdproxy.
19388 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
19390         Revert "Extend ‘format’ to translate curved quotes"
19391         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
19393         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
19394         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
19396 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
19398         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
19399         Clarify "invisible window".
19401 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
19403         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
19404         magic-fallback-mode-alist.
19406 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
19408         python.el: fallback completion, ffap and eldoc setup enhancements
19409         Setup codes are now sent continuously so that the current frame is
19410         always taken into account.  This allows working within debuggers
19411         and always keeping a fresh version of setup codes that will return
19412         proper results.
19413         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
19414         (python-shell-send-setup-code): Send code only when
19415         python-shell-setup-codes is non-nil.
19416         (python-shell-completion-string-code): Cleanup trailing newline.
19417         (python-shell-completion-get-completions): Always use
19418         python-shell-completion-setup-code.
19419         (python-ffap-setup-code): Work with any object, not only modules.
19420         (python-ffap-string-code): Cleanup trailing newline.
19421         (python-ffap-module-path): Always use python-ffap-setup-code.
19422         (python-eldoc-string-code): Cleanup trailing newline.
19423         (python-eldoc--get-doc-at-point): Always use
19424         python-eldoc-setup-code.  Return non-nil only if docstring is
19425         found.
19427         python.el: Increase native completion robustness
19428         * lisp/progmodes/python.el (python-shell-completion-native-setup):
19429         Make completer print real candidates and just return dummy ones to
19430         avoid input modification.
19431         (python-shell-completion-native-get-completions): Set
19432         comint-redirect-insert-matching-regexp to non-nil and make
19433         comint-redirect-finished-regexp match the last dummy candidate.
19434         Use python-shell-accept-process-output to wait for the full list
19435         of candidates.
19437 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
19439         Fix invocation of programs via cmdproxy.exe
19440         * src/w32proc.c (sys_spawnve): Use exec-directory, not
19441         invocation-directory, for finding cmdproxy.exe.  When Emacs is
19442         run from the source tree, look for cmdproxy.exe in the same source
19443         tree.  (Bug#21323)
19445 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
19447         Handle comments inside unquoted URIs in css-mode
19448         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
19449         (css-syntax-propertize-function): New defconst.
19450         (css--font-lock-keywords): Handle parens around unquoted URIs.
19451         (css-mode): Set `syntax-propertize-function'.
19453 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
19455         Support invocation of Hunspell with multiple dictionaries
19456         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
19457         Support lists of dictionaries of the form "DICT1,DICT2,...".
19458         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
19460         Minor formatting changes in ispell.el
19461         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
19462         (ispell-print-if-debug, ispell-aspell-find-dictionary)
19463         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
19464         (ispell-hunspell-dictionary-alist)
19465         (ispell-hunspell-fill-dictionary-entry)
19466         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
19467         (ispell-buffer-with-debug, ispell-complete-word)
19468         (ispell-current-dictionary, ispell-current-personal-dictionary)
19469         (ispell-accept-output, ispell-minor-mode)
19470         (ispell-personal-dictionary, ispell-dictionary-alist)
19471         (ispell-really-aspell, ispell-really-hunspell)
19472         (ispell-encoding8-command, ispell-aspell-supports-utf8)
19473         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
19474         Fix whitespace, inconsistent capitalization, and arguments in doc
19475         strings.
19477 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
19479         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
19480         function refused to resize a size-preserved window.
19482 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
19484         * doc/lispref/windows.texi (Selecting Windows): Improve
19485         documentation and indexing of 'window-use-time'.
19487 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
19489         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
19490         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
19491         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
19492         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
19493         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
19494         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
19495         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
19496         Fix up commenting style.
19498 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
19500         text-quoting-style in emacs-lisp diagnostics
19501         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
19502         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
19503         (ad-disable-advice, ad-remove-advice, ad-set-argument)
19504         (ad-set-arguments):
19505         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
19506         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
19507         (byte-optimize-while, byte-optimize-apply):
19508         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
19509         (byte-compile-log-file, byte-compile-format-warn)
19510         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
19511         (byte-compile-cl-warn)
19512         (byte-compile-warn-about-unresolved-functions)
19513         (byte-compile-file, byte-compile-fix-header)
19514         (byte-compile--declare-var, byte-compile-file-form-defmumble)
19515         (byte-compile-form, byte-compile-normal-call)
19516         (byte-compile-variable-ref, byte-compile-variable-set)
19517         (byte-compile-subr-wrong-args, byte-compile-setq-default)
19518         (byte-compile-negation-optimizer)
19519         (byte-compile-condition-case--old)
19520         (byte-compile-condition-case--new, byte-compile-save-excursion)
19521         (byte-compile-defvar, byte-compile-autoload)
19522         (byte-compile-lambda-form)
19523         (byte-compile-make-variable-buffer-local, display-call-tree)
19524         (batch-byte-compile):
19525         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
19526         (cconv-analyze-form):
19527         * lisp/emacs-lisp/chart.el (chart-space-usage):
19528         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
19529         (check-declare-warn, check-declare-file)
19530         (check-declare-directory):
19531         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
19532         (checkdoc-message-text-engine):
19533         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
19534         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
19535         (cl-symbol-macrolet):
19536         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
19537         * lisp/emacs-lisp/copyright.el (copyright)
19538         (copyright-update-directory):
19539         * lisp/emacs-lisp/edebug.el (edebug-read-list):
19540         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
19541         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
19542         (eieio-oref, eieio-oset-default):
19543         * lisp/emacs-lisp/eieio-speedbar.el:
19544         (eieio-speedbar-child-make-tag-lines)
19545         (eieio-speedbar-child-description):
19546         * lisp/emacs-lisp/eieio.el (defclass, change-class):
19547         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
19548         (elint-init-form, elint-check-defalias-form)
19549         (elint-check-let-form):
19550         * lisp/emacs-lisp/ert.el (ert-get-test):
19551         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
19552         (find-function-library):
19553         * lisp/emacs-lisp/generator.el (iter-yield):
19554         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
19555         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
19556         * lisp/emacs-lisp/package-x.el (package-upload-file):
19557         * lisp/emacs-lisp/package.el (package-version-join)
19558         (package-disabled-p, package-activate-1, package-activate)
19559         (package--download-one-archive)
19560         (package--download-and-read-archives)
19561         (package-compute-transaction, package-install-from-archive)
19562         (package-install, package-install-selected-packages)
19563         (package-delete, package-autoremove)
19564         (package-install-button-action, package-delete-button-action)
19565         (package-menu-hide-package, package-menu--list-to-prompt)
19566         (package-menu--perform-transaction)
19567         (package-menu--find-and-notify-upgrades):
19568         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
19569         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
19570         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
19571         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
19572         * lisp/emacs-lisp/smie.el (smie-config-save):
19573         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
19574         * lisp/emacs-lisp/testcover.el (testcover-1value):
19575         Use curved quotes in diagnostic format strings.
19577 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
19579         python.el: Ensure remote process-environment on non-interactive processes
19580         * lisp/progmodes/python.el
19581         (python-shell-tramp-refresh-process-environment): New function.
19582         (python-shell-with-environment): Use it.
19583         * test/automated/python-tests.el (python-shell-with-environment-2):
19584         Update.
19586         python.el: Enhancements to process environment setup.
19587         * lisp/progmodes/python.el (python-shell-process-environment)
19588         (python-shell-extra-pythonpaths, python-shell-exec-path)
19589         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
19590         (python-shell-setup-codes): Remove :safe.
19591         (python-shell-remote-exec-path): New defcustom.
19592         (python-shell--add-to-path-with-priority): New macro.
19593         (python-shell-calculate-pythonpath): Give priority to
19594         python-shell-extra-pythonpaths.  Update docstring.
19595         (python-shell-calculate-process-environment): Give priority to
19596         python-shell-process-environment.  Update docstring.
19597         (python-shell-calculate-exec-path): Give priority to
19598         python-shell-exec-path and calculated virtualenv bin directory.
19599         Update docstring.
19600         (python-shell-tramp-refresh-remote-path): New function.
19601         (python-shell-with-environment): Use it when working remotely and
19602         do not modify tramp-remote-path.  Allow nesting.
19603         (python-shell-calculate-command): Remove useless
19604         python-shell-with-environment call.
19605         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
19606         (python-shell-calculate-pythonpath-2)
19607         (python-shell-calculate-process-environment-6)
19608         (python-shell-calculate-process-environment-7)
19609         (python-shell-calculate-process-environment-8)
19610         (python-shell-calculate-exec-path-3)
19611         (python-shell-calculate-exec-path-4)
19612         (python-shell-calculate-exec-path-5)
19613         (python-shell-calculate-exec-path-6)
19614         (python-shell-with-environment-3): New tests.
19615         (python-shell-calculate-process-environment-2)
19616         (python-shell-calculate-process-environment-3)
19617         (python-shell-calculate-process-environment-4)
19618         (python-shell-calculate-process-environment-5)
19619         (python-shell-calculate-exec-path-1)
19620         (python-shell-calculate-exec-path-2)
19621         (python-shell-with-environment-1)
19622         (python-shell-with-environment-2): Update and simplify.
19624 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
19626         Avoid hard-coding "M-x command" in docstrings
19627         * lisp/calendar/todo-mode.el (todo-mode):
19628         * lisp/desktop.el (desktop-save-mode):
19629         * lisp/edmacro.el (edit-kbd-macro):
19630         * lisp/emacs-lisp/package.el (package-menu-execute):
19631         * lisp/emulation/viper-cmd.el (viper-ask-level):
19632         * lisp/emulation/viper-init.el (viper-expert-level):
19633         * lisp/filesets.el (filesets-add-buffer):
19634         * lisp/follow.el (follow-mode):
19635         * lisp/gnus/auth-source.el (auth-sources):
19636         * lisp/international/ogonek.el (ogonek-informacja)
19637         (ogonek-information):
19638         * lisp/net/tramp.el (tramp-process-actions):
19639         * lisp/org/org-gnus.el (org-gnus-no-new-news):
19640         * lisp/org/org.el (org-ellipsis):
19641         * lisp/progmodes/python.el (python-shell-get-process-or-error):
19642         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
19643         * lisp/server.el (server-start):
19644         * lisp/type-break.el (type-break-noninteractive-query):
19645         * lisp/userlock.el (ask-user-about-supersession-help):
19646         * lisp/whitespace.el (whitespace-report-region):
19647         Prefer (substitute-command-keys "`\\[foo-command]'")
19648         to "`M-x foo-command'" in docstrings and the like.
19650 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
19652         Use add-function for prettify-symbols-compose-predicate
19653         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
19654         prettify-symbols-compose-predicate in terms of add-function.
19655         * etc/NEWS: Mention prettify-symbols-compose-predicate and
19656         prettify-symbols-mode support in tex-mode.
19658 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
19660         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
19661         (smie-indent-exps, smie-indent-keyword): Use it.
19662         * test/indent/css-mode.css: Test alignment with leading comment.
19664 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
19666         Respect text-quoting-style in (*Finder*) menus
19667         * lisp/info.el (info--prettify-description):
19668         Treat description as a docstring, so that it's requoted as
19669         per text-quoting-style.
19671 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
19673         Document `window-use-time' in Elisp manual
19674         * doc/lispref/windows.texi (Selecting Windows): Document
19675         `window-use-time'.
19677 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
19679         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
19680         This is a cleaner fix for Bug#21260 than the previous change.
19682 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
19684         Respect text-quoting-style in calc
19685         In calc, tespect text-quoting-style preference in diagnostic
19686         formats and fix a few similar problems in docstrings.
19687         * lisp/calc/calc-aent.el (math-read-factor):
19688         * lisp/calc/calc-embed.el (calc-do-embedded):
19689         * lisp/calc/calc-ext.el (calc-user-function-list)
19690         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
19691         * lisp/calc/calc-help.el (calc-describe-key)
19692         (calc-describe-thing):
19693         * lisp/calc/calc-lang.el (calc-c-language)
19694         (math-parse-fortran-vector-end, math-parse-tex-sum)
19695         (math-parse-eqn-matrix, math-parse-eqn-prime)
19696         (calc-yacas-language, calc-maxima-language, calc-giac-language)
19697         (math-read-big-rec, math-read-big-balance):
19698         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
19699         (calc-auto-recompute):
19700         * lisp/calc/calc-prog.el (calc-user-define-invocation)
19701         (math-do-arg-check):
19702         * lisp/calc/calc-store.el (calc-edit-variable):
19703         * lisp/calc/calc-units.el (math-build-units-table-buffer):
19704         * lisp/calc/calc-vec.el (math-read-brackets):
19705         * lisp/calc/calc-yank.el (calc-edit-mode):
19706         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
19707         Use curved quotes in diagnostic format strings.
19708         * lisp/calc/calc-help.el (calc-describe-thing):
19709         Format docstrings with substitute-command-keys.
19710         * lisp/calc/calc-help.el (calc-j-prefix-help):
19711         * lisp/calc/calc-misc.el (calc-help):
19712         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
19713         Escape a docstring "`".
19715 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
19717         Fix documentation of 'menu-set-font' and 'set-frame-font'
19718         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
19719         * doc/lispref/frames.texi (Frame Font): Document that
19720         set-frame-font with the last argument 't' will also make the font
19721         the default for the future GUI frames.
19723         Document '--create-frame' option to emacsclient
19724         * doc/emacs/misc.texi (emacsclient Options): Document the
19725         '--create-frame' option.  (Bug#21308)
19727 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
19729         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
19731 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
19733         Document 'get-mru-window' in the ELisp manual
19734         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
19735         'get-mru-window'.  (Bug#21306)
19737         Clarify documentation of 'get-buffer-window-list'
19738         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
19739         current window, if relevant, will be the first in the list
19740         returned by 'get-buffer-window-list'.
19741         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
19743 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
19745         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
19746         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
19747         `switch-to-buffer'.
19749 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
19751         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
19752         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
19753         `display-buffer' instead of `switch-to-buffer'.
19755 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
19757         Follow user preference in calendar diagnostics
19758         Respect text-quoting-style preference in diagnostic formats by
19759         using curved quotes (which are translated as per text-quoting-style)
19760         instead of grave accent and apostrophe (which are not).
19761         * lisp/calendar/appt.el (appt-display-message):
19762         * lisp/calendar/diary-lib.el (diary-check-diary-file)
19763         (diary-mail-entries, diary-from-outlook):
19764         * lisp/calendar/icalendar.el (icalendar-export-region)
19765         (icalendar--convert-float-to-ical)
19766         (icalendar--convert-date-to-ical)
19767         (icalendar--convert-ical-to-diary)
19768         (icalendar--convert-recurring-to-diary)
19769         (icalendar--add-diary-entry):
19770         * lisp/calendar/time-date.el (format-seconds):
19771         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
19772         (timeclock-make-hours-explicit):
19773         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
19774         (todo-item-mark, todo-check-format)
19775         (todo-insert-item--next-param, todo-edit-item--next-key)
19776         (todo-mode):
19777         Use curved quotes in diagnostic format strings.
19778         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
19779         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
19780         Just use straight quoting for simple test case.
19782 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
19784         * src/gfilenotify.c (Fgfile_add_watch):
19785         Handle errors from g_file_monitor.
19787 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
19789         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
19790         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
19791         frame" instead of "non-minibuffer frame".
19793         Fix frame geometry related text
19794         * doc/lispref/frames.texi (Frame Layout):
19795         Rename `x-frame-geometry' to `frame-geometry'.
19796         * doc/lispref/frames.texi (Mouse Position):
19797         * doc/lispref/windows.texi (Coordinates and Windows):
19798         Use `set-mouse-absolute-pixel-position' instead of
19799         `x-set-mouse-absolute-pixel-position'.
19801         Sanitize frame geometry related functions
19802         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
19803         (Fx_frame_edges): Rename to Fns_frame_edges.
19804         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
19805         (Fx_frame_edges): Rename to Fw32_frame_edges.
19806         (Fx_mouse_absolute_pixel_position): Rename to
19807         Fw32_mouse_absolute_pixel_position.
19808         (Fx_set_mouse_absolute_pixel_position): Rename to
19809         Fw32_set_mouse_absolute_pixel_position.
19810         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
19811         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
19812         (ns-frame-edges, w32-mouse-absolute-pixel-position)
19813         (x-mouse-absolute-pixel-position)
19814         (w32-set-mouse-absolute-pixel-position)
19815         (x-set-mouse-absolute-pixel-position): Declare.
19816         (frame-geometry, mouse-absolute-pixel-position)
19817         (set-mouse-absolute-pixel-position): New functions.
19818         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
19820 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
19822         Fix MinGW64 build broken by latest w32uniscribe.c changes
19823         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
19824         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
19825         (Bug#21260)
19827 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
19829         Add TeX defaults for prettify-symbol-mode
19830         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
19831         Rename from tex-prettify-symbols-alist.
19832         (tex--prettify-symbols-compose-p): New function.
19833         (tex-common-initialization): Use them as prettify-symbols-alist
19834         and prettify-symbols-compose-predicate.
19836         Generalize prettify-symbols to arbitrary modes
19837         * lisp/progmodes/prog-mode.el
19838         (prettify-symbols-default-compose-p): New function.
19839         (prettify-symbols-compose-predicate): New variable.
19840         (prettify-symbols--compose-symbol): Use it.
19842 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
19844         Don't quote symbols 'like-this' in docstrings etc.
19845         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
19846         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
19847         * lisp/allout.el (allout-add-resumptions, allout-mode):
19848         * lisp/calculator.el (calculator-operators):
19849         * lisp/cedet/data-debug.el (dd-propertize):
19850         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
19851         * lisp/cedet/semantic/analyze/debug.el:
19852         (semantic-analyzer-debug-global-miss-text):
19853         * lisp/cedet/semantic/lex-spp.el:
19854         (semantic-lex-spp-replace-or-symbol-or-keyword):
19855         * lisp/cedet/semantic/symref.el:
19856         (semantic-symref-cleanup-recent-buffers-fcn):
19857         * lisp/cedet/semantic/tag.el (semantic-tag-class):
19858         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
19859         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
19860         * lisp/gnus/pop3.el (pop3-authentication-scheme):
19861         * lisp/help-fns.el (describe-function-orig-buffer):
19862         * lisp/imenu.el (imenu--history-list):
19863         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
19864         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
19865         (feedmail-queue-default-file-slug)
19866         (feedmail-queue-buffer-file-name):
19867         * lisp/net/mairix.el (mairix-searches-mode-map):
19868         * lisp/net/newst-backend.el (newsticker-retrieval-method)
19869         (newsticker-auto-mark-filter-list):
19870         * lisp/obsolete/vi.el (vi-mode):
19871         * lisp/progmodes/cc-engine.el (c-literal-type):
19872         * lisp/progmodes/cpp.el (cpp-face):
19873         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
19874         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
19875         * lisp/progmodes/pascal.el (pascal-auto-lineup):
19876         * lisp/progmodes/prog-mode.el (prog-widen):
19877         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
19878         (verilog-auto-lineup, verilog-auto-reset-widths)
19879         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
19880         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
19881         (flyspell-maybe-correct-doubling):
19882         * lisp/textmodes/table.el (table-justify, table-justify-cell)
19883         (table-justify-row, table-justify-column, table-insert-sequence)
19884         (table--justify-cell-contents):
19885         * lisp/url/url-auth.el (url-get-authentication):
19886         * lisp/window.el (display-buffer-record-window):
19887         * lisp/xml.el (xml-parse-file, xml-parse-region):
19888         * src/gfilenotify.c (Fgfile_add_watch):
19889         Don't quote symbols with apostrophes in doc strings.
19890         Use asymmetric quotes instead.
19891         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
19892         Likewise for symbol in diagnostic.
19893         * lisp/image.el (image-extension-data):
19894         * lisp/register.el (frame-configuration-to-register):
19895         * src/buffer.c (syms_of_buffer):
19896         Remove bogus apostrophes after symbols.
19897         * lisp/thumbs.el (thumbs-conversion-program):
19898         Quote Lisp string values using double-quotes, not apostrophes.
19900 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
19902         Describe frame geometry and related functions in Elisp manual
19903         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
19904         (Showing Images): Update references.
19905         * doc/lispref/elisp.texi (Top): Update node listing.
19906         * doc/lispref/frames.texi (Frame Geometry): New node.
19907         Move `Size and Position' section here.
19908         (Size Parameters): Update references.
19909         (Mouse Position): Update references and nomenclature.
19910         Describe new functions `x-mouse-absolute-pixel-position' and
19911         `x-set-mouse-absolute-pixel-position'.
19912         * doc/lispref/windows.texi (Window Sizes): Update references.
19913         (Resizing Windows): Update references.  Move description of
19914         `fit-frame-to-buffer' here.
19915         (Coordinates and Windows): Update nomenclature and references.
19916         Describe new arguments of `window-edges'.  Comment out
19917         descriptions of `window-left-column', `window-top-line',
19918         `window-pixel-left' and `window-pixel-top'.  Describe
19919         `window-absolute-pixel-position'.
19921 2015-08-20  Alan Mackenzie  <acm@muc.de>
19923         Handling of `c-parse-state'.  Fix low level bug.
19924         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
19925         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
19927 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
19929         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
19930         window instead of deleting it.
19932 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
19934         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
19935         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
19936         determine whether frame has a titlebar.
19937         Suggested by Eli Zaretskii <eliz@gnu.org>
19939 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
19941         Add a prettify-symbols-alist for (La)TeX
19942         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
19943         New variable holding an alist suitable as prettify-symbols-alist in
19944         (La)TeX modes.
19946 2015-08-19  Alan Mackenzie  <acm@muc.de>
19948         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
19949         Fixes debbugs#21275.
19950         In Emacs >= 25, let electric-pair-mode take precedence over
19951         delete-selection-mode.
19952         * lisp/delsel.el (delete-selection-uses-region-p): New function,
19953         previously a lambda expression in a property value for
19954         `self-insert-command'.
19955         (top-level): Set the `delete-selection' property of
19956         `self-insert-command' to `delete-selection-uses-region-p'.
19957         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
19958         property for c-electric-\(brace\|paren\) the value
19959         `delete-selection-uses-region-p' when the latter function exists.
19961 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
19963         Fix key binding quoting in tutorial *Help*
19964         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
19965         When generating help for custom key bindings, use the user-preferred
19966         quoting style rather than hardcoding the grave style.
19968 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
19970         Improve and future-proof OTF fonts support in w32uniscribe.c
19971         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
19972         about the expected results and why the new Uniscribe APIs are not
19973         used in this function.
19974         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
19975         (ScriptGetFontFeatureTags_Proc): New function typedefs.
19976         (uniscribe_new_apis): New static variable.
19977         (uniscribe_check_features): New function, implements OTF features
19978         verification while correctly accounting for features in the list
19979         after the nil member, if any.
19980         (uniscribe_check_otf_1): New function, retrieves the features
19981         supported by the font for the requested script and language using
19982         the Uniscribe APIs available from Windows Vista onwards.
19983         (uniscribe_check_otf): If the new Uniscribe APIs are available,
19984         use them in preference to reading the font data directly.  Call
19985         uniscribe_check_features to verify that the requested features are
19986         supported, replacing the original incomplete code.
19987         (syms_of_w32uniscribe): Initialize function pointers for the new
19988         Uniscribe APIs.  (Bug#21260)
19989         (otf_features): Scan the script, langsys, and feature arrays back
19990         to front, so that the result we return has them in alphabetical
19991         order, like ftfont.c does.
19992         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
19993         New variable for debugging w32uniscribe.c code.
19995 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
19997         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
19998         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
19999         clause of `isearch-search-fun-default'.  That lax variable does not
20000         refer to lax-whitespacing.  Related to (bug#21777).
20001         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
20002         * lisp/character-fold.el (character-fold-search): Set to nil.
20003         Default to nil for now, until someone implements proper
20004         lax-whitespacing with char-fold searching.
20006 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
20008         Fix doc-string of `help-mode-finish'.
20009         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
20011         In nsimage.m include coding.h (Bug#21292)
20012         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
20014         Move window edge functions to Elisp.
20015         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
20016         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
20017         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
20018         Move to window.el.
20019         (calc_absolute_offset): Remove.
20020         * lisp/frame.el (frame-edges): New function.
20021         * lisp/window.el (window-edges, window-pixel-edges)
20022         (window-absolute-pixel-edges): Move here from window.c.
20023         (window-body-edges, window-body-pixel-edges)
20024         (window-absolute-body-pixel-edges): Move here from window.c and
20025         rename "inside" to "body".  Keep old names as aliases.
20026         (window-absolute-pixel-position): New function.
20028 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
20030         [Gnus]: Use overlay functions directly
20031         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
20032         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
20033         (gnus-article-highlight-signature, gnus-article-extend-url-button)
20034         (gnus-article-add-button, gnus-insert-prev-page-button)
20035         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
20036         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
20037         (gnus-cite-add-face):
20038         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
20039         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
20040         (gnus-tree-recenter, gnus-highlight-selected-tree):
20041         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
20042         (gnus-summary-show-thread, gnus-summary-hide-thread)
20043         (gnus-highlight-selected-summary):
20044         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
20045         * lisp/gnus/message.el (message-fix-before-sending)
20046         (message-toggle-image-thumbnails):
20047         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
20048         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
20049         Use overlay functions directly instead of using gnus-overlay-*,
20050         message-overlay-*, and sieve-overlay-*.
20051         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
20052         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
20053         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
20054         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
20055         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
20056         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
20057         (message-overlay-get, message-overlay-put, message-overlays-in):
20058         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
20059         (sieve-overlays-at): Remove.
20061 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
20063         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
20064         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
20065         builds can use the declaration from the system headers.
20066         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
20067         definition of TITLEBAR_INFO.
20068         Suggested by Eli Zaretskii  <eliz@gnu.org>
20070 2015-08-19  Glenn Morris  <rgm@gnu.org>
20072         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
20074 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
20076         Use new q ‘format’ flag when fixing quotes in C
20077         * src/image.c (image_size_error): New function.  All uses of
20078         image_error with "Invalid image size ..."  changed to use it.
20079         * src/image.c (image_size_error, xbm_load_image, xbm_load)
20080         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
20081         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
20082         (imagemagick_load, svg_load, svg_load_image, gs_load)
20083         (x_kill_gs_process):
20084         * src/lread.c (load_warn_old_style_backquotes):
20085         * src/xfaces.c (load_pixmap):
20086         * src/xselect.c (x_clipboard_manager_error_1):
20087         Use %qs, not uLSQM and uRSQM.
20088         * src/syntax.c (Finternal_describe_syntax_value):
20089         Prefer Fsubstitute_command_keys to Fformat, as this lets
20090         us use AUTO_STRING.
20091         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
20092         as it's now guaranteed to be ASCII.
20093         * src/xselect.c (x_clipboard_manager_error_2):
20094         Avoid grave accent in low-level stderr diagnostic.
20096 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
20098         New q flag for ‘format’
20099         * doc/lispref/processes.texi (Sentinels):
20100         Don't hardwire grave quoting style in example.
20101         * doc/lispref/strings.texi (Formatting Strings):
20102         * etc/NEWS:
20103         Document new q flag.
20104         * src/editfns.c (Fformat): Implement it.
20106 2015-08-18  Daiki Ueno  <ueno@gnu.org>
20108         pinentry.el: Add debugging support
20109         * lisp/net/pinentry.el (pinentry-debug): New variable.
20110         (pinentry-debug-buffer): New variable.
20111         (pinentry--process-filter): Send input to the debug buffer, if
20112         `pinentry-debug' is set.
20114         pinentry.el: Improve multiline prompt
20115         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
20116         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
20117         command.
20119 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
20121         Fix multibyte confusion in diagnostics
20122         * src/print.c (print_error_message):
20123         Don't assume that the caller's name is unibyte.
20124         * src/xdisp.c (vadd_to_log):
20125         Don't assume that the formatted diagnostic is unibyte.
20127         Fix file name encodings in diagnostics
20128         Also, close some minor races when opening image files, by opening
20129         them once instead of multiple times.
20130         * src/gtkutil.c (xg_get_image_for_pixmap):
20131         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
20132         (svg_load):
20133         * src/nsimage.m (allocInitFromFile:):
20134         * src/xfns.c (xg_set_icon):
20135         Encode file name, since x_find_image_file no longer does that.
20136         * src/image.c (x_find_image_fd): New function.
20137         (x_find_image_file): Use it.  Do not encode resulting file name,
20138         since callers sometimes need it decoded.
20139         (slurp_file): File arg is now a fd, not a file name.
20140         All callers changed.  This saves us having to open the file twice.
20141         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
20142         (svg_load):
20143         Use x_find_image_fd and fdopen to save a file-open.
20144         Report file name that failed.
20145         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
20147 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
20149         Allow blink-matching-paren to jump off screen
20150         * doc/emacs/programs.texi (Matching): Mention the
20151         `blink-matching-paren' value `jump-offscreen'.
20152         * lisp/simple.el (blink-matching-paren): New possible value.
20153         (blink-matching-paren-on-screen): Clarify the docstring.
20154         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
20156         Refine the previous change
20157         * lisp/simple.el (blink-matching-open): Use minibuffer-message
20158         outside of save-excursion (bug#21286).
20160 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
20162         Rewrite and add frame geometry related functions.
20163         * src/frame.c (Fframe_position): New function.
20164         (Fset_frame_position): Rename parameters and rewrite doc-string.
20165         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
20166         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
20167         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
20168         Qtitle_bar_size.
20169         * src/nsfns.m (frame_geometry): New function.
20170         (Fx_frame_geometry): Call frame_geometry.
20171         (Fx_frame_edges): New function.
20172         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
20173         (GetTitleBarInfo_Proc): Define these so we can use the
20174         GetTitleBarInfo API.
20175         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
20176         (Fx_frame_geometry): Rewrite.
20177         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
20178         (Fx_set_mouse_absolute_pixel_position): New functions.
20179         * src/xfns.c (frame_geometry): New function.
20180         (Fx_frame_geometry): Call frame_geometry.
20181         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
20182         (Fx_set_mouse_absolute_pixel_position): New functions.
20184 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
20186         Improve Tramp's compatibility
20187         * lisp/net/tramp.el (tramp-get-method-parameter):
20188         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
20189         (tramp-adb-get-device):
20190         * lisp/net/trampver.el (tramp-repository-get-version):
20191         Use `tramp-compat-replace-regexp-in-string'.
20193 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
20195         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
20196         Encode/decode string.
20198 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
20200         Clarify what happens to match data on failure
20201         Problem reported by Ernesto Alfonso (Bug#21279).
20202         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
20203         Document more carefully what happens to match data after a failed
20204         search.
20205         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
20206         the return value is undefined if the last search failed.
20207         (Fmatch_data): Simplify doc string line 1.
20209 2015-08-18  Daiki Ueno  <ueno@gnu.org>
20211         Revert "pinentry.el: Support external passphrase cache"
20212         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
20213         pinentry.el shouldn't directly interact with the secrets service,
20214         but ask the caller to cache the passphrase.
20216 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
20218         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
20219         Message mode hooks.
20221 2015-08-17  Daiki Ueno  <ueno@gnu.org>
20223         epg.el: Make gpgconf output parsing future proof
20224         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
20225         --list-options" output.
20227         pinentry.el: Support external passphrase cache
20228         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
20229         (pinentry--allow-external-password-cache): New local variable.
20230         (pinentry--key-info): New local variable.
20231         (secrets-enabled, secrets-search-items, secrets-get-secret):
20232         Declare.
20233         (pinentry--send-passphrase): New function, split from
20234         `pinentry--process-filter'.
20235         (pinentry--process-filter): Use secrets.el to retrieve passphrase
20236         from login keyring.
20238         pinentry.el: Popup window for multiline prompt
20239         * lisp/net/pinentry.el (pinentry): New custom group.
20240         (pinentry-popup-prompt-window): New user option.
20241         (pinentry-prompt-window-height): New user option.
20242         (pinentry--prompt-buffer): New variable.
20243         (pinentry-prompt-mode-map): New variable.
20244         (pinentry-prompt-mode): New function.
20245         (pinentry--prompt): New function.
20246         (pinentry--process-filter): Use `pinentry--prompt' instead of
20247         `read-passwd' and `y-or-n-p'.
20249 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
20251         message.el: Silent the byte compiler
20252         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
20253         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
20254         (message-delete-overlay, message-window-inside-pixel-edges):
20255         Declare before using.
20257         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
20258         (message-window-inside-pixel-edges): XEmacs compatible functions.
20260 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
20262         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
20264 2015-08-17  Noah Friedman  <friedman@splode.com>
20266         * lisp/simple.el (blink-matching-open): Restore point before
20267         calling minibuffer-message.
20269 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
20271         * lisp/play/dunnet.el: Update version number in header (now
20272         matches help).
20274 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
20276         Curved quotes in --batch diagnostics in non-UTF-8
20277         When run with --batch, check that curved quotes are compatible with
20278         the system locale before outputting them in diagnostics.
20279         Problem reported by Eli Zaretskii in:
20280         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
20281         * lisp/startup.el (command-line): Set internal--text-quoting-flag
20282         after the standard display table is initialized.
20283         * src/doc.c (default_to_grave_quoting_style): New function.
20284         (text_quoting_style): Use it.
20285         (text_quoting_flag): New static var, visible to Lisp as
20286         internal--text-quoting-flag.
20287         * src/emacs.c: Include <wchar.h> if available.
20288         (using_utf8): New function.
20289         (main): Use it to initialize text_quoting_flag.
20290         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
20291         Don't define, as it's not needed and it clashes with wchar.h.
20293 2015-08-17  Glenn Morris  <rgm@gnu.org>
20295         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
20296         from makeinfo about spurious "Note:" cross-reference, and for grammar.
20298 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
20300         Minor change in variable initialization on MS-Windows
20301         * src/w32fns.c <after_dead_key>: Initialize to -1.
20302         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
20303         non-zero.
20305         Fix a bug with LWindow key remapping on MS-Windows
20306         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
20308 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
20310         Improve fontset support for latest OTF script tags
20311         * lisp/international/fontset.el (otf-script-alist): Add some
20312         missing script tags.
20313         (setup-default-fontset): Include settings for v2 versions of the
20314         script tags used by some modern OTF/TTF fonts.
20316 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
20318         Spelling fixes
20320 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
20322         Use curved quotes in core elisp diagnostics
20323         In the core elisp files, use curved quotes in diagnostic formats,
20324         so that they follow user preference as per ‘text-quoting-style’
20325         rather than being hard-coded to quote `like this'.
20326         * lisp/abbrev.el (expand-region-abbrevs):
20327         * lisp/button.el (button-category-symbol, button-put)
20328         (make-text-button):
20329         * lisp/cus-start.el:
20330         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
20331         (custom--sort-vars-1, load-theme):
20332         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
20333         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
20334         (cl-generic-generalizers):
20335         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
20336         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
20337         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
20338         (advice--make, define-advice):
20339         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
20340         * lisp/emacs-lisp/timer.el (timer-event-handler):
20341         * lisp/env.el (setenv):
20342         * lisp/facemenu.el (facemenu-add-new-face)
20343         (facemenu-add-new-color):
20344         * lisp/faces.el (face-documentation, read-face-name)
20345         (face-read-string, read-face-font, face-spec-set-match-display)
20346         (read-color, x-resolve-font-name):
20347         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
20348         (set-auto-mode, hack-local-variables)
20349         (hack-one-local-variable--obsolete)
20350         (dir-locals-set-directory-class, write-file)
20351         (basic-save-buffer, delete-directory, copy-directory)
20352         (recover-session, recover-session-finish, insert-directory)
20353         (file-modes-char-to-who, file-modes-symbolic-to-number)
20354         (move-file-to-trash):
20355         * lisp/font-lock.el (font-lock-fontify-buffer):
20356         * lisp/format.el (format-write-file, format-find-file)
20357         (format-insert-file):
20358         * lisp/frame.el (get-device-terminal, select-frame-by-name):
20359         * lisp/fringe.el (fringe--check-style):
20360         * lisp/help.el (describe-minor-mode-from-indicator):
20361         * lisp/image.el (image-type):
20362         * lisp/international/fontset.el (x-must-resolve-font-name):
20363         * lisp/international/mule-cmds.el (prefer-coding-system)
20364         (select-safe-coding-system-interactively)
20365         (select-safe-coding-system, activate-input-method)
20366         (toggle-input-method, describe-current-input-method):
20367         * lisp/international/mule-conf.el (code-offset):
20368         * lisp/mouse.el (minor-mode-menu-from-indicator):
20369         * lisp/replace.el (query-replace-read-from)
20370         (occur-after-change-function, occur-1):
20371         * lisp/scroll-bar.el (scroll-bar-columns):
20372         * lisp/simple.el (execute-extended-command)
20373         (undo-outer-limit-truncate, compose-mail, set-variable)
20374         (choose-completion-string, define-alternatives):
20375         * lisp/startup.el (site-run-file, tty-handle-args)
20376         (command-line, command-line-1):
20377         * lisp/subr.el (noreturn, define-error, add-to-list)
20378         (read-char-choice):
20379         * lisp/term/common-win.el (x-handle-xrm-switch)
20380         (x-handle-name-switch, x-handle-args):
20381         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
20382         Use curved quotes in diagnostics.
20383         * lisp/international/mule.el (find-auto-coding):
20384         Use " to quote in a diagnostic, to be consistent with the rest of
20385         this file.
20387         Convert lisp/term/x-win.el to UTF-8
20388         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
20389         runtime behavior, and the file is multilingual so compile-time
20390         appearance shouldn't be an issue.
20391         * admin/notes/unicode: Document this.
20393 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
20395         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
20396         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
20397         issues and comments, bug#943.
20398         (verilog-type-font-keywords): Cycle delay operators like ##1 and
20399         ##[0:$] are now highlighted in their entirety similarly to the #
20400         delay-control operator.  Likewise, the followed-by operators #-#
20401         and #=# are no longer partially highlighed.
20402         (verilog-backward-syntactic-ws-quick)
20403         (verilog-skip-backward-comments): Minor performance improvements
20404         to buffer traversal functions for reduced latency.
20405         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
20406         keyword 'final' follows 'assert/assume/cover', then it is part of
20407         a deferred immediate assertion item and should not be treated as a
20408         final construct for indentation.  Reported by Yuri Sugihara.
20409         (verilog-do-indent): Virtual task/function/class definition lines
20410         should not be considered as declarations.  Reported by Enzo Chi.
20411         (verilog-do-indent): Do not falsely indent to '=' of
20412         property/sequence operators on subsequent lines of a multi-line
20413         statement.
20414         (verilog-assignment-operator-re): Fix '!==' operator and add
20415         support for '<->', ':/', '#-#', and '#=#' operators.
20416         (verilog-calculate-indent, verilog-label-be): Enable
20417         case-sensitive regular expression parsing when looking for
20418         keywords.
20419         (verilog-calc-1): Detect 'pure virtual method' declarations which
20420         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
20421         (verilog-backward-ws&directives): When moving back to the start of
20422         a line and the preceeding line ended with an escaped-newline, then
20423         jump up one line.  This properly consumes a multi-line
20424         pre-processor directive.  Reported by Kaushal Modi.
20425         (verilog-dpi-import-export-re, verilog-extended-complete-re)
20426         (verilog-calc-1): Teach verilog-mode to properly indent after a
20427         DPI import/export statement that resides outside of a module.
20428         Reported by Kaushal Modi.
20429         (verilog-extended-complete-re): Update regexp to match both
20430         "DPI-C" and "DPI".  Reported by Kaushal Modi.
20432 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
20434         substitute-command-keys a few more doc strings
20435         * lisp/allout.el (outlineify-sticky):
20436         * lisp/files.el (hack-one-local-variable--obsolete):
20437         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
20438         Use substitute-command-keys on some doc strings so that
20439         they don't use hard-coded key bindings or quoting styles.
20441         Fix quoting in Fformat calls
20442         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
20443         (xpm_load, xpm_load_image, pbm_load, png_load_body)
20444         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
20445         (imagemagick_load, svg_load, svg_load_image, gs_load)
20446         (x_kill_gs_process):
20447         * src/lread.c (load_warn_old_style_backquotes):
20448         * src/xfaces.c (load_pixmap):
20449         * src/xselect.c (x_clipboard_manager_error_1):
20450         Quote diagnostics according to user preference when calling
20451         Fformat or its derivatives.
20453 2015-08-15  Glenn Morris  <rgm@gnu.org>
20455         * admin/admin.el (set-version, set-copyright): Remove deleted files.
20457 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
20459         Allow describe-function helpers to access buffer-local values
20460         This will be used by cedet/mode-local.el `describe-mode-local-override'
20461         on `help-fns-describe-function-functions' in upstream CEDET.
20462         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
20463         `describe-function'.
20464         (describe-function): Bind it, save it on the help xref stack.
20466         Handle pulse-background being nil
20467         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
20468         pulse-background, handle it being nil.
20470 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
20472         Fix "\`" confusion in Lisp strings
20473         * admin/authors.el (authors-canonical-author-name):
20474         Fix typo by using "\\`" not "\`" in string RE.
20475         * lisp/obsolete/complete.el (PC-complete-as-file-name):
20476         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
20477         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
20478         Use plain "`", not the equivalent-but-confusing "\`", in strings.
20479         * lisp/textmodes/texinfmt.el: Fix comment likewise.
20481 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
20483         * nt/zipdist.bat: Remove -- no longer used.
20485 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
20487         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
20488         rather than "getenforce".
20489         (tramp-sh-handle-set-file-selinux-context): Do not
20490         cache SELinux context if not all context components are given.
20492 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
20494         Add doc strings to 2 help-mode.el functions
20495         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
20496         strings.  (Bug#21263)
20498         Remove files used by the old MS-Windows specific build procedure
20499         * admin/unidata/makefile.w32-in:
20500         * doc/emacs/makefile.w32-in:
20501         * doc/lispintro/makefile.w32-in:
20502         * doc/lispref/makefile.w32-in:
20503         * doc/misc/makefile.w32-in:
20504         * leim/makefile.w32-in:
20505         * lib-src/makefile.w32-in:
20506         * lib/makefile.w32-in:
20507         * lisp/makefile.w32-in:
20508         * nt/INSTALL.OLD:
20509         * nt/config.nt:
20510         * nt/emacs-src.tags:
20511         * nt/envadd.bat:
20512         * nt/gmake.defs:
20513         * nt/makefile.w32-in:
20514         * nt/multi-install-info.bat:
20515         * nt/nmake.defs:
20516         * nt/paths.h:
20517         * src/makefile.w32-in: Files deleted.
20518         * nt/configure.bat: Remove everything except the blurb about the
20519         new build procedure.
20520         * make-dist: Remove references to makefile.w32-in in various
20521         directories, and to files in nt/ that were deleted.
20522         * etc/NEWS: Mention the fact that the files were dropped.
20524 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
20526         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
20527         (Bug#21248)
20529 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
20531         Default to inotify instead of gfile
20532         * configure.ac (with_file_notification): Fix typo that
20533         prevented suppression of file notification if HAVE_NS.
20534         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
20535         with_file_notification is 'yes' (Bug#21241).
20536         * etc/NEWS: Mention this.
20538         Fix broken URLs for ISO-IR
20539         * doc/emacs/mule.texi (Charsets):
20540         * lisp/international/mule-conf.el:
20541         Fix broken URL (Bug#21248).
20543         Low-level diagnostics now use ‘text-quoting-style’
20544         * src/doprnt.c (doprnt):
20545         Format ` and ' as per ‘text-quoting-style’.
20546         * src/xdisp.c (vmessage, message): Mention that the format should
20547         not contain ` or '.
20549         Prefer ‘format’ to ‘substitute-command-keys’
20550         * src/character.h (uLSQM, uRSQM): Move here ...
20551         * src/doc.c (uLSQM, uRSQM): ... from here.
20552         * src/doc.c (Fsubstitute_command_keys):
20553         * src/syntax.c (Finternal_describe_syntax_value):
20554         * lisp/cedet/mode-local.el (mode-local-print-binding)
20555         (mode-local-describe-bindings-2):
20556         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
20557         * lisp/cus-theme.el (describe-theme-1):
20558         * lisp/descr-text.el (describe-text-properties-1, describe-char):
20559         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
20560         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
20561         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
20562         * lisp/emacs-lisp/package.el (describe-package-1):
20563         * lisp/faces.el (describe-face):
20564         * lisp/help-fns.el (help-fns--key-bindings)
20565         (help-fns--compiler-macro, help-fns--parent-mode)
20566         (help-fns--obsolete, help-fns--interactive-only)
20567         (describe-function-1, describe-variable):
20568         * lisp/help.el (describe-mode):
20569         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
20570         to implement quoting style.  This generally makes the code simpler.
20572         Extend ‘format’ to translate curved quotes
20573         This is a followup to the recent doc string change, and deals with
20574         diagnostics and the like.  This patch is more conservative than
20575         the doc string change, in that the behavior of ‘format’ changes
20576         only if its first arg contains curved quotes and the user prefers
20577         straight or grave quotes.  (Come to think of it, perhaps we should
20578         be similarly conservative with doc strings too, but that can wait.)
20579         The upside of this conservatism is that existing usage is almost
20580         surely unaffected.  The downside is that we'll eventually have to
20581         change Emacs's format strings to use curved quotes in places where
20582         the user might want curved quotes, but that's a simple and
20583         mechanical translation that I'm willing to do later.  (Bug#21222)
20584         * doc/lispref/help.texi (Keys in Documentation):
20585         Move description of text-quoting-style from here ...
20586         * doc/lispref/strings.texi (Formatting Strings):
20587         ... to here, and describe new behavior of ‘format’.
20588         * etc/NEWS: Describe new behavior.
20589         * lisp/calc/calc-help.el (calc-describe-thing):
20590         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
20591         * lisp/info.el (Info-find-index-name):
20592         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
20593         of recently-added curved quotes.
20594         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
20595         Move from here ...
20596         * src/lisp.h: ... to here.
20597         * src/doc.c (text_quoting_style): New function.
20598         (Fsubstitute_command_keys): Use it.
20599         * src/editfns.c (Fformat): Implement new behavior.
20600         * src/lisp.h (enum text_quoting_style): New enum.
20602 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
20604         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
20605         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
20607 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
20609         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
20610         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
20612 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
20614         Flush file properties in Tramp
20615         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
20616         (tramp-sh-handle-set-file-times):
20617         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
20618         (tramp-adb-handle-set-file-times): Flush the file properties of
20619         the directory.
20621 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
20623         * doc/emacs/misc.texi (Amusements): Fixed typo.
20625 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
20627         Don't miss warnings about removing string text properties while dumping
20628         * src/alloc.c (purecopy): Warn about removing a string's text
20629         properties even when the same string was already pure-copied
20630         earlier.
20631         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
20632         (elisp--xref-format-extra): Fix the commentary.
20634 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
20636         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
20638 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
20640         * lisp/progmodes/compile.el: Use lexical-binding.
20641         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
20643 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
20645         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
20646         * lisp/uniquify.el: Remove redundant `:group's.
20648 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
20650         * lisp/net/tramp-adb.el
20651         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
20652         result to prevent modification of the tramp-cache by side effects.
20653         Use the correct cache key.
20655 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
20657         Make add_to_log varargs
20658         * src/alloc.c (run_finalizer_handler):
20659         * src/charset.c (load_charset_map_from_vector):
20660         * src/nsimage.m (ns_load_image):
20661         * src/xfaces.c (load_pixmap, load_color2):
20662         Simplify, now that add_to_log has a variable number of args.
20663         * src/image.c (image_error): Take a variable number of args.
20664         Callers simplified.
20665         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
20666         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
20667         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
20668         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
20670         Optional args for holiday-greek-orthodox-easter
20671         * etc/NEWS: Document this.
20672         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
20673         Add optional args N and STRING, mimicking the API and code of
20674         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
20676 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
20678         xref-find-definitions: Exclude more generic function items.
20679         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
20680         Add doc string.
20681         (cl--generic-find-defgeneric-regexp): New.
20682         (find-function-regexp-alist): Add it.
20683         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
20684         elisp-mode.el, change to search for ";;; Code:"
20685         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
20686         (find-function-regexp-alist): Add them.
20687         * lisp/progmodes/elisp-mode.el:
20688         (elisp--xref-format, elisp--xref-format-extra): Change back to
20689         defvar due to bug#21237.
20690         (elisp--xref-find-definitions): Exclude co-located default methods for
20691         generic functions.  Also exclude implicitly declared defgeneric.
20692         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
20693         mode variables defined by 'define-minor-mode'.
20694         * test/automated/elisp-mode-tests.el: Declare generic functions, add
20695         tests for them.
20696         (xref-elisp-test-run): Fix bug.
20697         (emacs-test-dir): Improve initial value.
20698         (find-defs-defun-defvar-el): Don't expect defvar.
20699         (find-defs-feature-el): Match change to find-feature-regexp.
20701 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
20703         Improve warning about purecopy of strings with properties
20704         * src/alloc.c (purecopy): Show the offending string with the
20705         warning about removing its text properties.
20707 2015-08-12  Alan Mackenzie  <acm@muc.de>
20709         Introduce new macros to cover Emacs's new names in cl-lib.el
20710         This also eliminates `mapcan' warnings in XEmacs.
20711         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
20712         characterise [X]Emacs versions.
20713         (top-level): Require either 'cl or 'cl-lib, depending on
20714         c--mapcan-status.
20715         Change this back to cc-external-require from an eval-when-compile
20716         require.
20717         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
20718         (c--delete-duplicates): New macros which expand into either old or new
20719         names.
20720         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
20721         rather than the old names.
20722         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
20723         rather than mapcan.
20724         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
20725         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
20726         depending on c--mapcan-status.
20727         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
20728         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
20729         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
20730         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
20731         (c-decl-block-key, c-keywords, c-keywords-obarray)
20732         (c-regular-keywords-regexp, c-primary-expr-regexp)
20733         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
20734         (c-known-type-key, c-nonlabel-token-key)
20735         (c-make-init-lang-vars-fun): Use the new macros rather than the old
20736         names.
20738 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
20740         loadhist.el (read-feature): Conform to completing-read
20741         * lisp/loadhist.el (read-feature): According to `completing-read'
20742         documentation, if collection is a list, then it must be a list of
20743         strings, not a list of symbols like before.
20745 2015-08-12  David Kastrup  <dak@gnu.org>
20747         Deal gracefully with up-events (Bug#19746)
20748         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
20749         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
20750         those may easily be injected by user-level Lisp code.
20751         (read_key_sequence): Discard unbound up-events like unbound
20752         down-events: they are even more likely only relevant for special
20753         purposes.
20754         While Emacs will not produce up-events on its own currently (those are
20755         converted to drag or click events before being converted to
20756         Lisp-readable structures), the input queue can be made to contain them
20757         by synthesizing events to `unread-command-events'.  Emacs should deal
20758         consistently with such events.
20760 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
20762         Fix display of thin lines whose newline has line-height property of t
20763         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
20764         and descent values of non-empty glyph rows, since they could have
20765         forced low values deliberately.  (Bug#21243)
20767 2015-08-12  Richard Stallman  <rms@gnu.org>
20769         Offer to combine multiple To or CC fields.
20770         * lisp/mail/sendmail.el (mail-combine-fields): New function.
20771         (mail-send): Call 'mail-combine-fields'.
20773         Don't decrypt encrypted files.
20774         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
20776         Handle encrypted mbox files.
20777         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
20778         the mbox file if necessary.
20780         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
20781         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
20782         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
20783         In a mime message, reenable Mime and show the parts that
20784         were shown before.
20785         Add keyword "decrypt" if anything decrypted.
20787         epa-inhibit inhibits auto-recognition of .gpg files
20788         * lisp/epa-file.el (epa-inhibit): New variable.
20789         (epa-file-handler): Check epa-inhibit.
20791 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
20793         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
20795 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
20797         Respect python.el imenu when semantic-mode is off
20798         Fixes bug#21220
20799         * lisp/cedet/semantic/wisent/python.el: Do not force
20800         wisent-python-default-setup on python-mode-hook.
20802 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
20804         Give names to Unicode code points in C code
20805         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
20806         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
20807         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
20808         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
20809         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
20810         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
20811         (OBJECT_REPLACEMENT_CHARACTER):
20812         New named constants for Unicode code points.
20813         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
20814         * src/composite.c (char_composable_p):
20815         * src/lread.c (readevalloop, read1):
20816         * src/xdisp.c (get_next_display_element):
20817         Use them.
20818         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
20819         Remove; now in character.h.
20821 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
20823         elisp--xref-find-definitions handle cl-defstuct default constructor
20824         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
20825         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
20826         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
20827         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
20828         from xref-elisp-test for ease of debugging.
20829         (xref-elisp-deftest): Rename from xref-elisp-test.
20830         (find-defs-constructor): New test.
20831         (find-defs-defgeneric-el): Match batch test config.
20832         (compile): Required for find-defs compilation-minor-mode test.
20833         (find-defs-defvar-el): Match code change.
20834         (find-defs-face-el): Match code change.
20835         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
20836         Improve doc string.
20838 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
20840         * lisp/replace.el (perform-replace): Document `replacements'.
20841         (perform-replace): Move the description of the format of `replacements'
20842         from the body's comment to the doc string.
20844 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
20846         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
20847         sequence.  Recent adb version send initial escape sequences, even
20848         when terminal type is set to TERM=dumb.
20850 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
20852         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
20853         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
20854         Function deleted.
20855         (elisp--xref-format-cl-defmethod): New defconst.
20856         (find-feature-regexp, find-alias-regexp): New defcustoms.
20857         (elisp--xref-make-xref): New function.
20858         (elisp--xref-find-definitions): Rewrite using the above, handle many
20859         more cases.  Always output all available definitions.
20860         (xref-location-marker): No need for special cases.
20861         * test/automated/elisp-mode-tests.el: Add more tests of
20862         elisp--xref-find-definitions, improve current tests.
20864 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
20866         Fix recording of events pushed onto unread-command-events
20867         * src/keyboard.c (read_char): Make sure events read from
20868         unread-command-events and unread-post-input-method-events are
20869         always recorded by record_char.  Reported by David Kastrup
20870         <dak@gnu.org>, see
20871         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
20873 2015-08-10  Samer Masterson  <samer@samertm.com>
20875         Set file buffer as current for "--file"
20876         * lisp/startup.el (command-line-1): Set file buffer as current before
20877         it is displayed so it can be used with options like "--eval".
20878         (Bug#21095)
20880 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
20882         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
20883         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
20884         after setting LC_ALL to the desired locale, to avoid affecting how
20885         numbers are read and printed.  (Bug#21223)
20887 2015-08-10  Alan Mackenzie  <acm@muc.de>
20889         Fix "Invalid search bound (wrong side of point)" in fontification
20890         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
20891         an initialization expression, check point is not beyond the
20892         fontification limit.
20894 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
20896         Fix DPI calculation when Xft/DPI is default
20897         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
20898         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
20899         Remove unnecessary cast while we're in the neighborhood.
20901 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
20903         Add project-vc-search-path and project-vc-ignores
20904         * lisp/progmodes/project.el (project-vc): New group.
20905         (project-vc-search-path, project-vc-ignores): New variables.
20906         (project--value-in-dir): Utility function.
20907         (project-search-path, project-ignores): Use them.
20908         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
20909         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
20911 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
20913         Fix some minor quoting issues with grave accent
20914         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
20915         Remove redundant quotes.
20916         * src/doc.c (uLSQM, uRSQM): New macros.
20917         * src/doc.c (Fsubstitute_command_keys):
20918         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
20919         preference for quotes rather than hardcoding the ‘grave’ style.
20920         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
20921         (re_match_2_internal) [DEBUG]: In debugging output, quote C
20922         strings with "...", not `...'.
20924         ChangeLog.2 ignores remote-tracking merges
20925         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
20926         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
20927         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
20929 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
20931         Use kpsewhich in ffap-latex-mode, if available
20932         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
20933         (ffap-latex-mode): Use kpsewhich if available.
20935         ffap: disallow braces in filenames for tex modes
20936         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
20937         braces in tex-related modes.
20939         Remove useless backslashes from ffap-string-at-point-mode-alist
20940         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
20941         misleading backslashes from default value.
20943         Augment docstring of ffap-string-at-point-mode-alist
20944         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
20945         and END are handled.
20947 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
20949         * lisp/org/org-src.el (org-edit-src-code)
20950         (org-edit-fixed-width-region):
20951         * lisp/simple.el (completion-setup-function):
20952         Remove calls to substitute-command-keys that always just return
20953         their argument.
20955 2015-08-09  Daiki Ueno  <ueno@gnu.org>
20957         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
20958         (Bug#21210)
20960 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
20962         Fix link to source code in help window
20963         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
20964         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
20965         'No longer include timestamp in header of .elc files'.  Add code
20966         that will return .el source file in load-path.
20968 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
20970         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
20971         Respect `isearch-lax-whitespace' when searching through
20972         `isearch-word'.
20974 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
20976         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
20978         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
20979         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
20980         (org-set-regexps-and-options, org-assign-fast-keys)
20981         (org-contextualize-keys, org-contextualize-validate-key)
20982         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
20983         (org-find-olp, org-find-exact-heading-in-directory)
20984         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
20985         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
20986         (org-replace-escapes): Use dolist.
20987         (org-mode): Optimize away XEmacs-only code.
20988         (org-refile-get-targets): Remove unused var `f'.
20989         (org-fast-todo-selection): Remove unused var `e'.
20990         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
20991         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
20992         (org-format-latex): Use dolist.  Remove unused var `e'.
20993         (org-toggle-heading): Access vars lexically rather than dynamically.
20994         (org-backward-sentence, org-forward-sentence, org-meta-return)
20995         (org-kill-line): Mark arg as unused.
20996         (org-submit-bug-report): Silence compiler warning.
20997         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
20998         (org-get-cursor-date): Remove unused var `tm'.
20999         (org-comment-or-uncomment-region): Use standard name `_'.
21000         (reftex-docstruct-symbol, reftex-cite-format): Declare to
21001         silence byte-compiler.
21002         (org-reftex-citation): Add `org--' prefix to dynamically scoped
21003         `rds' var.
21005 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
21007         Electric quote if coding is undecided or no conv
21008         * lisp/electric.el (electric--insertable-p): Also say that a
21009         string is insertable if the buffer file coding system is undecided
21010         or uses no conversion, as curved quotes will work in either case.
21012         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
21014 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
21016         Fix overlay string display regressions introduced in Emacs 24.5
21017         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
21018         buffer position, if we move the iterator to a new position as
21019         result of jumping over text covered by a "replacing" display
21020         property.
21021         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
21023         Support recovery from C stack overflow on MS-Windows
21024         * src/w32fns.c (w32_reset_stack_overflow_guard)
21025         (stack_overflow_handler): New functions for handling C stack
21026         overflow exceptions.
21027         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
21028         specially, and zero out except_addr if we do.
21029         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
21030         mode.
21031         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
21032         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
21033         the MinGW build, but the code guarded by that is for Posix hosts.
21034         * src/keyboard.c (command_loop) [WINDOWSNT]:
21035         Call w32_reset_stack_overflow_guard.
21036         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
21037         (sigsetjmp): New macro.
21038         (w32_reset_stack_overflow_guard): Declare the prototype.
21039         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
21041 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
21043         Improve error signalling for seq-subseq
21044         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
21045         when indexes are too large, but to silently ignore numbers which
21046         are too negative for lists.  String and vector handling errors in
21047         both cases.  This has been regularized.  Error signaling behavior
21048         has been explicitly added to the doc string.
21050         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
21051         therefore also impacted by this change.  Update the doc string
21052         to reflect this.
21054         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
21055         added for these exceptional cases, as well as one non exceptional
21056         base case.
21058 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
21060         Improve error checking in tramp-adb.el
21061         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
21062         Improve error checking.  "ls -l" on Android in Enforcing mode can
21063         print "lstat './FILENAME failed: Permission denied".
21065 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
21067         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
21068         non-struct vectors.
21070 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
21072         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
21073         * lisp/window.el: Fix typo that broke build.
21074         (display-buffer--action-function-custom-type):
21075         Add `display-buffer-use-some-frame'.
21076         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
21078         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
21079         * lisp/window.el (display-buffer-use-some-frame): Add support for
21080         'inhibit-same-window in alist.
21081         * doc/lispref/windows.texi (display-buffer-use-some-frame):
21082         Doc support for 'inhibit-same-window in alist.
21084 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
21086         Avoid infinite loop in display of invisible text in strings
21087         * src/xdisp.c (handle_invisible_prop): If the next change of
21088         invisibility spec does not mean the beginning of a visible text,
21089         update the string position from which to start the search for the
21090         next invisibility change.  This avoids an infinite loop when we
21091         have more than one invisibility spec that are made inactive by
21092         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
21093         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
21094         for the situation that caused bug #21200.
21096 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
21098         * lisp/emacs-lisp/package.el: Simplify describe-package-1
21099         (package-help-section-name-face): New face.
21100         (package--print-help-section): New function.
21101         (describe-package-1): Refactor section printing.
21102         (package-make-button): Use face instead of font-lock-face, which
21103         doesn't work on buttons.
21105         * lisp/emacs-lisp/package.el: Define custom faces
21106         (package-name-face, package-description-face)
21107         (package-status-built-in-face, package-status-external-face)
21108         (package-status-available-face, package-status-new-face)
21109         (package-status-held-face, package-status-disabled-face)
21110         (package-status-installed-face, package-status-dependency-face)
21111         (package-status-unsigned-face, package-status-incompat-face)
21112         (package-status-avail-obso-face): New faces.
21113         (package-menu--print-info-simple): Use them.
21115 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
21117         Fix some confusion with ‘format’
21118         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
21119         (allout-graphics-modification-handler):
21120         Protect arbitrary string in a format context with "%s" format.
21121         * lisp/avoid.el:
21122         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
21123         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
21124         * lisp/erc/erc-button.el (erc-button-beats-to-time):
21125         * lisp/gnus/message.el (message-send-form-letter):
21126         * lisp/org/ob-core.el (org-babel-check-evaluate)
21127         (org-babel-confirm-evaluate):
21128         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
21129         * lisp/org/ox-latex.el (org-latex-compile):
21130         * lisp/org/ox-man.el (org-man-compile):
21131         * lisp/org/ox-odt.el (org-odt-template):
21132         * lisp/org/ox-texinfo.el (org-texinfo-compile):
21133         * lisp/progmodes/prolog.el (prolog-help-info)
21134         (prolog-view-predspec):
21135         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
21136         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
21137         * lisp/textmodes/rst.el (rst-replace-lines):
21138         Change (message (format ...)) to (message ...), and likewise
21139         for ‘error’.  This lessens the probability of confusion when the
21140         output of ‘format’ contains ‘%’.
21142 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
21144         * lisp/replace.el (replace-character-fold): Default to nil.
21146         * lisp/character-fold.el: Fix lax whitespace.
21147         (character-fold-table): Don't make space match other whitespace chars.
21148         (character-fold-to-regexp): Simplify lax behavior.
21150 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
21152         Preserve window point in xref-find-definitions-other-window
21153         Fix the problem reported by Ingo Logmar in
21154         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
21155         * lisp/progmodes/xref.el (xref--goto-char): Extract from
21156         xref--goto-location.
21157         (xref--pop-to-location): Use it.  Replace xref--goto-location with
21158         a direct xref-location-marker call.
21159         (xref--show-location): Likewise.
21160         (xref--display-position): Use xref--goto-char.
21162         * lisp/progmodes/project.el: Add a paragraph to the front matter.
21164 2015-08-04  David Kastrup  <dak@gnu.org>
21166         * lisp/vc/emerge.el (emerge-show-file-name):
21167         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
21168         (vhdl-comment-insert, vhdl-hooked-abbrev):
21169         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
21170         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
21171         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
21172         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
21173         * lisp/obsolete/vip.el (vip-escape-to-emacs)
21174         (vip-prefix-arg-value, vip-prefix-arg-com):
21175         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
21176         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
21177         (quail-tibkey-update-translation):
21178         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
21179         * lisp/leim/quail/lao.el (quail-lao-update-translation):
21180         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
21181         (quail-japanese-self-insert-and-switch-to-alpha):
21182         * lisp/leim/quail/hangul.el (hangul2-input-method)
21183         (hangul3-input-method, hangul390-input-method):
21184         * lisp/language/hanja-util.el (hangul-to-hanja-char):
21185         * lisp/international/robin.el (robin-input-method):
21186         * lisp/international/quail.el (quail-start-translation)
21187         (quail-start-conversion):
21188         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
21189         (gnus-article-describe-key-briefly):
21190         * lisp/eshell/em-hist.el (eshell-list-history):
21191         * lisp/term.el (term-dynamic-list-input-ring)
21192         (term-dynamic-list-completions):
21193         * lisp/subr.el (momentary-string-display):
21194         * lisp/simple.el (read-quoted-char):
21195         * lisp/pcomplete.el (pcomplete-show-completions):
21196         * lisp/kmacro.el (kmacro-repeat-on-last-key):
21197         * lisp/info.el (Info-summary):
21198         * lisp/ehelp.el (electric-help-command-loop):
21199         * lisp/ebuff-menu.el (electric-buffer-list)
21200         (Electric-buffer-menu-exit):
21201         * lisp/double.el (double-translate-key):
21202         * lisp/comint.el (comint-dynamic-list-input-ring)
21203         (comint-dynamic-list-completions): Do not overwrite preexisting
21204         contents of `unread-command-events' when putting new events into it.
21206 2015-08-04  Daniel Colascione  <dancol@dancol.org>
21208         Improve ansi-color filtering of unrecognized escape sequences
21209         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
21210         escape sequences.
21211         (ansi-color-filter-apply, ansi-color-apply): Filter out
21212         unrecognized escape sequences.
21214 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
21216         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
21217         definitions to `easy-menu-define', improve a couple to account for
21218         async, and add a couple of new commands.
21220 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
21222         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
21224 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
21226         Add new 'calendar-weekend-days' option
21227         Make the days receiving the 'calendar-weekend-header' face freely
21228         customizable, as they differ by region/culture.
21229         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
21230         new variable.
21231         * lisp/calendar/calendar.el (calendar-generate-month): New variable
21232         calendar-weekend-days to customize day header fontification.
21234 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
21236         Redo text-quoting-style variable
21237         Rename help-quote-translation to text-quoting-style,
21238         and use symbols rather than characters as values.
21239         This follows suggestions along these lines by Alan Mackenzie in:
21240         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
21241         and by Drew Adams in:
21242         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
21243         * doc/lispref/help.texi (Keys in Documentation)
21244         * etc/NEWS:
21245         * lisp/cus-start.el (standard):
21246         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
21247         Document and/or implement the new behavior instead of the old.
21248         (syms_of_doc): New symbols 'grave' and 'straight'.
21250 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
21252         nnimap.el: Use IMAP MOVE extension if available
21253         * lisp/gnus/nnimap.el (nnimap-request-move-article)
21254         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
21255         Use MOVE extension if available.
21257         nnimap.el: Explicitly ask for server capabilities
21258         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
21259         capabilities will be returned in the login-result.
21261 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
21263         Treat help strings like other doc strings
21264         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
21265         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
21266         substitute-command-keys.
21267         * src/keyboard.c (show_help_echo, parse_menu_item): Call
21268         substitute-command-keys on the help string before displaying it.
21270         Also mention "curly quotes"
21271         See Drew Adams's email in:
21272         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
21273         * doc/lispref/help.texi (Keys in Documentation):
21274         Add index entry "curly quotes".
21275         * etc/NEWS: Use the phrase "curly quotes" too.
21277         ede-proj-target-makefile docstring tweaks
21278         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
21279         Consistently use "all:" to describe the all: target,
21280         replacing three different and confusingly-quoted usages.
21282 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
21284         Don't abort emacsclientw when -a was specified
21285         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
21286         out if we are in emacsclientw and -a was specified.
21288 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
21290         Fix handling of 1st keystroke on MS-Windows
21291         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
21292         This is needed to correctly handle the session's first keystroke,
21293         if it has any modifiers.  (Bug#19994)
21295 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
21297         Substitute some customization etc. doc strings
21298         These changes apply substitute-command-keys to some
21299         doc strings that were going through untranslated
21300         when creating customization or other widgets.
21301         * lisp/cus-edit.el (custom-group-value-create):
21302         * lisp/wid-edit.el (widget-default-create):
21303         (widget-push-button-value-create):
21304         Treat the widget tag as a doc string.
21305         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
21306         Treat the :documentation value as a doc string.
21307         * lisp/wid-edit.el (widget-choose):
21308         Treat the choice names as doc strings.
21309         (widget-default-create): Treat the :doc value as a doc string.
21310         (widget-toggle-value-create): Treat the :on and :off values
21311         as doc strings.
21312         (widget-documentation-string-value-create):
21313         Substitute the doc string.
21315 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
21317         Add a second argument to project-ignores
21318         * lisp/progmodes/project.el (project-ignores): Add a second
21319         argument DIR.
21320         * lisp/progmodes/project.el (project-ignores): Only include the VC
21321         ignores if DIR is the VC root.
21322         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
21324 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
21326         Prevent incorrect display when 'line-spacing' variable is set
21327         * src/xdisp.c (try_window_id): Give up this optimization if the
21328         buffer has its 'line-spacing' variable set non-nil.
21330 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
21332         Don't pass NOVISIT to find-file
21333         * lisp/progmodes/etags.el (next-file):
21334         Don't pass NOVISIT to find-file (bug#21175).
21336         Ignore buffer restriction for tags-loop-eval
21337         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
21338         restriction (bug#21167).
21340 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
21342         Fix a thinko in 'ffap-gopher-at-point'
21343         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
21345         Honor 'line-spacing' for empty lines
21346         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
21347         property and 'line-spacing' frame parameter or variable or
21348         property for empty lines, by doing the same processing as in
21349         x_produce_glyph for newline characters.  (Bug#21165)
21351 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
21353         Simplify by assuming C99 integer division
21354         * src/floatfns.c (ceiling2, floor2, truncate2):
21355         Assume C99 (i.e., Fortran) semantics for integer division.
21356         This simplifies the code.
21358 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
21360         Don't overflow if computing approximate percentage
21361         * lisp/align.el (align-region):
21362         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
21363         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
21364         * lisp/cus-edit.el (custom-buffer-create-internal):
21365         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
21366         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
21367         (checkdoc-next-message-error):
21368         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
21369         * lisp/epa.el (epa-progress-callback-function):
21370         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
21371         * lisp/ffap.el (ffap-menu-rescan):
21372         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
21373         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
21374         * lisp/gnus/nneething.el (nneething-retrieve-headers):
21375         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
21376         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
21377         * lisp/gnus/nnml.el (nnml-retrieve-headers):
21378         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
21379         * lisp/gnus/nntp.el (nntp-retrieve-headers)
21380         (nntp-retrieve-articles):
21381         * lisp/imenu.el (imenu--relative-position):
21382         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
21383         (skkdic-convert-okuri-nasi):
21384         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
21385         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
21386         * lisp/org/org-list.el (org-update-checkbox-count):
21387         * lisp/org/org.el (org-table-map-tables)
21388         (org-update-parent-todo-statistics):
21389         * lisp/play/decipher.el (decipher-insert-frequency-counts)
21390         (decipher-analyze-buffer):
21391         * lisp/profiler.el (profiler-format-percent):
21392         * lisp/progmodes/cc-cmds.el (c-progress-update):
21393         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
21394         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
21395         (idlwave-list-load-path-shadows):
21396         * lisp/progmodes/opascal.el (opascal-step-progress):
21397         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
21398         (vhdl-scan-directory-contents):
21399         * lisp/textmodes/bibtex.el (bibtex-progress-message):
21400         * lisp/textmodes/flyspell.el (flyspell-small-region)
21401         (flyspell-external-point-words):
21402         * lisp/textmodes/table.el (table-recognize):
21403         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
21404         progress-report percentages and the like.  This avoids problems
21405         if (* 100 NUMERATOR) would overflow.
21406         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
21407         * lisp/gnus/registry.el (registry-reindex):
21408         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
21409         * lisp/descr-text.el (describe-char):
21410         * lisp/org/org-colview.el (org-nofm-to-completion):
21411         * lisp/ps-print.el (ps-plot):
21412         * lisp/simple.el (what-cursor-position):
21413         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
21414         more-complicated and less-accurate approximation.
21416         Fix some int overflows in profiler.c
21417         * src/profiler.c (make_log): Make args EMACS_INT, not int,
21418         to avoid unwanted behavior on 'int' overflow.
21419         (make_log, evict_lower_half, record_backtrace):
21420         Use ptrdiff_t, not int, for object indexes.
21422         Port to pedantic memcpy
21423         * src/keyboard.c (menu_bar_items, tool_bar_items):
21424         * src/xrdb.c (magic_db):
21425         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
21427         Merge from gnulib
21428         This incorporates:
21429         2015-07-29 time_rz: port to pedantic memcpy
21430         * lib/time_rz.c: Copy from gnulib.
21432 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
21434         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
21435         When updating the very last entry, tabulated-list-print would
21436         erase it and then try to look at the next one (which obviously
21437         isn't there).
21439 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
21441         Allow to use the old key processing code on MS-Windows
21442         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
21443         New variable.
21444         (w32_wnd_proc): Use it to invoke the old code that processed
21445         character keys, as fallback, when this variable is non-nil.
21446         Fix typos in comments.  (Bug#19994)
21448 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
21450         Improve handling of Unicode keyboard input on MS-Windows
21451         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
21452         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
21453         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
21454         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
21455         successful, don't call TranslateMessage.  (Bug#19994)
21457 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
21459         Fix default-directory in changeset diffs after vc-print-log
21460         * lisp/vc/log-view.el (log-view-diff-common): Move the
21461         revision-granularity check back into log-view-diff-changeset.
21462         (log-view-diff-changeset): Bind default-directory to the current
21463         VC root.
21465         Rename project-directories to project-roots
21466         * lisp/progmodes/project.el (project-search-path-function)
21467         (project-search-path): Update the docstring.
21468         (project-directories): Rename to `project-roots', update all
21469         callers and implementations accordingly.
21470         (project-root): Remove.
21471         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
21472         as the default file mask.
21474 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
21476         Support long URLs in w32-shell-execute
21477         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
21478         and filename_to_ansi to convert the DOCUMENT argument, as it could
21479         be a URL that is not limited to MAX_PATH characters.  Instead, use
21480         MultiByteToWideChar directly, and allocate heap storage as
21481         required to accommodate the converted string.  Likewise with
21482         non-Unicode operation.  Ensure OPERATION is null-terminated, even
21483         if it is longer than 32K bytes.  (Bug#21158)
21485 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
21487         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
21489 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
21491         Add docs for display-buffer action display-buffer-use-some-frame
21492         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
21493         * doc/lispref/windows.texi (Display Action Functions):
21494         Add display-buffer-use-some-frame.
21495         * etc/NEWS: Mention display-buffer-use-some-frame.
21497         Add display-buffer action display-buffer-use-some-frame
21498         * lisp/window.el (display-buffer-use-some-frame): New.
21500         Handle vc-mtn error more gently
21501         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
21502         branch is nil.
21504 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
21506         Fix Tramp problems with multihops, and nc
21507         * lisp/net/tramp-cache.el (tramp-get-file-property)
21508         (tramp-set-file-property, tramp-flush-file-property)
21509         (tramp-get-connection-property, tramp-set-connection-property)
21510         (tramp-flush-connection-property): Remove hop from vector.
21511         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
21512         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
21513         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
21514         netstat to 60".
21515         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
21516         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
21517         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
21518         Keep hop in result.
21519         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
21520         Add hop tests.
21522 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
21524         Resurrect highlighting of repeated words by Flyspell Mode
21525         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
21526         characters between point and the doublon candidate, so that
21527         flyspell-word-search-backward finds it.  (Bug#21157)
21529         Fix redisplay of large images on expose events
21530         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
21531         between signed negative values and unsigned values.  This
21532         prevented redisplay on expose events when the window showed a very
21533         large image.
21535 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
21537         Remove unnecessary stack overflow dependency
21538         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
21539         Don't worry about $ac_cv_header_sys_resource_h and
21540         $ac_cv_func_getrlimit, as they're no longer needed for this.
21541         Problem reported by Eli Zaretskii in:
21542         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
21544 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
21546         Pacify compilation -Wincompatible-pointer-types warnings
21547         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
21548         warning.
21549         (CompareStringW_Proc): New typedef.
21550         (w32_compare_strings): Use it, to pacify compiler warnings under
21551         "-Wincompatible-pointer-types".
21552         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
21553         (GetDiskFreeSpaceExA_Proc): New typedefs.
21554         (Ffile_system_info): Use them, to pacify compiler warnings under
21555         "-Wincompatible-pointer-types".
21557 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
21559         Fix subscript error in calculate_direct_scrolling
21560         Use slightly-longer cost vectors.  Without this change,
21561         calculate_direct_scrolling can have a subscript violation when
21562         FRAME_LINES (frame) <= delta.
21563         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
21564         (line_ins_del, do_line_insertion_deletion_costs):
21565         Allocate and use slightly-larger cost vectors, ones based on
21566         FRAME_TOTAL_LINES instead of FRAME_LINES.
21568         Fix uninitalized value in encode_coding_object
21569         * src/coding.c (encode_coding_object): Also initialize
21570         coding->src_pos and coding->src_pos_byte when NILP (src_object).
21571         This avoids later use of uninitialized storage.
21573 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
21575         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
21576         (Bug#21141)
21578 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
21580         Merge from gnulib
21581         This incorporates:
21582         2015-07-27 time_rz: port better to MinGW
21583         2015-07-27 time: port __need_time_t to MinGW
21584         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
21585         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
21586         * lib/time-internal.h: New file, from gnulib.
21588 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
21590         Handle NULL pointers in w32heap.c allocation routines
21591         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
21592         freeable".
21593         (realloc_after_dump, realloc_before_dump, free_before_dump):
21594         Handle NULL pointers gracefully, as Emacs now seems to expect that.
21596         Fix Cairo build without PNG
21597         * src/image.c: Define PNG function when USE_CAIRO is defined, even
21598         if HAVE_PNG is not.  (Bug#21133)
21600         MS-Windows follow-up for recent TZ-related changes
21601         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
21602         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
21603         picking up 'struct timespec' from pthread.h, if it is installed on
21604         the user's system.  We want either the definitions from MinGW
21605         system headers, if available, or the Gnulib replacements if not.
21606         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
21607         lib/time.h.
21608         * lib/time.in.h: Don't let __need_* symbols affect what happens on
21609         MinGW.  These symbols are defined by MinGW system headers, but we
21610         don't want that to affect whether Gnulib portions of the header
21611         are or aren't used.
21613 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
21615         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
21617         New optional ZONE arg for format-time-string etc.
21618         This simplifies time conversions in other time zones.
21619         It also prevents display-time-world tampering with TZ (Bug#21020).
21620         * admin/admin.el (add-release-logs):
21621         Use improved add-log-time-format API.
21622         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
21623         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
21624         * configure.ac (tzalloc): Remove test for this, since
21625         Emacs no longer uses HAVE_TZALLOC directly.
21626         * doc/lispref/os.texi (Time of Day, Time Conversion)
21627         (Time Parsing):
21628         * etc/NEWS: Document the new behavior.
21629         Merge from gnulib, incorporating:
21630         2015-07-25 strftime: fix newly-introduced bug on Solaris
21631         2015-07-23 fprintftime, strftime: use timezone_t args
21632         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
21633         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
21634         * m4/time_h.m4:
21635         Update from gnulib.
21636         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
21637         New files from gnulib.
21638         * lisp/time-stamp.el (time-stamp-string):
21639         * lisp/time.el (display-time-world-list)
21640         (display-time-world-display):
21641         Use new API, with time zone arg.
21642         * lisp/time.el (display-time-world-display):
21643         Fix race when current-time advances while we're running.
21644         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
21645         (add-log-iso8601-time-string): Accept optional time zone arg.
21646         * lisp/vc/add-log.el (add-change-log-entry):
21647         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
21648         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
21649         Add rules for the time module, since they're now needed
21650         for tzalloc etc.
21651         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
21652         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
21653         * src/editfns.c: Include errno.h.
21654         (set_time_zone_rule): Omit unnecessary forward decl.
21655         (initial_tz): Remove, replacing with ...
21656         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
21657         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
21658         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
21659         (tzlookup): New static functions.
21660         (init_editfns): New arg DUMPING.  All uses changed.
21661         (init_editfns): Omit most initialization if dumping, not if
21662         !initialized.  Initialize wall_clock_tz and local_tz.
21663         (emacs_nmemftime, format_time_string): Time zone argument can now
21664         be any time zone, not just a boolean for UTC or local time.  All
21665         callers changed.
21666         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
21667         (Fcurrent_time_zone): New optional arg ZONE.
21668         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
21669         the same form as with the other new additions.
21670         (decode_time_zone): Remove; no longer needed.
21671         (tzvalbuf): Now file-scope.
21672         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
21673         (syms_of_editfns): Define Qwall.
21674         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
21675         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
21676         [!HAVE_TZALLOC]:
21677         Remove; now supplied by gnulib.
21678         * src/emacs.c (main):
21679         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
21681 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
21683         Fix infinite loop in delete-consecutive-dups
21684         * lisp/subr.el (delete-consecutive-dups): Work even if the last
21685         element is nil (Bug#20588).  Avoid rescan of a circular list in
21686         deletion of last element.
21688 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
21690         Have `x-frame-geometry' return nil for terminal and initial
21691         frames (Bug#21132)
21692         * src/nsfns.m (Fx_frame_geometry):
21693         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
21694         terminal frames.
21695         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
21696         (Fx_frame_geometry): Return nil for terminal frames
21698 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
21700         * etc/tutorials/TUTORIAL.ja: Improve translation.
21702 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
21704         Avoid crashes when w32 GUI functions are called in -batch
21705         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
21706         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
21707         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
21709         Fix flyspell-check-previous-highlighted-word
21710         * lisp/textmodes/flyspell.el
21711         (flyspell-check-previous-highlighted-word): Really accept a
21712         numeric argument, as the doc string describes.  Fix an off-by-one
21713         error in looking up overlays, so invocation with point immediately
21714         after a word would check that word.  Clarify the doc string as
21715         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
21717 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
21719         Minor cleanup in tramp-tests.el
21720         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
21721         Implement using the documented interface
21722         `tramp-connection-properties', rather than with internal functions.
21724 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
21726         Pass lambdas to `skeleton-read'
21727         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
21728         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
21729         lambdas to `skeleton-read' (bug#20386).
21731 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
21733         * INSTALL (DETAILED BUILDING AND INSTALLATION):
21734         Mention --without-imagemagick.
21736         Don't require GUI frames and mouse for Flyspell menus
21737         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
21738         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
21739         support, since pop-up menus work with text terminals and can be
21740         controlled via the keyboard.
21742         Improve documentation of Flyspell commands
21743         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
21744         can be invoked via the keyboard.  Mention those commands by name
21745         and add them to the fn index.  (Bug#21125)
21747 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
21749         Fix some Tramp problems with HP-UX
21750         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
21751         Add "tab0" to stty call.
21752         * test/automated/tramp-tests.el (tramp-persistency-file-name):
21753         Set to nil.
21754         (tramp--test-hpux-p): New defun.
21755         (tramp--test-utf8): Use it.
21757 2015-07-22  Glenn Morris  <rgm@gnu.org>
21759         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
21761 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
21763         Fix point positioning in ffap-next-guess
21764         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
21765         as our callers expect.  This was clobbered as part of fixing
21766         bug#5673.  (Bug#21107)
21767         (ffap-gopher-at-point): Set ffap-string-at-point-region.
21769 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
21771         * lisp/window.el (even-window-sizes): Fix customization type.
21773         Optionally even widths of `display-buffer' windows.  (Bug#21100)
21774         * lisp/window.el (quit-restore-window): Restore width if
21775         requested.
21776         (display-buffer-record-window): Record width when window is
21777         reused and horizontally combined.
21778         (even-window-sizes): New option to allow evening window widths.
21779         (even-window-heights): Defalias to `even-window-sizes'.
21780         (window--even-window-heights): Rename to
21781         `window--even-window-sizes'.  Handle side-by-side windows.
21782         (display-buffer-use-some-window): Call `window--even-window-sizes'
21783         instead of `window--even-window-heights'.
21784         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
21785         * doc/lispref/windows.texi (Choosing Window Options): Describe
21786         `even-window-sizes'.
21787         (Coordinates and Windows): Fix typo.
21789 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
21791         Add file name to autoload error messages
21792         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
21793         Add condition-case to add file name to error message.
21795 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
21797         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
21798         Use 0.0.0.1 as test host.
21800 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
21802         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
21803         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
21804         Fix inf-loop (bug#21083).
21806 2015-07-21  Glenn Morris  <rgm@gnu.org>
21808         * test/automated/package-test.el (package-test-signed):
21809         Update for recent changes.
21811         * test/automated/elisp-mode-tests.el
21812         (elisp-xref-finds-both-function-and-variable)
21813         (elisp-xref-finds-only-function-for-minor-mode):
21814         Update for recent xref name changes.
21816 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
21818         Make eldoc timer non-repeatable
21819         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
21820         non-repeatable.  Since it's on post-command hook, that just wasted
21821         CPU cycles.
21823 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
21825         Mention `tramp-connection-properties' in NEWS
21827         Sync with Tramp repository
21828         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
21829         required prior changing its configuration.
21830         (Connection caching, Predefined connection information)
21831         (Remote shell setup): Fix typos.
21832         (Predefined connection information): Describe, how to overwrite
21833         parameters of `tramp-methods'.
21834         (Remote programs, Remote processes, Traces and Profiles):
21835         Simplify example.
21836         (Remote programs): Remove superfluous comment.
21837         * doc/misc/trampver.texi: Update release number.
21838         * lisp/net/tramp-cache.el (tramp-connection-properties):
21839         Adapt docstring.
21840         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
21841         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
21842         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
21843         "gvfs-mkdir -p ..." does not work robust.
21844         (tramp-gvfs-maybe-open-connection):
21845         Adapt `tramp-get-method-parameter' call.
21846         * lisp/net/tramp-sh.el (tramp-methods):
21847         Add `tramp-remote-shell-login' parameter where it fits.
21848         (tramp-get-remote-path): Use it.
21849         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
21850         (all): Adapt `tramp-get-method-parameter' calls.
21851         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
21852         (tramp-get-method-parameter): Replace argument METHOD by VEC.
21853         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
21854         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
21855         (all): Adapt `tramp-get-method-parameter' calls.
21856         * lisp/net/trampver.el: Update release number.
21857         * test/automated/tramp-tests.el (tramp--instrument-test-case):
21858         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
21859         (tramp-test13-make-directory, tramp--test-adb-p)
21860         (tramp--test-smb-or-windows-nt-p): Simplify.
21861         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
21862         (tramp--test-special-characters): Fix docstring.  Add gvfs and
21863         ftp tests.
21864         (tramp--test-utf8): Fix docstring.
21866 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
21868         Add new xref-query-replace command
21869         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
21870         New function, extracted from xref-pulse-momentarily.
21871         (xref-query-replace): New command.
21872         (xref--query-replace-1): New helper function.
21873         (xref--xref-buffer-mode-map): Add `r' binding.
21875 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
21877         Simplify icalendar decoding of Z dates
21878         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
21879         Simplify calculation of time strings with trailing "Z".
21881 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
21883         Do not corrupt grep-find-ignored-files
21884         * lisp/progmodes/project.el (project-ignores): Change the order of
21885         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
21887         Add xref-match-item, and use it
21888         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
21889         (xref-file-location): Add reader for the column slot.
21890         (xref-match-item): New class.
21891         (xref-match-bounds): A method implementation for it.
21892         (xref-make-match): New constructor function.
21893         (xref--current-item): New private variable.
21894         (xref-pulse-momentarily): Use it.
21895         (xref--pop-to-location): Change the first argument to an xref
21896         item, instead of location, bind xref--current-item.
21897         Update all callers.
21898         (xref-next-line, xref-prev-line, xref--next-error-function)
21899         (xref--mouse-2): Look for the property `xref-item',
21900         instead of `xref-location'.
21901         (xref--item-at-point): Likewise.  This function replaces
21902         `xref-location-at-point'.  Update all callers.
21903         (xref--insert-xrefs): Add the `xref-item' text property, instead
21904         of `xref-location'.
21905         (xref--collect-match): Use xref-make-match.
21907         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
21908         Update all references.
21910         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
21911         slot to `summary'.
21913         vc-hg: Perform the print-log call asynchronously
21914         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
21915         asynchronously (bug#21067).
21917         Add xref-after-jump-hook and xref-after-return-hook
21918         * lisp/progmodes/xref.el (xref-after-jump-hook)
21919         (xref-after-return-hook): New hooks.
21920         (xref-pulse-on-jump): Remove, in favor of the above.
21921         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
21922         (xref--pop-to-location, xref--display-position)
21923         (xref-pop-marker-stack): Use the new hooks, as requested in
21924         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
21926 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
21928         * lisp/progmodes/js.el (js-mode): Correct the lighter.
21930 2015-07-19  Leo Liu  <sdl.web@gmail.com>
21932         Fix a bug in cfengine3-mode
21933         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
21934         eldoc-documentation-function.
21936 2015-07-18  Julien Danjou  <julien@danjou.info>
21938         sieve-mode: support "body" test command
21939         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
21940         Add missing "body" test command.
21942 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
21944         Fix info-apropos when the default encoding is Latin-N
21945         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
21946         'undecided', so that it is set to the encoding of the Info file we
21947         are about to insert.  Otherwise, 'info-apropos' will fail to find
21948         some index nodes in some UTF-8 encoded files, if the buffer's
21949         previous encoding is Latin-N or some such.
21951 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
21953         * lisp/epg.el (epg--start): Check that gpgconf can be found
21954         before calling it.
21956         Expose more file types to OS X that Emacs understands
21957         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
21958         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
21960 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
21962         Fix visual-order cursor movement when lines are truncated
21963         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
21964         simulate display in a window of infinite width, to allow move_it_*
21965         functions reach positions outside of normal window dimensions.
21966         Remove code that tried to handle a subset of these situations by
21967         manual iteration of buffer text.  (Bug#17777)
21969         Fix following Info cross-references to anchors
21970         * lisp/info.el (Info-read-subfile): Add to the returned value the
21971         length of subfile preamble, after converting it to file's byte
21972         offset, as expected by the caller.  Use bufferpos-to-filepos.
21973         (Info-find-node-2): If searching for a node with a
21974         1000-character slop fails, try again with a 10000-character slop,
21975         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
21976         * lisp/international/mule-util.el (bufferpos-to-filepos): New
21977         function.
21978         * etc/NEWS: Mention bufferpos-to-filepos.
21980         Fix scrolling backwards on TTY frames under scroll-conservatively
21981         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
21982         in moving backwards on TTY frames.  (Bug#21080)
21984 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
21986         Consider a jsdoc tag to be a beginning of a paragraph as well
21987         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
21988         consider a jsdoc tag to be a beginning of a paragraph as well.
21990 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
21992         * lisp/emacs-lisp/package.el: Fix warnings.
21994         * lisp/emacs-lisp/package.el (package-buffer-info):
21995         Add author and maintainers to `package-buffer-info'.
21997         * lisp/emacs-lisp/package.el: Many small changes.
21998         Replace all instances of 'face with 'font-lock-face.
21999         (describe-package-1): Improve some strings and move the summary
22000         up the list.
22001         (package-install-file): Update docstring.
22002         (package-menu-hide-package): Bind to `H'.
22004         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
22005         Fix error handling.
22007 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
22009         Fix hang with large yanks This should fix the bug fixed by Mike
22010         Crowe's patch in:
22011         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
22012         A problem in this area has been reported by several users; see
22013         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
22014         This fix differs from Mike Crowe's patch in that it should avoid a
22015         race condition that could lose SIGIO signals.  ignore_sigio dates
22016         back to the 1980s when some platforms couldn't block signals, and
22017         could only ignore them, which led to races when signals arrived
22018         while being ignored.  We shouldn't have to worry about those old
22019         platforms now.
22020         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
22021         * src/emacs.c (shut_down_emacs):
22022         Don't call ignore_sigio; unrequest_sigio should suffice.
22023         * src/keyboard.c (kbd_buffer_store_buffered_event):
22024         Use unrequest_sigio, not ignore_sigio.
22025         (kbd_buffer_get_event):
22026         Call request_sigio when getting the ball rolling again.
22028 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
22030         * lisp/obsolete/longlines.el (longlines-search-function):
22031         Fallback on `isearch-search-fun-default'.
22033 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
22035         Support @-mentions
22036         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
22037         of mentions/messages with @nick instead of just nick.
22039 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
22041         Fix bug#20943
22042         * lisp/autorevert.el (auto-revert-handler): Do not check for
22043         `buffer-modified-p'.
22044         * lisp/files.el (buffer-stale--default-function): Check for
22045         `buffer-modified-p'.
22046         * test/automated/auto-revert-tests.el
22047         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
22049 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
22051         Fix delete-dups bug on long lists
22052         * lisp/subr.el (delete-dups):
22053         Don't mistakenly keep some dups when applied to long lists.
22055 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
22057         Better heuristic for C stack overflow
22058         Improve the heuristic for distinguishing stack overflows from
22059         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
22060         the getrlimit method wasn't portable to Cygwin; see:
22061         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
22062         Corinna suggested pthread_getattr_np but this also has problems.
22063         Instead, replace the low-level system stuff with a simple
22064         heuristic based on known good stack addresses.
22065         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
22066         * src/sysdep.c: Don't include <sys/resource.h>.
22067         (stack_direction): Remove.  All uses removed.
22068         (stack_overflow): New function.
22069         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
22070         Make SEGV fatal in non-main threads.
22072 2015-07-16  Daiki Ueno  <ueno@gnu.org>
22074         epg: Automatically start pinentry server
22075         * lisp/epg-config.el (epg-gpgconf-program): New variable.
22076         * lisp/epg.el (epg--start): Call `pinentry-start' if
22077         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
22079 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
22081         * lisp/gnus/nnimap.el: Fix my last bogus change.
22082         Reinstall Stefan Monnier's change that was made in
22083         <83d824bc4041332f338ad7e5e830f443535aa300>.
22085 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
22087         Merge from gnulib
22088         This incorporates:
22089         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
22090         2015-07-05 acl-permissions: Fix on FreeBSD
22091         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
22092         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
22093         * lib/set-permissions.c: Copy from gnulib.
22095         Port to stricter C99
22096         * src/keyboard.h (kbd_buffer_store_event_hold):
22097         Don't return a void expression.
22099 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
22101         * doc/emacs/frames.texi (Creating Frames):
22102         Fix the command `C-x 5 m' runs.
22104 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
22106         New autorevert tests
22107         * test/automated/auto-revert-tests.el: New file.
22109 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
22111         Clear gcprolist etc. after stack overflow
22112         After stack overflow, command_loop calls init_eval, and this needs to
22113         clear gcprolist and byte_stack_list (Bug#20996).
22114         * src/alloc.c (init_alloc):
22115         Move gcprolist and byte_stack_list initialization from here ...
22116         * src/eval.c (init_eval): ... to here.
22118 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
22120         * doc/emacs/windows.texi (Pop Up Window): Fix the description
22121         of `C-x 4 m'.
22123 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
22125         Avoid deprecated enums in mac-ct font backend driver
22126         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
22127         (mac_ctfont_get_advance_width_for_glyph)
22128         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
22130         Cache font family in mac-ct font backend driver
22131         * src/macfont.m (macfont_family_cache): New variable.
22132         (syms_of_macfont): Initialize it.
22133         (macfont_available_families_cache): New variable.
22134         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
22135         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
22136         (macfont_handle_font_change_notification)
22137         (macfont_init_font_change_handler)
22138         (macfont_copy_available_families_cache): New functions.
22139         (macfont_create_family_with_symbol): Use font family caches.
22140         (macfont_list, macfont_list_family):
22141         Use macfont_copy_available_families_cache instead of
22142         mac_font_create_available_families.
22144 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
22146         Show the default value in the prompt
22147         * lisp/progmodes/xref.el: Add `M-?' binding for
22148         xref-find-references.  Declare functions `grep-read-files' and
22149         `grep-expand-template'.
22150         (xref--read-identifier): Show the default value in the prompt.
22152         * lisp/progmodes/xref.el (xref-find-regexp): When called with
22153         prefix argument, ask for file patterns to search as well.  When
22154         prompting for the directory, require an existing one.
22155         (xref-collect-matches): Add a new argument, FILES.  Use it in the
22156         above function.
22158         Add `project-ignores'
22159         * lisp/progmodes/project.el (project-ignores): New generic
22160         function, and an implementation for the VC project type.
22161         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
22162         variant of rgrep-default-command that handles a generic list of
22163         ignores.
22164         (xref-collect-matches): Use it, and pass through to it the value
22165         of the newly added argument.
22166         (xref-find-regexp): Handle ignored paths within the project.
22167         Remove outdated comment.
22168         * lisp/vc/vc.el (vc-default-ignore-completion-table):
22169         Skip the comments and the empty lines.
22171 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
22173         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
22175 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
22177         gnus-registry.el: Correct function argument order
22178         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
22179         Reverse the order of function arguments.
22181 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
22183         Bind grep-highlight-matches to nil
22184         * lisp/progmodes/xref.el (xref-collect-matches):
22185         Bind grep-highlight-matches to nil (bug#20728).
22187 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
22189         nnimap.el: Fix IMAP message size parsing
22190         * lisp/gnus/nnimap.el (nnimap-transform-headers):
22191         Don't assume that UID comes before RFC822.SIZE.
22193 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
22195         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
22196         (auth-source-creation-prompts): Declare.
22197         (nnimap-retrieve-headers, nnimap-status-message)
22198         (nnimap-request-create-group, nnimap-request-delete-group)
22199         (nnimap-close-group, nnimap-request-move-article)
22200         (nnimap-request-accept-article, nnimap-request-newgroups)
22201         (nnimap-request-post, nnimap-dummy-active-number)
22202         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
22203         (nnimap-parse-flags): Remove unused var `p'.
22204         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
22205         (nnimap-flags-to-marks): Remove unused var `totalp'.
22207 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
22209         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
22211 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
22213         * src/macfont.m (macfont_list): Ignore font families lacking
22214         font descriptors.
22216 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
22218         Don't check the exit status, it can be misleading
22219         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
22220         exit status, it can be misleading.
22222         Introduce a Project API
22223         * lisp/progmodes/project.el: New file.
22224         * lisp/cedet/ede.el (project-try-ede): New function.
22225         (project-root): New implementation.
22226         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
22227         Set project-search-path-function.
22228         (elisp--xref-find-references): Delegate some logic to
22229         project-search-path.
22230         (elisp-search-path): New function.
22231         (elisp-xref-find): Don't implement `matches' anymore.
22232         * lisp/progmodes/etags.el: Don't implement `matches'.
22233         Delegate some logic to project-search-path.
22234         (etags-search-path): New function.
22235         * lisp/progmodes/xref.el (xref-find-function):
22236         Remove `matches' from the API.
22237         (xref-find-regexp): Move whatever common logic was in elisp and
22238         etags implementations, and search the directories returned by
22239         project-directories and project-search-path.
22241 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
22243         * test/automated/map-tests.el (test-map-delete-return-value):
22244         Uncomment test.
22246         Add support for gv.el in map.el
22247         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
22248         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
22249         * test/automated/map-tests.el: Update tests to work with the new
22250         implementations of map-elt and map-put.
22252 2015-07-09  Glenn Morris  <rgm@gnu.org>
22254         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
22256 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
22258         Syntax-propertize until the end of the line first
22259         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
22260         until the end of the line first.
22262 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
22264         * doc/emacs/files.texi (File Archives): Add a cross reference.
22266 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
22268         nnimap.el: Handle plain value for nnimap-stream
22269         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
22270         capabilities, so that a 'plain value for the `nnimap-stream' server
22271         variable is handled correctly.
22272         * doc/misc/gnus.texi (Customizing the IMAP Connection):
22273         Document the 'plain option.
22275 2015-07-08  Leo Liu  <sdl.web@gmail.com>
22277         Fix bug in thing-at-point--bounds-of-well-formed-url
22278         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
22279         sure boundary contains current point.
22281 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
22283         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
22284         in the end.
22286         Declare whitespace-line-column a safe file-local
22287         * lisp/whitespace.el (whitespace-line-column): Declare to be a
22288         safe file-local when the value is an integer.
22290 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
22292         gnus-group.el: Check if group names are already strings
22293         * lisp/gnus/gnus-group.el (gnus-group-group-name):
22294         The group name may already be a string.
22295         Specifically, in the group list reached from the *Server* buffer,
22296         the 'gnus-group text property returns a string.  Everywhere else
22297         it returns a symbol.
22299         nnimap.el: Remove unused let variables
22300         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
22302 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
22304         Support "maximized" property of runemacs's shortcut
22305         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
22306         the '--maximized' switch to Emacs.
22308         Support "minimized" property of runemacs's shortcut
22309         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
22310         pass the '--iconic' switch to Emacs.  (Bug#20991)
22312 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
22314         Doc fixes
22315         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
22316         C-w' in Diff mode.
22317         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
22318         Add a cross reference.
22320 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
22322         * lisp/obsolete/landmark.el: Add Obsolete-since header.
22324 2015-07-07  Glenn Morris  <rgm@gnu.org>
22326         * test/automated/ert-tests.el (ert-test-deftest):
22327         Update for recent changes.
22329 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
22331         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
22332         * lisp/emacs-lisp/gv.el (gv-setter): New function.
22333         (gv-invalid-place): New error.
22334         (gv-get): Use them.
22335         (gv-synthetic-place, gv-delay-error): New places.
22336         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
22337         (cl-defgeneric, cl-defmethod): Use gv-setter.
22339 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
22341         Make vc-tests work with MSYS svn program
22342         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
22343         svn is an MSYS program.
22345 2015-07-07  Ken Brown  <kbrown@cornell.edu>
22347         Improve recent change to emacsclient on Cygwin
22348         * lisp/server.el (server-process-filter): Remove redundant check
22349         that 'cygwin-convert-file-name-from-windows' is defined as a
22350         function on Cygwin.  Don't call that function unless its argument
22351         starts with a drive letter.
22353 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
22355         * lisp/emacs-lisp/package.el (package-compute-transaction):
22356         Fix void variable due to `found-something' being in the wrong `let'.
22358 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
22360         * lisp/play/landmark.el: Move to lisp/obsolete/.
22362 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
22364         Have `x-show-tip' handle `right' and `bottom' frame parameters
22365         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
22366         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
22367         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
22368         tooltips also via `right' and `bottom' frame parameters.
22370 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
22372         Add online-help support to describe types
22373         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
22374         (describe-symbol): Improve the selection of default.
22375         * lisp/help-mode.el: Require cl-lib.
22376         (describe-symbol-backends): Move from help-fns.el.
22377         (help-make-xrefs): Use it.
22378         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
22379         for types.
22380         (cl--typedef-regexp): New const.
22381         (find-function-regexp-alist): Add entry for types.
22382         (cl-help-type, cl-type-definition): New buttons.
22383         (cl-find-class): New function.
22384         (cl-describe-type): New command.
22385         (cl--describe-class, cl--describe-class-slot)
22386         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
22387         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
22388         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
22389         New functions.  Moved from eieio-opt.el.
22390         (cl--generic-class-parents): New function, extracted from
22391         cl--generic-struct-specializers.
22392         (cl--generic-struct-specializers): Use it.
22393         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
22394         Improve constructor's docstrings.
22395         (cl-struct-unknown-slot): New error.
22396         (cl-struct-slot-offset): Use it.
22397         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
22398         definition in current-load-list.
22399         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
22400         (eieio--add-new-slot): Set it.
22401         (eieio-defclass-internal): Use new name for current-load-list.
22402         (eieio-oref): Add compiler-macro to warn about unknown slots.
22403         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
22404         as compile-time as well.  Improve constructor docstrings.
22405         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
22406         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
22407         (eieio-class-def): Remove button.
22408         (eieio-help-constructor): Use new name for load-history element.
22409         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
22410         (eieio-method-documentation): Move to cl-generic.el.
22411         (eieio-display-method-list): Use new names.
22412         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
22413         Add "define-linline".
22414         (lisp-fdefs): Remove "defsubst".
22415         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
22416         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
22417         (macroexp--warn-and-return): Use it to avoid inf-loops.
22418         Add `compile-only' argument.
22420 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22422         python.el: Fix local/remote shell environment setup
22423         * lisp/progmodes/python.el (python-shell-with-environment):
22424         Fix remote/local environment setup.
22425         * test/automated/python-tests.el (python-shell-with-environment-1)
22426         (python-shell-with-environment-2): New tests.
22428 2015-07-06  Glenn Morris  <rgm@gnu.org>
22430         * lisp/simple.el (set-variable): Tweak recent doc fix.
22432 2015-07-06  Ken Brown  <kbrown@cornell.edu>
22434         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
22436 2015-07-06  Glenn Morris  <rgm@gnu.org>
22438         * lisp/simple.el (set-variable): Use user-error for type mismatch.
22440 2015-07-06  Ken Brown  <kbrown@cornell.edu>
22442         * src/emacs.c (main): Don't increase the stack size on Cygwin.
22444 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
22446         (describe-symbol): Rewrite describe-function-or-variable
22447         * lisp/help-fns.el (describe-symbol-backends): New var.
22448         (help-xref-stack-item): Declare.
22449         (describe-symbol): Rename from describe-function-or-variable.
22450         Rewrite using describe-symbol-backends instead of help-xref-interned.
22451         * lisp/help.el (help-map): Use it.
22452         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
22453         (help-xref-interned): Make it into an obsolete alias.
22455         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
22456         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
22457         and cl-letf.
22459 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
22461         Fix parsing glitches in dired-mark-sexp (bug#13575)
22462         * lisp/dired-x.el (dired-x--string-to-number): New function.
22463         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
22464         of directory-listing-before-filename-regexp.  Consider
22465         forward-word harmful and replace it.  Add more verbiage in
22466         comments and doc string.
22468 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22470         python.el: Respect process environment for remote shells
22471         * lisp/progmodes/python.el
22472         (python-shell-calculate-process-environment): Calculate
22473         process-environment or tramp-remote-process-environment depending
22474         whether current file is remote.
22475         (python-shell-calculate-exec-path): Calculate exec-path or
22476         tramp-remote-path depending whether current file is remote.
22477         (python-shell-with-environment): New macro.
22478         (python-shell-prompt-detect, python-shell-calculate-command)
22479         (python-shell-make-comint, python-check): Use it.
22481         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
22482         * lisp/progmodes/python.el (python-shell--interpreter)
22483         (python-shell--interpreter-args): New vars.
22484         (inferior-python-mode, python-shell-make-comint): Use them.
22486         python.el: Fixes for IPython 3.x  (Bug#20580)
22487         * lisp/progmodes/python.el:
22488         (python-shell-completion-native-setup): Fix IPython 3.x setup.
22489         (python-shell-completion-native-get-completions): Fix timeout
22490         logic.
22492         python.el: Fix mark-defun behavior  (Bug#19665)
22493         * lisp/progmodes/python.el (python-mark-defun): New function.
22494         * test/automated/python-tests.el (python-mark-defun-1)
22495         (python-mark-defun-2, python-mark-defun-3): New tests.
22497 2015-07-05  Glenn Morris  <rgm@gnu.org>
22499         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
22500         such as "extends(parent), private".  (Bug#20969)
22501         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
22502         New tests.
22504 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
22506         Avoid duplicate calls to current_timespec
22507         * src/process.c (wait_reading_process_output):
22508         Cache current_timespec results as long as we're not waiting.
22510 2015-07-05  Ian Kelling  <ian@iankelling.org>
22512         Avoid returning early reading process output due to SIGIO
22513         * src/process.c (wait_reading_process_output): Extend the behavior of
22514         not breaking due to not finding output when a timer has lowered the
22515         timeout to include when SIGIO lowers the timeout.
22517         Don't return as fast reading any process output
22518         * src/process.c (wait_reading_process_output):
22519         The patch for Bug#17647 returns too fast sometimes when reading
22520         from any processes.  Revert part of it, and limit the timeout more
22521         sensibly (Bug#20978).
22523         Refactor timeouts in wait_reading_process_output
22524         * src/process.c (wait_reading_process_output):
22525         Simplify timeouts with an enum.  Remove a redundant condition.
22526         (Bug#20978)
22528         Remove ADAPTIVE_READ_BUFFERING ifdef
22529         * src/process.c (make-process, make-pipe-process, deactivate_process)
22530         (wait_reading_process_output, read_process_output, send_process)
22531         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
22532         added in case there was an operating system in which it was not
22533         useful.  That was 11 years ago and it hasn't happened.  Make
22534         development easier by not considering the effect of changes on a
22535         theoretical OS where this is disabled (Bug#20978).
22537 2015-07-05  Glenn Morris  <rgm@gnu.org>
22539         * lisp/simple.el (set-variable): Doc fix.
22541         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
22543 2015-07-05  Ian Kelling  <ian@iankelling.org>
22545         accept-process-output fix
22546         This is a followon to the fix for bug#17647 (Bug#20976).
22547         * src/process.c (status_notify): Fix too high return in some cases.
22549 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
22551         * lisp/character-fold.el (character-fold-table):
22552         Only fold decompositions if at least one character is non-spacing.
22553         (Bug#20975)
22555 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
22557         Merge from gnulib
22558         This incorporates:
22559         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
22560         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
22561         2015-07-02 update-copyright: fix test failure with perl >= 5.22
22562         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
22563         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
22564         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
22565         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
22567 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
22569         Respect `prog-indentation-context' in python.el
22570         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
22571         (python-indent-context, python-indent--calculate-indentation)
22572         (python-info-current-defun)
22573         (python-info-dedenter-opening-block-message)
22574         (python-info-line-ends-backslash-p)
22575         (python-info-beginning-of-backslash)
22576         (python-info-continuation-line-p): Use `prog-widen'.
22577         (python-indent--calculate-indentation)
22578         (python-indent--calculate-levels)
22579         (python-indent-calculate-indentation): Use `prog-first-column'.
22580         (python-indent--calculate-levels): Simplify.
22581         Ignore also initial empty lines for syntax calculation.
22582         * lisp/progmodes/python.el (python-indent-context): Return
22583         :no-indent for first non-empty line, not just in line 1.
22584         * test/automated/python-tests.el (python-indent-base-case)
22585         (python-indent-inside-paren-1, python-indent-inside-paren-2)
22586         (python-indent-inside-paren-3, python-indent-inside-paren-4)
22587         (python-indent-inside-paren-5, python-indent-inside-paren-6)
22588         (python-indent-after-backslash-1)
22589         (python-indent-after-backslash-2)
22590         (python-indent-after-backslash-3)
22591         (python-indent-after-backslash-4, python-indent-inside-string-1):
22592         Expect :no-indent for first non-empty line.
22594 2015-07-04  Daniel Colascione  <dancol@dancol.org>
22596         Factor isearch word description into new function
22597         * lisp/isearch.el (isearch--describe-word-mode): New function.
22598         (isearch-message-prefix, isearch-query-replace): Use it.
22600 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
22602         Fix mouse pointer on w32 when a menu is active
22603         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
22604         shape while a menu is in use.  This started happening since we now
22605         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
22607 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
22609         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
22610         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
22611         parameter.  (Bug#17344)
22613         Have `compilation-set-window' use right window for getting fringes
22614         (Bug#20829)
22615         * lisp/progmodes/compile.el (compilation-set-window):
22616         Take `window-fringes' from argument window.
22618 2015-07-03  Glenn Morris  <rgm@gnu.org>
22620         Update eieio tests for recent eieio-core change.
22621         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
22622         * test/automated/eieio-tests.el
22623         (eieio-test-32-slot-attribute-override-2):
22624         Replace the deleted eieio--class-v with cl--find-class.
22626 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
22628         Fix some issues with `window-divider-mode'
22629         * lisp/frame.el (window-divider-default-places): New option.
22630         (window-divider-mode): Remove option.
22631         (window-divider-mode): Make it a "regular" minor mode.
22632         (window-divider-width-valid-p): Drop frame- prefix.
22633         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
22634         prefix.  Handle `window-divider-default-places'.
22635         (frame--window-divider-mode-set-and-apply): Remove.
22636         (window-divider-default-bottom-width)
22637         (window-divider-default-right-width): Drop :group entries.
22638         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
22639         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
22640         (menu-bar-no-window-divider): Set `window-divider-default-places'
22641         and call `window-divider-mode'.
22642         * doc/emacs/frames.texi (Window Dividers): Document
22643         `window-divider-default-places'.
22645 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
22647         * doc/emacs/display.texi (Displaying Boundaries):
22648         * doc/emacs/search.texi (Word Search): Add cross references.
22650 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
22652         -batch should not affect ‘’ -> `' display
22653         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
22654         -batch (Bug#20926).
22656 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
22658         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
22659         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
22660         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
22661         Use cl--find-class instead.
22663         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
22665 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
22667         Some further fixes in Change Window node (Bug#20183)
22668         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
22669         by "resizing" in section title.  Add some concept indices.
22670         Suggested by N. Jackson (Bug#20183).
22672         * doc/emacs/windows.texi (Change Window): Reference window
22673         dividers.
22675         Document new `window-divider-mode'.
22676         * lisp/frame.el (window-divider-mode): Fix doc-string.
22677         * doc/emacs/frames.texi (Window Dividers): New section.
22679         Improve accessibility of window dividers (Bug#20183)
22680         * lisp/faces.el (window-divider)
22681         (window-divider-first-pixel, window-divider-last-pixel): Change
22682         membership from `frames' to `window-divider' customization group.
22683         * lisp/frame.el (window-divider): New customization group.
22684         (window-divider-mode): New minor mode.
22685         (window-divider-default-bottom-width)
22686         (window-divider-default-right-width): New options.
22687         (frame--window-divider-previous-mode): New variable.
22688         (frame-window-divider-width-valid-p)
22689         (frame--window-divider-mode-apply)
22690         (frame--window-divider-mode-set-and-apply): New functions.
22691         * lisp/menu-bar.el (menu-bar-options-save): Save
22692         window-divider-mode settings.
22693         (menu-bar-window-divider-customize)
22694         (menu-bar-bottom-and-right-window-divider)
22695         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
22696         (menu-bar-no-window-divider): New functions.
22697         (menu-bar-showhide-window-divider-menu): New variable.
22698         (menu-bar-showhide-menu): Show/hide window divider menu.
22699         * lisp/mouse.el (mouse-split-window-vertically)
22700         (mouse-split-window-horizontally): Replace `error' by
22701         `user-error'.  Bind `window-combination-resize' to nil.
22702         (top-level): Add/reorder mouse key bindings on mode- and
22703         vertical-line.
22705 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
22707         Don't display ‘’ as `' under X in en_GB
22708         The curved quote setup code invokes (char-displayable-p ?‘),
22709         but this isn’t reliable until after the X frame replaces the
22710         terminal frame (Bug#20926).
22711         * lisp/international/mule-cmds.el (set-locale-environment):
22712         Move curved quote setup code from here ...
22713         * lisp/startup.el (command-line): ... to here, after creating
22714         the X frame.
22716 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
22718         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
22720         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
22721         to reverse the meaning (Bug#15631).
22723 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
22725         Be more tolerant to fonts named "Foobar-12"
22726         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
22727         don't barf; instead, request a new fontset to be generated.  This
22728         avoids unnecessarily rejecting fonts named against XLFD rules.  See
22729         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
22730         for the description of the original problem.
22731         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
22732         by a hyphen in a font's name.
22734         Fix value of posn-at-pont in R2L lines
22735         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
22736         coordinate of -1, for a newline in a right-to-left line that
22737         overflowed into the left fringe.
22739 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
22741         (cl--copy-slot-descriptor): Copy the `props' alist as well
22742         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
22743         Rename from cl--copy-slot-descriptor.
22744         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
22746 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
22748         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
22749         (xterm-query-timeout): New var.
22750         (xterm--query): Use it.  Fallback on async method if we timeout before
22751         getting the first byte of the reply (bug#12354).
22753 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
22755         Spelling fixes
22756         * lisp/character-fold.el (character-fold-search):
22757         * lisp/emacs-lisp/package.el (package-hidden-regexps):
22758         Fix typos.
22760 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
22762         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
22764 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
22766         In strings, prefer plain ` and ' to \` and \'
22767         * lisp/allout.el (allout-insert-listified):
22768         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
22769         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
22770         (ls-lisp-string-lessp):
22771         * lisp/menu-bar.el (menu-bar-open):
22772         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
22773         * lisp/progmodes/compile.el (compile):
22774         * lisp/progmodes/etags.el (tags-loop-scan):
22775         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
22776         * lisp/subr.el (posn-actual-col-row):
22777         * lisp/term/pc-win.el (x-list-fonts):
22778         * lisp/textmodes/texinfmt.el (texinfmt-version):
22779         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
22780         * lisp/time.el (display-time-world-list):
22781         * lisp/tmm.el (tmm-menubar):
22782         * src/buffer.c (syms_of_buffer):
22783         * src/fileio.c (syms_of_fileio):
22784         Omit unnecessary and confusing backslash before quote.
22785         * lisp/erc/erc.el (erc-cmd-LASTLOG):
22786         * lisp/progmodes/flymake.el (flymake-fix-file-name):
22787         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
22788         Fix string that was intended to escape a backslash and not a quote.
22790 2015-06-30  Glenn Morris  <rgm@gnu.org>
22792         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
22794         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
22795         Replace hard-coded lists with wildcard + filter-out.
22797         * configure.ac (system-configuration-features): Add X11, NS.
22799         Improve reproducibility of generated loaddefs file
22800         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
22801         Make the return value the modtime of the input file (if no autoloads).
22802         (update-directory-autoloads): In the "no autoloads" section,
22803         use "most recent modtime" rather than "current time".
22805 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
22807         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
22808         (Bug#20930)
22810 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
22812         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
22814         Add seq-min and seq-max
22815         Bump version number.
22816         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
22817         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
22819 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
22821         Make sure sleep-for always delays for as long as it's told
22822         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
22823         a loop, to ensure we always wait exactly the required amount of
22824         time.  (Bug#15990)
22826 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
22828         Fix pointer signedness glitch
22829         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
22831 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
22833         Don't block changes in mouse pointer inside 'track-mouse'
22834         * etc/NEWS:
22835         * doc/lispref/frames.texi (Mouse Tracking): Document the special
22836         effect of setting 'track-mouse' to 'dragging'.
22837         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
22838         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
22839         * lisp/mouse-drag.el (mouse-drag-throw):
22840         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
22841         to avoid changes in the shape of the mouse pointer.
22842         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
22843         pointer shape when do_mouse_tracking has the value of 'dragging',
22844         not just any non-nil value.  (Bug#20934)
22845         (syms_of_xdisp): DEFSYM 'dragging'.
22847 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
22849         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
22851         * lisp/emacs-lisp/package.el (package-compute-transaction):
22852         Don't assume version sorting.
22854         * lisp/emacs-lisp/package.el (package--save-selected-packages):
22855         Don't save before init time, to avoid overwriting configurations.
22856         (Bug#20855)
22858 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
22860         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
22861         references.
22863 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
22865         Update for the upcoming CFEngine 3.7 release: support macros and
22866         quoted context strings; reformat JSON; indent promise attributes 2
22867         units by default; give function parameter descriptions in the eldoc
22868         glue.
22869         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
22870         Autoload `json-pretty-print'.  Support new features in 3.7.
22871         (cfengine-parameters-indent): Set default promise attribute indent to
22872         2 more than the promise itself.
22873         (cfengine3-macro-regex): New variable to match the new macro syntax.
22874         (cfengine3-font-lock-keywords): Use it to highlight macros.
22875         (cfengine3-indent-line): Use it to indent macros to column 0.
22876         (cfengine3-class-selector-regex): Update for the new quoted strings
22877         format.
22878         (cfengine3-reformat-json-string): New function to reformat a JSON
22879         string using `json-pretty-print'.
22880         (cfengine3-format-function-docstring): Use function parameter
22881         description if it's provided by the cf-promises syntax dump.
22883 2015-06-29  Michael R. Mauger  <michael@mauger.com>
22885         Cygwin emacsclient handles w32 file names
22886         * lisp/server.el (server-process-filter): Allow Cygwin's
22887         emacsclient to be used as a file handler on MS-Windows.
22889 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
22891         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
22892         (bug#20925).
22894 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
22896         * doc/lispref/text.texi (Sticky Properties): Improve wording.
22897         (Bug#20924)
22899         Allow font names that end in "-NN", where NN is a number
22900         * src/font.c (font_load_for_lface): If the font-spec didn't match
22901         any available fonts, try again without interpreting trailing "-NN"
22902         as the font size.  For the description of the original problem, see
22903         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
22905         .gdbinit followup to changes in !USE_LSB_TAG
22906         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
22907         !USE_LSB_TAG, as Emacs no longer does.
22909 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
22911         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
22912         Otherwise `s p' of f and F will stomp on each other's value.
22913         (Bug#20916)
22915 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
22917         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
22918         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
22920 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
22922         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
22923         as additional guess.
22925         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
22926         to a string.
22928 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
22930         apropos-library quoting fix
22931         * lisp/apropos.el (apropos-library): Quote library consistently
22932         with the rest of the quoting used by apropos.
22934         Clarify interpreter-mode-alist doc
22935         * lisp/files.el (interpreter-mode-alist):
22936         Reword to avoid confusing quoting that wasn't working anyway.
22938 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
22940         Sync with Tramp 2.2.12
22941         * doc/misc/trampver.texi:
22942         * lisp/net/trampver.el: Update release number.
22943         * test/automated/tramp-tests.el (tramp-test13-make-directory):
22944         Fix cleanup.
22946 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
22948         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
22950 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
22952         Bind grep-highlight-matches around the rgrep call
22953         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
22954         around the rgrep call (bug#20728).
22956         Put "--color" before the other options in grep-command
22957         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
22958         before the other options in grep-command (bug#20912).
22960         Add --color Grep option to the command dynamically
22961         * lisp/progmodes/grep.el (grep-template, grep-find-template):
22962         Update the description for <C>.  (Bug#20728)
22963         (grep-compute-defaults): Don't add the --color option to
22964         grep-options.  Only add it to grep-command.
22965         (grep-expand-keywords): Expand the env value opts into <C>.
22966         (grep-expand-template): Replace cf in the env with the opts list,
22967         that can include -i and --color.
22968         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
22969         "--color=always" from the template, because we don't have to.
22971 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
22973         cl-extra fixes for most-negative-fixnum
22974         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
22975         Don't mishandle an argument equal to most-negative-fixnum,
22976         whose absolute value equals itself.
22977         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
22979         Initialize cl--gensym-counter to 0
22980         Previously it was initialized to a random value, which made it
22981         harder to reproduce earlier Emacs runs.  The need for a random
22982         value went away when Emacs introduced and used the #: syntax for
22983         uninterned symbols (Bug#20862).
22984         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
22985         Document that cl--gensym-counter now starts with 0.
22986         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
22987         (cl--random-time): Move to near only remaining use.
22988         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
22990         Improve docstring for macroexp-let2
22991         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
22992         Improve as per suggestion by RMS in:
22993         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
22994         Also, rename args to match new doc string.
22996 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
22998         Fix VC test suite on MS-Windows
22999         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
23000         always starts with 3 slashes after the colon.
23001         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
23002         'w32-application-type' to invoke CVS on MS-Windows with properly
23003         formatted CVSROOT directory name.
23005         Add a new function w32-application-type
23006         * src/w32proc.c (Fw32_application_type): New function.
23008         Avoid error in TLS connections due to incorrect format
23009         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
23010         the call to 'error', instead of the unsupported %u.  Reported by
23011         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
23013 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
23015         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
23017 2015-06-26  Leo Liu  <sdl.web@gmail.com>
23019         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
23020         `with-output-to-string' in elisp.
23022         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
23023         with-output-to-string".
23024         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
23026 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
23028         Minor corrections in ELisp manual
23029         * doc/lispref/nonascii.texi (Character Properties): Correct
23030         inaccuracies in description of values of the Unicode properties.
23032         Fix invisible mouse pointers on Windows.
23033         * src/w32fns.c: Include windowsx.h.
23034         (w32_wnd_proc): If the mouse moved and the mouse pointer is
23035         invisible, make it visible again even when the main (Lisp)
23036         thread is busy.
23037         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
23038         garbaging the frame have the input thread call SetCursor.
23040 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
23042         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
23043         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
23044         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
23045         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
23046         (w32_toggle_invisible_pointer): New function.
23047         (w32_create_terminal): Add w32_toggle_invisible_pointer as
23048         toggle_invisible_pointer_hook for this terminal.
23050 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
23052         Doc fix for deletion commands
23053         'delete-char' does not respect the value of 'delete-active-region'.
23054         * doc/emacs/killing.texi (Deletion):
23055         Fix documentation for some single-char deletion commands.
23057         * doc/emacs/help.texi (Apropos):
23058         Improve documentation of 'apropos-do-all'.
23060         * doc/emacs/help.texi (Help Summary):
23061         Improve documentation of 'describe-mode'.
23063 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
23065         Fix submake dependency bug with .h files
23066         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
23067         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
23068         before the submake in $(libsrc) would spin off a subsubmake
23069         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
23071 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
23073         * lisp/character-fold.el (character-fold-table): Reuse `table'.
23075 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
23077         Translate undisplayable ‘ to `
23078         * doc/lispref/help.texi (Keys in Documentation):
23079         * lisp/international/mule-cmds.el (set-locale-environment):
23080         * lisp/term/w32console.el (terminal-init-w32console):
23081         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
23082         If ‘ is not displayable, transliterate it to `, not to '.  See:
23083         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
23085         Fix C99 incompatibilities in Cairo code
23086         * src/image.c (xpm_load) [USE_CAIRO]:
23087         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
23088         Fix pointer signedness problem.
23090 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
23092         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
23093         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
23094         `with-output-to-string' should have the same indent as `progn'.
23095         This is in line with the declaration of `with-output-to-string'.
23097 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
23099         Get ‘./configure; make -C src emacs’ to work
23100         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
23101         * lib-src/Makefile.in (../lib/libgnu.a):
23102         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
23104 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
23106         Fix GC bugs --with-wide-int and Qnil == 0
23107         Use the same alignment for the !USE_LSB_TAG case as for the
23108         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
23109         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
23110         once we changed the representation of symbols so that Qnil == 0.
23111         Problem reported by Eli Zaretskii (Bug#20862).
23112         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
23113         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
23114         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
23115         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
23116         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
23117         This optimization in the !USE_LSB_TAG case is no longer valid when
23118         symbols are represented via offsets.  Change the only use to
23119         assume that pointers might hide in objects.
23120         * src/lisp.h (alignas) [!USE_LSB_TAG]:
23121         Require support in this case, too.
23122         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
23123         This is OK, because the !USE_LSB_TAG case now applies only when
23124         Lisp_Object is wider than void *, so there's no longer any need
23125         to shift the offset.  Not shifting the offset means that
23126         symbol representations have the same alignment as pointers,
23127         which the GC assumes.
23129 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
23131         * doc/lispintro/emacs-lisp-intro.texi (Data types):
23132         Improve documentation of 'substring'.
23134 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
23136         * lisp/character-fold.el (character-fold-table): Fix table generation.
23138 2015-06-24  Glenn Morris  <rgm@gnu.org>
23140         * nextstep/Makefile.in (all): Make it the first target.
23141         (../src/emacs${EXEEXT}): Add rule for making it.
23143 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
23145         * etc/NEWS: Fix mention to old function name.
23147         * lisp/character-fold.el: New file (Bug#20887)
23148         (character-fold-to-regexp): New function.
23149         * lisp/replace.el (replace-search): Check value of
23150         `character-fold-search'.
23151         * lisp/isearch.el: Move character-folding code to
23152         character-fold.el
23153         (isearch-toggle-character-fold): New command.
23154         (isearch-mode-map): Bind it to "\M-sf".
23155         (isearch-mode): Check value of `character-fold-search'.
23157 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
23159         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
23160         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
23161         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
23163         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
23164         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
23166 2015-06-24  Glenn Morris  <rgm@gnu.org>
23168         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
23170 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
23172         lisp/gnus/nnmaildir.el: Silence lexical warnings
23173         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
23174         functional style.
23175         (nnmaildir--update-nov): Remove unused var `numdir'.
23176         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
23177         (nnmaildir-request-group, nnmaildir-request-create-group)
23178         (nnmaildir-request-post, nnmaildir-request-move-article)
23179         (nnmaildir-request-accept-article, nnmaildir-active-number):
23180         Mark unused args.
23181         (nnmaildir-get-new-mail, nnmaildir-group-alist)
23182         (nnmaildir-active-file): Declare.
23183         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
23184         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
23185         `mark', `end', `new-mark', and `mark-sym'.
23186         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
23187         `nlist2'.
23188         (nnmaildir-request-expire-articles):
23189         Remove unused vars `article', `stop' and `nlist2'.
23190         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
23191         `end'.  Use nnmaildir--article when dyn-binding is needed.
23192         Give the value directly in the `let' for `del-mark', `del-action',
23193         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
23194         (nnmaildir-close-server): Declare those local vars that need to be
23195         dyn-bound.
23197 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
23199         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
23201         Port selection info fix to clang
23202         * src/keyboard.h (kbd_buffer_store_event_hold):
23203         Don't assume C11 semantics for alignof (Bug#20756).
23205         Fix bug that munged selection info
23206         On some optimizing C compilers, copying a structure did not
23207         copy the padding bytes between elements, and the type punning
23208         between struct input_data and struct selection_input_data did
23209         not work.  Change the C code to use a proper union type instead.
23210         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
23211         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
23212         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
23213         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
23214         (mark_kboards):
23215         Use union buffered_input_event, not struct input_event.
23216         (clear_event, deliver_input_available_signal, process_special_events):
23217         Remove unnecessary forward decls.
23218         (kbd_buffer_store_buffered_event): New function, mostly just the
23219         old kbd_buffer_store_event_hold, except its argument is of type
23220         union buffered_input_event, not struct input_event.
23221         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
23222         not needed otherwise.  Argument is now of type
23223         struct selection_input_event *, not struct input_event *.
23224         All callers changed.
23225         (clear_event): Arg is now of type union buffered_input_event *,
23226         not struct input_event *.  All callers changed.
23227         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
23228         (union buffered_input_event): New type.
23229         (kbd_buffer_store_event_hold): Now an inline function,
23230         defined here.
23231         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
23232         (struct input_event): Use it.
23233         * src/xselect.c (struct selection_event_queue):
23234         Make elements be of type struct selection_input_event,
23235         not struct input_event.
23236         (selection_input_event_equal): New static function.
23237         (x_queue_event): Use it.
23238         (x_queue_event, x_decline_selection_request)
23239         (x_selection_current_request, x_reply_selection_request)
23240         (x_handle_selection_request, x_handle_selection_clear)
23241         (x_handle_selection_event): Use struct selection_input_event,
23242         not struct input_event.  All callers changed.
23243         (x_convert_selection): Omit unused first arg.  All callers changed.
23244         (Fx_disown_selection_internal): Omit unnecessary union.
23245         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
23246         rather than rolling our own equivalent.  Prefer sie.kind when
23247         setting up that kind of structure.
23248         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
23249         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
23250         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
23251         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
23252         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
23253         (SELECTION_EVENT_TIME, x_handle_selection_event):
23254         Arg is now of type struct selection_input_event *)
23255         not struct input_event *.  All callers changed.
23257 2015-06-23  Glenn Morris  <rgm@gnu.org>
23259         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
23261 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
23263         * lisp/isearch.el: Fold many unicode characters to ASCII.
23264         (isearch-character-fold-search, isearch--character-fold-extras)
23265         (isearch--character-fold-table): New variable.
23266         (isearch--character-folded-regexp): New function.
23267         (isearch-search-fun-default): Use them.
23268         * lisp/replace.el (replace-character-fold): New variable.
23269         (replace-search): Use it.
23270         * etc/NEWS: Document it.
23272 2015-06-23  Glenn Morris  <rgm@gnu.org>
23274         Check for an input event before showing a dialog box.  (Bug#20813)
23275         * lisp/subr.el (y-or-n-p):
23276         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
23277         as last-nonmenu-event.
23279 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
23281         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
23282         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
23283         (switch-to-prev-buffer, switch-to-next-buffer): Respect
23284         switch-to-visible-buffer independent of the windows history.
23286 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
23288         * src/keyboard.c (last_timer_event): Remove unused var.
23290 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
23292         * test/automated/package-test.el (package-test-update-listing):
23293         Fix test.
23295 2015-06-23  Glenn Morris  <rgm@gnu.org>
23297         Revert 2014-06-25 nextstep/Makefile change.
23298         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
23299         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
23300         not as an order-only prerequisite.
23302         * configure.ac (--with-ns): Enable by default on OS X.
23304 2015-06-23  Leo Liu  <sdl.web@gmail.com>
23306         Fix shell-for/backward-command to exclude spaces
23307         * lisp/shell.el (shell-forward-command, shell-backward-command):
23308           Handle the 'move case from re-search-forward/backward.
23309           fixes debbugs:20873
23311 2015-06-22  Juri Linkov  <juri@linkov.net>
23313         * lisp/replace.el (query-replace-read-from): Add separator to
23314         the local binding of text-property-default-nonsticky.  (Bug#20690)
23316         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
23317         (Bug#20785)
23319 2015-06-22  Ken Brown  <kbrown@cornell.edu>
23321         Enable CPU profiling on Cygwin
23322         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
23323         change that undefined this.
23324         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
23325         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
23326           Cygwin.
23328         Improve diagnostics of profiler-cpu-start
23329         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
23330         return -1 if the sampling interval is invalid.
23331         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
23332         fails.  (Bug#20843)
23334 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
23336         * lisp/emacs-lisp/package.el: Exclude packages by name.
23337         (package-hidden-regexps): New variable.
23338         (package-menu--refresh): Use it.
23339         (package-menu-hide-package): New command.
23341         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
23343 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
23345         Fix debug-timer-check on systems without HAVE_TIMERFD
23346         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
23347         the expired timers, since wait_reading_process_output doesn't.
23348         (debug_timer_callback): Enlarge the tolerance to 20 msec.
23350         Fix RCS crashes in vc-test
23351         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
23352         ports of 'ci' on MS-Windows by always passing the -t- switch.
23354 2015-06-22  Glenn Morris  <rgm@gnu.org>
23356         * doc/emacs/package.texi (Packages):
23357         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
23359         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
23361 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
23363         Port tests to help-quote-translation
23364         * test/automated/ert-x-tests.el (ert-test-describe-test):
23365         * test/automated/package-test.el (package-test-describe-package)
23366         (package-test-signed): Allow straight quotes, too.
23368 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
23370         Make find-function-on-key use the current window
23371         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
23372         Extract from `find-function-on-key', add a second argument.
23373         (find-function-on-key): Use it (bug#19679).
23374         (find-function-on-key-other-window)
23375         (find-function-on-key-other-frame): New commands.
23377 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
23379         Revert "Define `map-elt' as a generalized variable"
23380         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
23382 2015-06-21  Ken Brown  <kbrown@cornell.edu>
23384         Drop support for CPU profiling on Cygwin
23385         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
23386         (Bug#20843)
23388 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
23390         Fix some “nested” quoting confusion in doc strings
23391         * lisp/emacs-lisp/advice.el (ad-map-arglists):
23392         * lisp/kermit.el (kermit-clean-on):
23393         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
23394         * src/keyboard.c (Frecursive_edit):
23395         Use curved quotes when quoting text containing apostrophe,
23396         so that the apostrophe isn't curved in the output.
23398 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
23400         Define `map-elt' as a generalized variable
23401         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
23402         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
23403         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
23404         `setf' with `map-elt'.
23405         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
23407 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
23409         Improve error handling in tramp-adb.el
23410         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
23411         Improve error handling.
23413 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
23415         Reuse `alist-get' in map.el
23416         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
23417         elements.
23419 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
23421         Fix bytecomp-tests--warnings when $TMPDIR has a long name
23422         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
23423         Allow the warning to begin on the 3rd, not only 2nd line, which
23424         happens if temporary-file-directory has a very long name.
23426         Expect 2 icalendar tests to fail on MS-Windows
23427         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
23428         (icalendar-real-world): Make them expected failures on MS-Windows.
23430 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
23432         Improve port of settings UI to older displays
23433         * lisp/cus-start.el (standard): Don't assume curved quotes are
23434         easily distinguishable when users are tinkering with a setting
23435         that affects how curved quotes are generated.
23437         Fix quoting in electric-quote-mode doc string
23438         * lisp/electric.el (electric-quote-mode): Fix quoting.
23439         This is a fallout from the recent change introducing
23440         ‘help-quote-translation’.
23442         Spelling fix
23444         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
23446         * src/doc.c (syms_of_doc): Remove unused symbols.
23448 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
23450         * lisp/window.el (window-state-put): Undedicate target window
23451         before putting STATE into it.  (Bug#20848)
23453 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
23455         Merge from origin/emacs-24
23456         a5e6f33 Fixes: debbugs:20832
23457         b9f02cf Fixes: debbugs:20832
23459 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
23461         Fix file-in-directory-p when the directory is UNC
23462         * lisp/files.el (file-in-directory-p): Support files and
23463         directories that begin with "//".  (Bug#20844)
23465 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
23467         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
23468         in the minibuffer.  (Bug#20832)
23470 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
23472         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
23473         for adding new todo file is empty but modified.  (Bug#20832)
23475 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
23477         (filepos-to-bufferpos): Further tweaks to the utf-16 code
23478         * lisp/international/mule-util.el (filepos-to-bufferpos):
23479         Fix typo.  Move non-exact check to the utf-16 branch (the only one
23480         affected).  Don't use byte-to-position for the utf-16 case.
23482 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
23484         Minor fixes in filepos-to-bufferpos
23485         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
23486         test for utf-8-emacs.  Exempt single-byte encodings from the
23487         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
23488         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
23489         UTF-16 encoded files for CR-LF EOLs.
23491 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
23493         Improve the optional translation of quotes
23494         Fix several problems with the recently-added custom variable
23495         help-quote-translation where the code would quote inconsistently
23496         in help buffers.  Add support for quoting 'like this', which
23497         is common in other GNU programs in ASCII environments.  Change
23498         help-quote-translation to use more mnemonic values: values are now the
23499         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
23500         traditional Emacs help-buffer quoting style `like this'.  Change the
23501         default behavior of substitute-command-keys to match what's done in
23502         set-locale-environment, i.e., quote ‘like this’ if displayable,
23503         'like this' otherwise.
23504         * doc/lispref/help.texi (Keys in Documentation): Document
23505         new behavior of substitute-command-keys, and document
23506         help-quote-translation.
23507         * doc/lispref/tips.texi (Documentation Tips):
23508         Mention the effect of help-quote-translation.
23509         * etc/NEWS: Mention new behavior of substitute-command-keys,
23510         and merge help-quote-translation news into it.
23511         When talking about doc strings, mention new ways to type quotes.
23512         * lisp/cedet/mode-local.el (overload-docstring-extension):
23513         Revert my recent change to this function, which shouldn't be
23514         needed as the result is a doc string.
23515         * lisp/cedet/mode-local.el (mode-local-print-binding)
23516         (mode-local-describe-bindings-2):
23517         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
23518         * lisp/cus-theme.el (describe-theme-1):
23519         * lisp/descr-text.el (describe-text-properties-1, describe-char):
23520         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
23521         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
23522         (eieio-help-constructor):
23523         * lisp/emacs-lisp/package.el (describe-package-1):
23524         * lisp/faces.el (describe-face):
23525         * lisp/help-fns.el (help-fns--key-bindings)
23526         (help-fns--compiler-macro, help-fns--parent-mode)
23527         (help-fns--obsolete, help-fns--interactive-only)
23528         (describe-function-1, describe-variable):
23529         * lisp/help.el (describe-mode):
23530         Use substitute-command-keys to ensure a more-consistent quoting
23531         style in help buffers.
23532         * lisp/cus-start.el (standard):
23533         Document new help-quote-translation behavior.
23534         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
23535         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
23536         (help-xref-url-regexp):
23537         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
23538         * lisp/wid-edit.el (widget-documentation-link-regexp):
23539         Also match 'foo', in case we're in a help buffer generated when
23540         help-quote-translation is ?'.
23541         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
23542         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
23543         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
23544         (Fsubstitute_command_keys): Document and implement new behavior.
23545         (Vhelp_quote_translation): Document new behavior.
23547 2015-06-18  Glenn Morris  <rgm@gnu.org>
23549         * lisp/cus-start.el (help-quote-translation): Add :version.
23551         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
23553 2015-06-18  Alan Mackenzie  <acm@muc.de>
23555         Make translation of quotes to curly in doc strings optional.
23556         * src/doc.c (traditional, prefer-unicode): New symbols.
23557         (help-quote-translation): New variable.
23558         (Fsubstitute_command_keys): Make translation of quotes dependent on
23559         `help-quote-translation'; also translate curly quotes back to ASCII
23560         ones.
23561         * lisp/cus-start.el (top-level): Add a customization entry for
23562         `help-quote-translation'.
23564 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
23566         * lisp/emacs-lisp/package.el: Don't always propagate async errors
23567         (package--with-work-buffer-async): Only propagate the error if the
23568         callback returns non-nil.
23569         (package--download-one-archive): Return nil on the signature
23570         checking callback if we accept unsigned.
23571         (package--download-and-read-archives): Return non-nil on the
23572         archive download callback.
23574 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
23576         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
23577         * src/nsfns.m (Fx_create_frame):
23578         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
23579         image_cache_refcount before first x_default_parameter call.
23581 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
23583         Improve and extend filepos-to-bufferpos
23584         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
23585         Don't barf if F returns nil for some argument.
23586         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
23587         that every encoding of type 'charset' is single-byte.
23589 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
23591         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
23592         Properly delete packages.  (Bug#20836)
23594 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
23596         Update data files from just-released Unicode 8.0
23597         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
23598         status.
23599         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
23600         * admin/unidata/BidiMirroring.txt:
23601         * admin/unidata/BidiBrackets.txt:
23602         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
23604 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
23606         Document curved quotes a bit better
23607         * doc/emacs/basic.texi (Inserting Text):
23608         Mention C-x 8.  Change example to use curved quote rather
23609         than infinity, as this lets us give more ways to do it.
23610         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
23611         and quotation marks.
23612         * doc/emacs/text.texi (Quotation Marks):
23613         * doc/lispref/tips.texi (Documentation Tips):
23614         Add "curly quotes" and "curved quotes" to the index.
23615         * doc/emacs/text.texi (Quotation Marks):
23616         Give the C-x 8 shorthands for curved quotes.
23617         Cross-reference to "Quotation Marks".
23619 2015-06-17  Daiki Ueno  <ueno@gnu.org>
23621         Add pinentry.el for better GnuPG integration
23622         * lisp/pinentry.el: New file.
23623         * etc/NEWS: Add entry about pinentry.el.
23624         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
23625         (Bug#20550)
23627 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
23629         * lisp/emacs-lisp/package.el: Slightly better error reporting.
23631 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
23633         (define-minor-mode): Use setq-default for :global minor modes
23634         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
23635         Use setq-default for :global minor modes (bug#20712).
23637 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
23639         Avoid infloop in redisplay with tall images
23640         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
23641         down near ZV.  (Bug#20808)
23642         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
23643         instead of CHARPOS.
23645 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
23647         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
23648         Fix error reporting.
23650         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
23652         * lisp/emacs-lisp/package.el: Revert buffer after any operation
23653         Call `package-menu--post-refresh' after any operation that changes
23654         the package database (`package-install' and `package-delete').  To
23655         avoid performance issues in large transactions, these functions
23656         add `post-refresh' to `post-command-hook' instead of calling it
23657         immediately.
23658         (package-menu--mark-or-notify-upgrades): New function.
23659         (list-packages): Add it to `package--post-download-archives-hook'.
23660         (package-menu--post-refresh): Lose the upgrade-checking code, add
23661         code to remove itself from `post-command-hook'.
23662         (package-install, package-delete): Add it to `post-command-hook'.
23663         (package-menu-execute): Don't call `package-menu--post-refresh'.
23665 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
23667         Add missing function xref-location-group for elisp-mode.
23668         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
23670 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
23672         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
23673         The behavior now matches the description in the manual.  (Bug#20783)
23675 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
23677         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
23679 2015-06-17  Glenn Morris  <rgm@gnu.org>
23681         Generate char-script-table from Unicode source.  (Bug#20789)
23682         * admin/unidata/Makefile.in (AWK): New, set by configure.
23683         (all): Add charscript.el.
23684         (blocks): New variable.
23685         (charscript.el, ${unidir}/charscript.el): New targets.
23686         (extraclean): Also remove generated charscript.el.
23687         * admin/unidata/blocks.awk: New script.
23688         * admin/unidata/Blocks.txt: New data file, from unicode.org.
23689         * lisp/international/characters.el: Load charscript.
23690         * src/Makefile.in (charscript): New variable.
23691         (${charscript}): New target.
23692         (${lispintdir}/characters.elc): Depend on charscript.elc.
23693         (temacs$(EXEEXT)): Depend on charscript.
23695         * lisp/international/characters.el (char-script-table): Tweak
23696         some ranges to better match the source.  (Bug#20789#17)
23698         Remove "no-byte-compile: t" from a few files.
23699         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
23700         * lisp/obsolete/patcomp.el: No reason not to compile these.
23702 2015-06-16  Glenn Morris  <rgm@gnu.org>
23704         Fix some typos in copied Unicode data.  (Bug#20789)
23705         * lisp/international/characters.el (char-script-table):
23706         * lisp/international/fontset.el (script-representative-chars)
23707         (setup-default-fontset): Fix typos.
23709         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
23710         Don't print filename twice (it's in the prefix now).
23712         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
23713         No longer needed.
23715         Address a compilation warning.
23716         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
23717         Replace 't' with '_' in pcase.
23719         Address some check-declare warnings.
23720         * lisp/simple.el (tabulated-list-print):
23721         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
23722         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
23723         (ns-get-selection): Update declarations.
23725         Address some compilation warnings.
23726         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
23727         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
23728         Replace 't' with '_' in pcase.
23730         Address some compilation warnings.
23731         * lisp/face-remap.el (text-scale-adjust):
23732         * lisp/menu-bar.el (popup-menu-normalize-position):
23733         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
23734         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
23735         * lisp/emacs-lisp/generator.el (cps--transform-1):
23736         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
23737         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
23738         * lisp/progmodes/octave.el (octave-goto-function-definition)
23739         (octave-find-definition-default-filename):
23740         Replace 't' with '_' in pcase.
23742         * lisp/emacs-lisp/pcase.el (pcase--u1):
23743         Paper-over today's bootstrap failure.
23745 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
23747         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
23749         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
23751         Better confirmation message in `find-alternate-file' (Bug#20830)
23752         * lisp/files.el (find-alternate-file'): Improve the confirmation
23753         message to show the buffer name.
23755         Better docstring for null.  (Bug#20815)
23756         * src/data.c (null): Improves the docstring, saying what null returns
23757         when OBJECT is non-nil.
23759 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
23761         * lisp/net/newst-treeview.el: Use lexical-binding.
23763         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
23764         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
23765         New auxiliary function, extracted from filepos-to-bufferpos.
23766         Make sure it terminates.
23767         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
23768         Add support for the `exact' quality.
23770 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
23772         Identify feeds in newsticker treeview with :nt-feed property
23773         * lisp/net/newst-treeview.el:
23774         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
23776 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
23778         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
23779         (pcase--self-quoting-p): Floats aren't self-quoting.
23780         (pcase): Tweak docstring.
23781         (pcase--u1): Deprecate the t pattern.  Improve error detection for
23782         the nil pattern.
23783         (\`): Tweak docstring.  Signal an error for unrecognized cases.
23784         (bug#20784)
23786 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
23788         Fix infloop in filepos-to-bufferpos
23789         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
23790         offset calculation, and make it conditional on the eol-type of the
23791         file's encoding.  (Bug#20825)
23793 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
23795         Fix handling of image cache refcounts.  (Bug#20802)
23796         This backports Eli Zaretskii's solution of this problem for W32
23797         to X and NS.
23798         * src/nsfns.m (image_cache_refcount): Define unconditionally.
23799         (unwind_create_frame): If the image cache's reference count
23800         hasn't been updated yet, do that now.
23801         (Fx_create_frame): Set image_cache_refcount unconditionally.
23802         * src/xfns.c (image_cache_refcount): Define unconditionally.
23803         (unwind_create_frame): If the image cache's reference count
23804         hasn't been updated yet, do that now.
23805         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
23806         unconditionally.
23807         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
23808         X and NS.
23810 2015-06-16  Nils Ackermann  <nils@ackermath.info>
23812         Improve reftex-label-regexps default value
23813         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
23814         keyvals label regexp more strict to better cope with unbalanced
23815         brackets common in math documents.
23817 2015-06-16  Glenn Morris  <rgm@gnu.org>
23819         * doc/emacs/calendar.texi (Format of Diary File):
23820         Move "nonmarking" from here...
23821         (Displaying the Diary): ... to here.
23823         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
23824         Swap the order of these nodes.
23825         * doc/emacs/emacs.texi: Update detailed menu for the above change.
23827         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
23828         Update date of examples.
23829         (Diary, Format of Diary File): Move example from former to latter.
23830         Reduce duplication.
23832         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
23833         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
23834         Don't set no-byte-compile in the outputs.
23835         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
23837 2015-06-15  Glenn Morris  <rgm@gnu.org>
23839         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
23840         * doc/emacs/calendar.texi (Diary, Format of Diary File):
23841         Update for above diary-file change.
23843         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
23844         (apply-macro-to-region-lines): Use user-error.
23846         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
23847         (pages-directory-for-addresses): Doc fixes.
23849 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
23851         * lisp/info.el: Cleanup bytepos/charpos issues
23852         * lisp/international/mule-util.el: Use lexical-binding.
23853         (filepos-to-bufferpos): New function.
23854         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
23855         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
23856         (Info-read-subfile, Info-search): Use 0-based file positions.
23858         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
23859         (perl--syntax-exp-intro-keywords): New var.
23860         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
23861         (bug#20800).
23863 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
23865         Fix quoting when making derived mode docstring
23866         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
23867         Nest regexp-quote inside format, not the reverse.
23868         Problem reported by Artur Malabarba in:
23869         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
23871 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
23873         Fix current-iso639-language on MS-Windows
23874         * lisp/international/mule-cmds.el (set-locale-environment):
23875         Downcase the locale name before interning it.  This is so the
23876         'current-iso639-language' on MS-Windows matches the ':lang'
23877         property of font-spec objects.
23879         Limit Symbola usage some more
23880         * lisp/international/fontset.el (setup-default-fontset): Limit
23881         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
23882         (Bug#20727)
23884 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
23886         * lisp/emacs-lisp/map.el (map-let): Better docstring.
23888 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
23890         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
23891         (help-fns-test-funny-names): Spelling fixes.
23893 2015-06-14  Glenn Morris  <rgm@gnu.org>
23895         * lisp/version.el (emacs-repository-version-git): Demote errors.
23896         Check result is a hash.
23898 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
23900         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
23901         Catch errors that happen before going async.  (Bug#20809)
23903 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
23905         Another improvement of documentation of set-fontset-font
23906         * doc/lispref/display.texi (Fontsets): Say explicitly that
23907         CHARACTER can be a single codepoint.
23908         * src/fontset.c (Fset_fontset_font): Doc fix.
23910         Another improvement for symbol and punctuation characters
23911         * lisp/international/fontset.el (setup-default-fontset): Exclude
23912         from Symbola character ranges for symbols and punctuation covered
23913         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
23914         installed and where its coverage of symbols and punctuation is
23915         known to be good.  (Bug#20727)
23917 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
23919         Some generic support for multi-mode indentation.
23920         * lisp/progmodes/prog-mode.el (prog-indentation-context):
23921         New variable.
23922         (prog-first-column, prog-widen): New convenience functions.
23924 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
23926         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
23927         Don't assume that `tabulated-list-printer' will leave point at the
23928         end of the buffer.  (Bug#20810)
23930 2015-06-13  Glenn Morris  <rgm@gnu.org>
23932         Tweaks for getting repository version; a bit more like it was for bzr
23933         * lisp/version.el (emacs-repository-version-git)
23934         (emacs-repository--version-git-1): New functions,
23935         split from emacs-repository-get-version.
23936         (emacs-repository-get-version): Make the second argument meaningful.
23938         * lisp/startup.el (command-line-1): Inform if skipping relative
23939         file names due to deleted PWD.
23941         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
23942         when starup directory is missing.  (Bug#18851)
23943         (errno.h): Include it.
23945 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
23947         Better fix for documenting `X as "`X"
23948         Fix suggested by Stefan Monnier.
23949         * lisp/help-fns.el (help-fns--signature):
23950         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
23951         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
23952         Don't treat `X specially, as help-fns--signature now handles this.
23954 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
23956         Improve the default fontset when Symbola is not installed
23957         * lisp/international/fontset.el (setup-default-fontset): Only
23958         prepend Symbola and FreeMono font specs for symbols and
23959         punctuation; do not replace the default spec for them.  This
23960         should have better results when Symbola/FreeMono are not
23961         installed.  (Bug#20727)
23963         Improve documentation of ':lang' in font specs
23964         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
23965         use of the ':lang' property of the font spec.
23966         * doc/emacs/frames.texi (Fonts): Document the language names that
23967         can be in the STYLE part of XLFD.
23968         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
23969         property.
23971         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
23973         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
23975         Revert last change in fontset.el
23976         * lisp/international/fontset.el (setup-default-fontset): Revert
23977         the change "Configure Symbola font only if installed", since font
23978         search is evidently not yet set up when this function is called.
23979         (Bug#20727)
23981 2015-06-12  Glenn Morris  <rgm@gnu.org>
23983         Ensure early startup warnings are visible at the end.  (Bug#20792)
23984         * lisp/emacs-lisp/warnings.el (display-warning):
23985         If startup isn't complete, delay the warning.
23986         * lisp/startup.el (normal-top-level, command-line):
23987         Let display-warning automatically handle the needed delays.
23988         Run delayed-warnings-hook.
23990         * lisp/version.el (emacs-repository-get-version):
23991         Avoid calling external executable if possible.  (Bug#20799)
23993 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
23995         Document `X as "`X", not as "(` X)"
23996         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
23997         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
23999         * src/print.c (print_object): Minor simplification.
24001 2015-06-12  Glenn Morris  <rgm@gnu.org>
24003         * src/buffer.c (init_buffer): Add final newline to message.
24005 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
24007         Configure Symbola font only if installed
24008         * lisp/international/fontset.el (setup-default-fontset):
24009         Don't specify the Symbola font if it's not installed.
24010         Likewise for FreeMono.  (Bug#20727)
24012 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
24014         Configure Symbola font only for symbols and punctuation
24015         * lisp/international/fontset.el (setup-default-fontset): Leave
24016         only symbols and punctuation in the fontset setup for Symbola
24017         font; remove "Greek and Coptic" and "Cyrillic Supplement".
24018         (Bug#20798)
24020 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
24022         Fix crash in fontset-info
24023         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
24024         non-nil.
24026 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
24028         Port to Solaris 10 sparc + Sun C 5.13
24029         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
24030         Adjust to process.c change.
24031         * src/process.c (create_process): Declare volatile variables at
24032         top level of this function, so that they're less likely to be
24033         reused later in the function in the code executed by the vforked
24034         child.  Do not declare locals used only in the vforked child, as
24035         they might share memory with locals still live in the parent.
24036         Instead, use the same variables in the child as in the parent.
24037         This works around a subtle bug that causes a garbage collector
24038         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
24040 2015-06-12  Glenn Morris  <rgm@gnu.org>
24042         * lisp/startup.el (normal-top-level): Don't let *Messages* get
24043         a nil default-directory.
24045 2015-06-11  Glenn Morris  <rgm@gnu.org>
24047         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
24049         Some progress towards starting with PWD deleted.  (Bug#18851)
24050         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
24051         * lisp/startup.el (normal-top-level, command-line-1):
24052         * lisp/minibuffer.el (read-file-name-default):
24053         Handle default-directory being nil.
24055 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
24057         Fix "not a tty" bug on Solaris 10
24058         * configure.ac (PTY_OPEN): Define to plain 'open'
24059         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
24060         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
24061         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
24062         hosts that call grantpt which does its work via a setuid subcommand
24063         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
24064         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
24065         seems relevant in that case too.
24067 2015-06-11  Juri Linkov  <juri@linkov.net>
24069         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
24070         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
24071         (Bug#20785)
24073 2015-06-11  Glenn Morris  <rgm@gnu.org>
24075         * lisp/international/characters.el (char-script-table): Fix typo.
24077 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
24079         Fix quoting of help for functions with odd names
24080         While investigating Bug#20759, I discovered other quoting problems:
24081         C-h f mishandled characters like backslash and quote in function names.
24082         This fix changes the behavior so that 'C-h f pcase RET' now
24083         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
24084         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
24085         in src/lread.c's read1 function says that the backslash will be
24086         needed starting in Emacs 25, which implies that 'format' is
24087         correct and the old pcase documention was wrong to omit the backslash.
24088         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
24089         * lisp/help-fns.el (help-fns--signature):
24090         * lisp/help.el (help-add-fundoc-usage):
24091         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
24092         Use help--make-usage-docstring rather than formatting
24093         help-make-usage.
24094         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
24095         Return raw docstring.
24096         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
24097         raw docstring.  Take more care to distinguish raw from cooked dstrings.
24098         (describe-function-1): Let help-fns--signature substitute
24099         command keys.
24100         * lisp/help.el (help--docstring-quote): New function.
24101         (help-split-fundoc): Use it, to quote funny characters more
24102         systematically.
24103         (help--make-usage): Rename from help-make-usage, since this
24104         should be private.  Leave an obsolete alias for the old name.
24105         (help--make-usage-docstring): New function.
24106         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
24108 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
24110         * lisp/thingatpt.el (in-string-p): Revert last change,
24111         since in-string-p is not used in thingatpt.el but only from outside.
24112         Also, use lexical binding.
24114 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
24116         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
24117         * test/automated/let-alist.el (let-alist-cons): Test it.
24119 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
24121         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
24123 2015-06-10  Glenn Morris  <rgm@gnu.org>
24125         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
24127         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
24128         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
24129         * admin/gitmerge.el (gitmerge-commit-message):
24130         Exclude "skipped" messages from ChangeLog once again.
24132         Slight namespace cleanup for thingatpt.el.
24133         * lisp/thingatpt.el (thing-at-point--in-string-p)
24134         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
24135         (thing-at-point--read-from-whole-string): Rename from
24136         old versions without "thing-at-point--" prefix.
24137         Keep old versions as obsolete aliases.  Update all uses.
24139         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
24140         Move requiring of finder from here...
24141         (checkdoc-package-keywords): ... to here.
24143         Use 'user-error' in a few calendar files.
24144         * lisp/calendar/appt.el (appt-add):
24145         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
24146         (calendar-generate):
24147         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
24148         Replace 'error' with 'user-error'.
24150         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
24152         * lisp/files-x.el (add-file-local-variable):
24153         Special-case 'lexical-binding'.  (Bug#20641)
24155         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
24156         No longer autoload.
24157         * doc/misc/autotype.texi (Executables):
24158         Undocument executable-self-display.
24160         * lisp/progmodes/executable.el (executable-self-display):
24161         Use non-obsolete tail syntax.  (Bug#20779)
24162         (executable-self-display): Doc update.
24164 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
24166         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
24167         (finder-known-keywords): Silence byte-compiler.
24169 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
24171         * lisp/simple.el (eval-expression): Macroexpand before evaluating
24172         (bug#20730).
24174         * lisp/progmodes/sh-script.el: Better handle nested quotes.
24175         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
24176         (sh-font-lock-quoted-subshell): Make sure double quotes within single
24177         quotes don't mistakenly end prematurely the surrounding string.
24179         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
24181 2015-06-09  Glenn Morris  <rgm@gnu.org>
24183         * test/automated/Makefile.in (ELFILES): Sort.
24185         * Makefile.in (SUBDIR_MAKEFILES):
24186         * lwlib/Makefile.in (WARN_CFLAGS):
24187         Use built-in Make functions rather than echo+sed.
24189 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
24191         Update char-script-table
24192         * lisp/international/characters.el (char-script-table): Update
24193         from Unicode 8.0 Draft.
24195         Improve font selection for punctuation and other symbols
24196         * src/fontset.c (face_for_char): If the character's script is
24197         'symbol', and the font used for ASCII face has a glyph for it, use
24198         the font for the ASCII face instead of searching the fontsets.
24199         This comes instead of NS-specific code that used the current
24200         face's font instead, which is now disabled due to undesirable
24201         consequences.  (Bug#20727)
24203 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
24205         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
24206         Skip past `#' to find BEG (bug#20771).
24207         * test/automated/elisp-mode-tests.el
24208         (elisp-completes-functions-after-hash-quote): New test.
24210 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
24212         Fix compilation warning/error in --without-x builds
24213         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
24214         code on HAVE_WINDOW_SYSTEM.
24216         Improve the default fontset wrt symbols
24217         * lisp/international/fontset.el (setup-default-fontset): Better
24218         setup of fontset-default for symbols: use Symbola and FreeMono.
24219         (Bug#20727)
24221 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
24223         Add new command checkdoc-package-keywords
24224         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
24225         New defcustom.
24226         (checkdoc-list-of-strings-p): Add doc.
24227         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
24228         non-nil, call `checkdoc-package-keywords'.
24229         (checkdoc-get-keywords): New defun.
24230         (checkdoc-package-keywords): New command.  Warns if the current file
24231         has package.el-style keywords that aren't in `finder-known-keywords'.
24232         * etc/NEWS: Add entry.
24234 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
24236         Avoid crashes when key-binding is called from a timer
24237         * src/keymap.c (Fkey_binding): Don't segfault if called with an
24238         empty vector as KEY.  (Bug#20705)
24240         Fix a thinko in arc-mode.el
24241         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
24242         non-Zip64 case.  (Bug#20769)
24244 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
24246         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
24248 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
24250         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
24251         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
24252         "*warn*", print the warning to the standard output.  (bug#20754)
24254 2015-06-07  Glenn Morris  <rgm@gnu.org>
24256         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
24258         * src/font.c (syms_of_font) <font-log>: Doc fix.
24260         Remove the obsolete leading "*" from some C doc strings.
24261         * src/coding.c (syms_of_coding):
24262         * src/font.c (syms_of_font): Remove leading "*" from docs.
24263         * lisp/cus-start.el (enable-character-translation): Add it.
24265 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
24267         Move gen_origin from program to data
24268         That way, 'make change-history' needs to change only ChangeLog.2,
24269         instead of having to change two files.
24270         * ChangeLog.2: Add commit info for range that this file covers.
24271         * Makefile.in (new_commit_regexp): New macro.
24272         (change-history-nocommit): Simplify, by putting what used to be
24273         the gen_origin value into the data (ChangeLog.2) rather than
24274         into the program (gitlog-to-emacslog).
24275         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
24276         the input file (e.g., ChangeLog.2) rather than by having a
24277         constant in the program.  Substitute it into the output.
24279 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
24281         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
24282         function name (bug#20759).
24284 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
24286         Adapt 'struct timespec' to next release of MinGW runtime
24287         * nt/inc/ms-w32.h (struct timespec): Don't declare if
24288         __struct_timespec_defined is defined.
24290 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
24292         Merge from gnulib
24293         This incorporates:
24294         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
24295         2015-06-05 stdio: Don't redefine gets when using C++
24296         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
24297         2015-06-02 file-has-acl: fix build on Mac OS X 10
24298         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
24299         2015-06-01 pthread_sigmask: discount system version if a simple macro
24300         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
24301         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
24302         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
24303         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
24304         * lib/gnulib.mk: Regenerate.
24306 2015-06-06  Juri Linkov  <juri@linkov.net>
24308         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
24309         before calling grep-compute-defaults because now it affects the
24310         command lines computed in grep-compute-defaults.  (Bug#20728)
24312 2015-06-06  Glenn Morris  <rgm@gnu.org>
24314         Address some compilation warnings.
24315         * lisp/international/mule-cmds.el (w32-get-console-codepage)
24316         (w32-get-console-output-codepage):
24317         * lisp/progmodes/elisp-mode.el (xref-collect-references):
24318         * lisp/version.el (cairo-version-string): Declare.
24319         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
24321 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
24323         Fix display when a font claims large values of ascent and descent
24324         This fixes bug#20628.
24325         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
24326         coordinate of a hollow cursor glyph when the original glyph's
24327         ascent is too small.
24328         (get_font_ascent_descent, normal_char_ascent_descent)
24329         (normal_char_height): New functions.
24330         (handle_single_display_spec, append_space_for_newline)
24331         (calc_pixel_width_or_height, produce_stretch_glyph)
24332         (calc_line_height_property): Use normal_char_ascent_descent and
24333         normal_char_height.
24334         (x_produce_glyphs): When font-global values of ascent and descent
24335         are too large, use per-character glyph metrics instead, if
24336         possible.  But don't allow the glyph row's ascent and descent
24337         values become smaller than the values from the metrics of the
24338         font's "normal" character.
24339         * src/xftfont.c (xftfont_draw):
24340         * src/w32font.c (w32font_draw): Correct the values of ascent and
24341         descent used to draw glyphless characters' hex code in a box.
24342         * src/xterm.c (x_draw_glyph_string_background):
24343         * src/xdisp.c (x_produce_glyphs):
24344         * src/w32term.c (x_draw_glyph_string_background):
24345         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
24346         to detect fonts whose global ascent and descent values are too
24347         large to be used in layout decision, and redraw the background
24348         when that happens.
24349         * src/dispextern.h (FONT_TOO_HIGH): New macro.
24350         (get_font_ascent_descent): Add prototype.
24351         * src/xterm.c (x_new_font):
24352         * src/w32term.c (x_new_font):
24353         * src/nsterm.m (x_new_font):
24354         * src/font.c (font_open_entity):
24355         * src/composite.c (composition_gstring_width):
24356         Use get_font_ascent_descent to obtain reasonable values for ascent
24357         and descent of a font.
24359 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
24361         Add assertion in adjust_point_for_property
24362         * src/keyboard.c (adjust_point_for_property): Add eassert for
24363         current buffer being shown in selected window.
24365 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
24367         Replace uses of in-string-p; make it obsolete
24368         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
24369         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
24371 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
24373         Fix Dired display of an explicit list of files by ls-lisp.el
24374         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
24375         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
24376         correct for when displaying individual files separately, not as
24377         part of listing a directory, in which case these values are not
24378         recomputed by 'ls-lisp-insert-directory', but used verbatim.
24380         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
24382 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
24384         Do not adjust point in a non-selected window
24385         * src/keyboard.c (command_loop_1): Do not adjust point when
24386         current buffer is not shown in selected window (Bug#20590).
24388         * etc/DEBUG: Mention 'maybe_call_debugger'
24390 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
24392         Fix a unit test for map.el
24393         * test/automated/map-tests.el (test-map-let): Fix the test to work
24394         with the new syntax of `map-let'.
24396         * lisp/emacs-lisp/map.el (map-let): Better docstring.
24398         Better syntax for the map pcase pattern
24399         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
24400         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
24402         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
24404         Fix a byte-compiler error in map-put and map-delete
24405         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
24406         called with a symbol.
24408 2015-06-05  Glenn Morris  <rgm@gnu.org>
24410         * admin/gitmerge.el (gitmerge-commit-message):
24411         Revert to including "skipped" messages in ChangeLog once again.
24413 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
24415         Use string> instead of equiv lambda with string<
24416         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
24417         lambda with string<.
24419 2015-06-05  Glenn Morris  <rgm@gnu.org>
24421         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
24422         (map--delete-array): Fix typo.
24424         * test/automated/map-tests.el: Replace "assert" with "should".
24426         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
24427         (SUBDIRS_REL): Derive from SUBDIRS.
24429         Tweak some build messages.
24430         * lisp/Makefile.in ($(lisp)/loaddefs.el):
24431         * lisp/cus-dep.el (custom-make-dependencies):
24432         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
24433         * lisp/international/titdic-cnv.el (batch-titdic-convert):
24434         Don't say how to compile.
24436 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
24438         Omit U+0332 COMBINING LOW LINE in previous change
24439         It turns out that it does not work on Ubuntu 15.04.
24441         Fix transliteration of Bahá'í months
24442         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
24443         Improve quality of Latin transliteration of Bahá'í month names.
24445         Fix curved quotes in a few places
24446         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
24447         The strings in question are not doc strings, so this partially
24448         undoes the recent change that assumed they were doc strings.
24449         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
24450         * lisp/info.el (Info-finder-find-node):
24451         Use curved quotes.
24452         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
24453         Also allow curved quotes in doc strings.
24455 2015-06-04  Glenn Morris  <rgm@gnu.org>
24457         * lisp/Makefile.in (AM_V_at): Add missing definition.
24459         * lisp/Makefile.in: Quieten output a bit.
24460         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
24461         Don't echo directories, since the commands we invoke print them.
24463         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
24464         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
24465         (SUBDIRS_SUBDIRS): New variables.
24466         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
24467         Remove.
24468         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
24469         (update-subdirs, compile-main, compile-clean):
24470         Replace "setwins" usage with new "SUBDIRS" variables.
24472         * lisp/vc/compare-w.el (compare-windows-get-window-function):
24473         Fix :version tag.
24475 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24477         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
24479         Undo removal of x_clear_area call on expose for GTK3 or cairo
24480         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
24481         Clear exposed area.  (Bug#20677)
24483 2015-06-04  Glenn Morris  <rgm@gnu.org>
24485         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
24487         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
24489         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
24490         Rename from quail-lao-update-translation, since lao.el defines that.
24492 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
24494         Handle new-style advice in find-funct
24495         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
24496         Handle new-style advice.  Return the symbol's function definition.
24497         (Bug#20718)
24498         (find-function-library): Update accordingly.
24500 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
24502         Merge branch 'map'
24504         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
24506         Add new function string-greaterp
24507         * lisp/subr.el (string-greaterp): New function.  Also aliased to
24508         `string>'.
24509         * test/automated/subr-tests.el (string-comparison-test): Add unit
24510         tests for `string>'and `string<'.
24511         * src/fns.c (string-lessp): Better docstring.
24513 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
24515         Fix timezone-related functions on MS-Windows
24516         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
24517         'xputenv', even if no reallocation of tzvalbuf was necessary.
24518         This fixes a bug in timezone-related functions on MS-Windows.
24519         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
24521 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
24523         Don't pass raw directory name to 'error'
24524         * lisp/files.el (basic-save-buffer-2): Avoid format error if
24525         a directory name contains a string like "%s".
24527 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
24529         Override 'grep --color=always'
24530         * lisp/progmodes/xref.el (xref-collect-matches):
24531         Override --color=always in grep-find-template.
24533 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
24535         Fix error introduced recently in file-notify-tests.el
24536         * test/automated/file-notify-tests.el
24537         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
24538         (file-notify--deftest-remote): Revert previous patch, not
24539         necessary anymore.
24541 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
24543         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
24544         Starting from a display string after a newline, point went to the
24545         previous line.  Also, fix an inadvertent use of a buffer position
24546         with FETCH_BYTE.  (Bug#20701)
24548 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
24550         Instrument file-notify-test.el in order to catch hydra error
24551         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
24552         Wrap body by `ignore-case', in order to trap non-local errors.
24554 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24556         Undo previous changes in non-toolkit scroll bar drawing
24557         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
24558         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
24560 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
24562         * .gitignore: Also ignore doc/*/*/*.html and .ps.
24564         Support quotes 'like this' in info files
24565         This is possible when 'makeinfo --disable-encoding' is used
24566         in Texinfo 5.
24567         * lisp/calc/calc-help.el (calc-describe-thing):
24568         * lisp/gnus/gnus-art.el (gnus-button-alist):
24569         * lisp/info.el (Info-find-index-name):
24570         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
24571         Also support quotes 'like this'.
24572         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
24573         * lisp/finder.el (finder-font-lock-keywords): Remove var that
24574         hasn't been used in years, instead of bothering to fix its quoting.
24576 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
24578         * .gitignore: Remove !test/etags/html-src/*.html.
24579         It's no longer needed, since *.html was removed.  Sort.
24581 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
24583         Restore <D> instead of '.' in grep-find-template
24584         * lisp/cedet/semantic/symref/grep.el
24585         (semantic-symref-grep-use-template): Update a comment.
24586         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
24587         instead of '.' in grep-find-template (bug#20719).
24588         (rgrep): Pass nil as the directory to rgrep-default-command.
24589         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
24590         default value for DIR.
24591         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
24592         workaround.
24594 2015-06-02  Glenn Morris  <rgm@gnu.org>
24596         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
24598         * configure.ac (emacs_config_features): Add Cairo.
24600         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
24602 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
24604         Ensure that autorevert works for remote files in file-notify-tests.el
24605         * test/automated/file-notify-tests.el (file-notify--test-desc):
24606         New defvar.
24607         (file-notify--test-remote-enabled)
24608         (file-notify-test00-availability, file-notify-test01-add-watch)
24609         (file-notify-test02-events): Use it.
24610         (file-notify--test-event-test): Check proper descriptor.
24611         (file-notify-test03-autorevert): Ensure that
24612         `visited-file-modtime' has changed.  (Bug#20392)
24614 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
24616         Add a pcase pattern for maps and `map-let' based on it
24617         * lisp/emacs-lisp/map.el (map-let): New macro.
24618         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
24619         * test/automated/map-tests.el: New test for `map-let'.
24621 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
24623         Reuse rgrep mechanics in xref-find-regexp
24624         * lisp/progmodes/grep.el (rgrep-default-command):
24625         Extract from `rgrep'.
24626         * lisp/progmodes/xref.el (xref-collect-references): Split from
24627         `xref-collect-matches'.  Only handle the case of symbol search.
24628         (xref-collect-matches): Instead of Semantic Symref, use
24629         `rgrep-default-command', to take advantage of its directory and
24630         file ignore settings.
24631         (xref--collect-match): Remove the last argument, leaving the
24632         regexp construction up to the caller.
24633         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
24634         Change to take the xref-collect- function to use as an argument.
24635         (elisp-xref-find): Update accordingly.
24636         * lisp/progmodes/etags.el (etags--xref-find-matches)
24637         (etags-xref-find): Same.
24639         Move xref-elisp-location to elisp-mode.el
24640         * lisp/progmodes/xref.el (xref-elisp-location)
24641         (xref-make-elisp-location, xref-location-marker): Remove here.
24642         (xref--xref): Don't limit the type of the location slot.
24643         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
24644         Define as a cl-struct here.
24645         (xref-location-marker): Move here.
24647 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
24649         Minor tweaks for .gitignore
24650         * .gitignore: Don't ignore versioned *.html and *.ps files.
24651         Don't ignore admin/notes/tags that might be ignored as TAGS
24652         on case-insensitive filesystems.  (Bug#20710)
24654 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
24656         Generate curved quotes in ert doc
24657         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
24658         (ert-results-mode-menu)
24659         (ert-results-pop-to-backtrace-for-test-at-point)
24660         (ert-results-pop-to-messages-for-test-at-point)
24661         (ert-results-pop-to-should-forms-for-test-at-point)
24662         (ert-describe-test):
24663         Quote ‘like this’, not `like this', when generating doc strings
24664         and the like.
24665         * test/automated/ert-x-tests.el (ert-test-describe-test):
24666         Allow quoting ‘like this’.
24668 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
24670         Add test for previous commit
24671         * test/automated/replace-tests.el: New file.
24672         (query-replace--split-string-tests): Add test for previous commit.
24674         Avoid confusion in query-replace history when replacing NUL chars
24675         * lisp/replace.el (query-replace--split-string): New function.
24676         (query-replace-read-from): Rely on the 'separator' property
24677         instead of searching for the NUL character (Bug#20690).
24679 2015-06-02  Glenn Morris  <rgm@gnu.org>
24681         Merge from origin/emacs-24
24682         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
24684         * admin/gitmerge.el (gitmerge-commit-message):
24685         Exclude "skipped" messages from ChangeLog.
24687 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
24689         Sync with Tramp repository
24690         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
24691         messages.
24692         (tramp-handle-make-auto-save-file-name): When calling
24693         `make-auto-save-file-name' internally, make sure it uses Unix-like
24694         behavior, not Windows-like behavior.
24695         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
24696         the local case, because "chown" might fail on w32.
24697         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
24698         for XEmacs.
24700 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
24702         MS-Windows followup for batch stdout/stderr output changes
24703         * lisp/international/mule-cmds.el (set-locale-environment):
24704         In batch mode, use console codepages for keyboard and terminal
24705         encoding.  (Bug#20545)
24707         Update .gitattributes for DOS EOL files
24708         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
24709         CRLF end-of-line format.
24711         NS equivalents of xterm.c and w32term.c changes
24712         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
24713         glyph string background also when the font in use claims
24714         preposterously large global height value.  Helps to remove
24715         artifacts left from previous displays when glyphless characters
24716         are displayed as hex code in a box.
24717         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
24718         value for FRAME_LINE_HEIGHT, even when a font claims very large
24719         value for its height.
24721 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
24723         Avoid grave accent quoting in stderr diagnostics
24724         A few Emacs diagnostics go directly to stderr, and so can't easily
24725         contain curved quotes (as non-UTF-8 locales might mishandle them).
24726         Instead of bothering to add support for this rarity, reword the
24727         diagnostics so that they don't use grave accent to quote.
24728         * src/alloc.c (mark_memory): Fix comment.
24729         * src/buffer.c (init_buffer):
24730         * src/dispnew.c (init_display):
24731         * src/emacs.c (main, sort_args):
24732         * src/lread.c (dir_warning):
24733         * src/term.c (init_tty):
24734         * src/unexmacosx.c (unexec):
24735         * src/xfns.c (select_visual):
24736         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
24737         Reword stderr diagnostics to avoid quoting `like this'.
24738         * src/unexmacosx.c: Include errno.h.
24739         * src/xfns.c (select_visual): Encode value for locale.
24741 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
24743         Treat batch stdout/stderr like standard display
24744         Calls like (print FOO) could generate improperly encoded or
24745         hard-to-read output if FOO contains characters outside the system
24746         locale.  Fix this by treating batch stdout and stderr like
24747         interactive standard display, when it comes to transliterating and
24748         encoding characters (Bug#20545).
24749         * doc/emacs/mule.texi (Communication Coding):
24750         * doc/lispref/display.texi (Active Display Table):
24751         * doc/lispref/nonascii.texi (Locales):
24752         * etc/NEWS:
24753         * src/coding.c (syms_of_coding):
24754         * src/dispnew.c (syms_of_display):
24755         Document this.
24756         * src/print.c: Include disptab.h.
24757         (printchar_to_stream): New function, with much of the guts of the
24758         old Fexternal_debugging_output, except this one also uses the
24759         standard display table.
24760         (printchar, strout, Fexternal_debugging_output): Use it.
24762 2015-05-31  Glenn Morris  <rgm@gnu.org>
24764         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
24766 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
24768         Remove DEFSYMs that aren't used at the C level.  Also:
24769         * src/decompress.c (Qzlib_dll):
24770         * src/font.c (Qunicode_sip):
24771         * src/frame.c (Qtip_frame):
24772         * src/ftfont.c (Qserif):
24773         * src/gnutls.c (Qgnutls_dll):
24774         * src/xml.c (Qlibxml2_dll):
24775         Move from here ...
24776         * src/w32fns.c (syms_of_w32fns): ... to here,
24777         as these are used only on MS-Windows.
24779 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
24781         Use another default value for tramp-histfile-override
24782         * lisp/net/tramp-sh.el (tramp-histfile-override):
24783         Use ".tramp_history" as default.
24784         Fixes bug#20446
24786 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
24788         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
24790 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
24792         * etc/NEWS: Add an entry about map.el.
24794         Improve the docstring of functions in map.el
24795         Since a map is not a data structure but a concept, adding information
24796         about the possible types of maps can be useful information.
24797         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
24798         each public function.
24800 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
24802         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
24803         specific tests depending on the type of the map.
24805         * lisp/emacs-lisp/map.el: Better docstrings.
24807 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
24809         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
24811 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
24813         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
24815         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
24817         Fix a false negative in `map-elt' with alists and values being nil
24818         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
24819         found but its associated value is nil, do not return the default
24820         value.
24821         * test/automated/map-tests.el: Add a regression test.
24823 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
24825         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
24827         Do not signal an error when trying to delete a key from an array
24828         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
24829         the key is present to avoid signaling an error.
24830         * test/automated/map-tests.el: Add a test for deleting non-existing
24831         keys from maps.
24833         * lisp/emacs-lisp/map.el: Better docstring.
24835         Minor improvement in map-elt
24836         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
24837         doing a lookup in arrays, but check the boundaries of the array
24838         instead.
24839         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
24840         and a negative integer as key.
24842 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
24844         * test/automated/map-tests.el: Refactoring of test methods.
24846         * test/automated/map-tests.el: Renamed from map-test.el.
24848 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
24850         * lisp/emacs-lisp/map.el (map-into): Better error message.
24852         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
24854         Throw an error when converting a map into an unknown map type
24855         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
24856         not valid.
24857         * test/automated/map-tests.el: Add a regression test.
24859         New library map.el similar to seq.el but for mapping data structures.
24860         * test/automated/map-tests.el: New file.
24861         * lisp/emacs-lisp/map.el: New file.
24863 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
24865         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
24866         there's no explicit tag name (bug#20629).
24868 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
24870         Remove format2
24871         * src/editfns.c, src/lisp.h (format2): Remove.
24872         It is more trouble than it's worth, now that we have CALLN.
24873         This is just a minor refactoring.
24874         * src/buffer.c (Fkill_buffer):
24875         * src/dbusbind.c (XD_OBJECT_TO_STRING):
24876         * src/fileio.c (barf_or_query_if_file_exists):
24877         Adjust to format2 going away.
24879         Don't misencode C-generated messages
24880         Also, be more consistent about calls to 'Fmessage' vs 'message'.
24881         * src/alloc.c (Fgc_status):
24882         Prefer AUTO_STRING to build_string for Fmessage call.
24883         * src/data.c (Fmake_variable_buffer_local)
24884         (Fmake_local_variable, Fmake_variable_frame_local):
24885         * src/doc.c (store_function_docstring):
24886         Use Fmessage, not message, since the argument can contain
24887         non-ASCII characters, and this can cause the resulting message
24888         to be incorrectly encoded for the current environment.
24889         * src/fns.c (maybe_resize_hash_table):
24890         * src/xselect.c (x_clipboard_manager_save_all):
24891         Use message, not Fmessage, since Fmessage's power isn't needed here.
24892         * src/process.c (Fmake_network_process): Reword message to avoid %s.
24893         * src/xdisp.c (vmessage): Document restrictions on message contents.
24894         (message_nolog) [false]: Remove unused code.
24896         Use \r rather than ^M in string literals
24897         This is less likely to cause problems on platforms that
24898         use CRLF (or CR!) termination for lines.
24900         Update .gitattributes to match current sources
24901         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
24902         * .gitattributes: Accommodate tests that insist on DOS format.
24903         Remove test/automated/data/decompress/foo-gzipped.
24904         Add etc/e/eterm-color.
24906 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
24908         * doc/emacs/mule.texi (Modifying Fontsets):
24909         Document face-ignored-fonts.  (Bug#20628)
24911         Add etags test for the new -Q option
24912         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
24913         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
24914         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
24915         test-case changes below.
24916         * test/etags/ETAGS.good_6: New file.
24917         * test/etags/cp-src/x.cc: New file.
24918         * test/etags/Makefile (CPSRC): Add x.cc.
24919         (check): Add one more test, for -Q.
24921 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
24923         Use list for the tags completion table, not obarray
24924         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
24925         list instead of an obarray
24926         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
24927         (tags-completion-table): Combine those lists.
24928         (tags-completion-table): Update the docstring.
24930 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
24932         Restore EOL format testing in etags
24933         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
24934         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
24935         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
24936         test-case changes below.
24937         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
24938         * test/etags/cp-src/c.C (B): Add back stray CR character.
24939         * test/etags/c-src/dostorture.c: Add back.
24940         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
24942 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
24944         Declare Emacs on MS-Windows to be DPI-aware
24945         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
24946         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
24947         This avoids Windows entering compatibility mode for Emacs,
24948         which causes fonts to look less nice.
24950 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
24952         Improve Tramp traces
24953         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
24954         * lisp/net/tramp.el (tramp-debug-message): Use it.
24956 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
24958         backup-buffer minor reworking of internals
24959         * lisp/files.el (backup-buffer): Rework to avoid a couple of
24960         unused locals inadvertently introduced in the previous change.
24962         backup-buffer now reports .emacs.d/%backup% ills
24963         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
24964         fails due to disk space exhaustion or whatever, do not pretend
24965         that it succeeded.  More generally, do a better job of checking
24966         for I/O failures, and limit the scope of the condition-case to
24967         just the operations where file errors should be caught and ignored
24968         (Bug#20595).  Also, don't bother trying to delete later backups if
24969         an earlier deletion fails, as this is a sign of trouble and it's
24970         better to stop when there's trouble.
24972         copy-file now truncates output after writing
24973         * src/fileio.c (Fcopy_file): Truncate output after writing rather
24974         than before.  This is more likely to work than truncation before
24975         writing, if the file system is out of space or the user is over
24976         disk quota (Bug#20595).  Also, check for read errors.
24978 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
24980         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
24981         Don't load descriptors from directories above the package directories.
24983 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
24985         Merge from gnulib
24986         This incorporates the following (Bug#20681):
24987         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
24988         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
24989         * lib/set-permissions.c: Copy from gnulib.
24991 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
24993         Improve Tramp traces
24994         * lisp/net/tramp.el (tramp-call-process-region): New defun.
24995         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
24997 2015-05-29  Glenn Morris  <rgm@gnu.org>
24999         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
25001 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
25003         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
25004         The signature was changed in the cairo branch, merged on 2015-05-23.
25005         This oversight broke compiling only the non-toolkit X version.
25007 2015-05-29  Samer Masterson  <samer@samertm.com>
25009         * doc/lispref/os.texi: Update initial-buffer-choice docs.
25011 2015-05-29  Glenn Morris  <rgm@gnu.org>
25013         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
25014         Mark as an expected failure.
25016 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
25018         Change package test to look for curved quotes
25019         * test/automated/package-test.el (package-test-describe-package)
25020         (package-test-signed): Search for curved single quotes as well as
25021         for grave accent and apostrophe.
25023 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
25025         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
25026         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
25028 2015-05-28  Samer Masterson  <samer@samertm.com>
25030         Show files when `initial-buffer-choice' is non-nil
25031         * lisp/startup.el (command-line-1): When Emacs is given a file as an
25032         argument and `initial-buffer-choice' is non-nil, display both the file
25033         and `initial-buffer-choice'.  For more than one file, show
25034         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
25035         commands out of the command line arg parser.
25036         (initial-buffer-choice): Clarify docstring.
25038 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
25040         Fix last commit
25041         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
25042         (gnulib module qcopy-acl): Add back, as it is harmless.  This
25043         minimizes differences wrt lib/gnulib.mk.
25045         Fix the MS-Windows build as followup to gnulib update
25046         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
25047         set-permissions.c, as they don't compile on MinGW.
25048         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
25050 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
25052         Revert my change to gnus-art.el
25053         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
25054         It wasn't that important, and it caused a Gnus build to fail.  See:
25055         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
25057         New minor mode Electric Quote
25058         This lets you easily insert quotes ‘like this’ by typing
25059         quotes `like this', and similarly you can easily insert
25060         quotes “like this” by typing quotes ``like this'' (Bug#20545).
25061         * doc/emacs/basic.texi (Inserting Text):
25062         * doc/emacs/modes.texi (Minor Modes):
25063         * etc/NEWS: Document it.
25064         * doc/emacs/text.texi (Quotation Marks): New section.
25065         * lisp/electric.el (electric-quote-comment)
25066         (electric-quote-string, electric-quote-paragraph):
25067         New custom vars.
25068         (electric--insertable-p)
25069         (electric-quote-post-self-insert-function): New functions.
25070         (electric-quote-mode, electric-quote-local-mode): New minor modes.
25071         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
25072         Add curved single quotes to electric-pair-text-pairs.
25073         Set electric-quote-string in this buffer.
25075         A few more doc string fixes (Bug#20385)
25077         Accept curved quotes in doc strings
25078         * lisp/info-look.el (info-lookup-guess-custom-symbol):
25079         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
25081         Generate curved quotes in pseudo-info nodes
25082         * lisp/info.el (Info-virtual-index-find-node)
25083         (Info-virtual-index, Info-apropos-find-node, info-apropos):
25084         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
25086         Fix minor quoting problems in doc strings
25087         Most of these fixes involve escaping grave accents that are
25088         actually intended to be grave accents, not left quotes.
25089         (Bug#20385)
25091         Support curved quotes in doc strings
25092         Emacs's traditional doc string style has been to quote symbols
25093         `like this'.  This worked well on now-obsolete terminals where
25094         ` and ' were symmetric quotes, but nowadays curved quotes
25095         ‘like this’ look better.  Support quoting the new way too.
25096         (Bug#20385)
25097         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
25098         ‘like-this’ as well as `like-this'.
25099         * etc/NEWS: Mention this.
25100         * lisp/cedet/mode-local.el (overload-docstring-extension)
25101         (mode-local-print-binding, mode-local-describe-bindings-2):
25102         * lisp/cus-theme.el (describe-theme-1):
25103         * lisp/descr-text.el (describe-text-properties-1, describe-char):
25104         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
25105         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
25106         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
25107         (eieio-help-constructor):
25108         * lisp/emacs-lisp/package.el (describe-package-1):
25109         * lisp/faces.el (describe-face):
25110         * lisp/help-fns.el (help-fns--key-bindings)
25111         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
25112         (help-fns--interactive-only, describe-function-1):
25113         (describe-variable):
25114         * lisp/help.el (describe-mode):
25115         * lisp/international/mule-cmds.el (describe-input-method)
25116         (describe-language-environment):
25117         * lisp/international/mule-diag.el (describe-character-set)
25118         (print-coding-system-briefly, list-input-methods)
25119         (list-input-methods-1):
25120         Insert curved quotes rather than grave accent and apostrophe.
25121         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
25122         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
25123         (checkdoc-proper-noun-region-engine):
25124         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
25125         (lisp-cl-font-lock-keywords-2):
25126         * lisp/finder.el (finder-font-lock-keywords):
25127         * lisp/gnus/gnus-art.el (gnus-button-alist):
25128         * lisp/help-fns.el (help-do-arg-highlight)
25129         (describe-function-1, describe-variable):
25130         * lisp/help-mode.el (help-xref-symbol-regexp)
25131         (help-xref-info-regexp, help-xref-url-regexp):
25132         * lisp/help.el (describe-mode):
25133         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
25134         * lisp/wid-edit.el (widget-documentation-link-regexp):
25135         Parse symbols quoted ‘like-this’ as well as `like-this'.
25136         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
25137         Add "‘" and "’" to electric-pair-text-pairs.
25138         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
25139         (elisp-completion-at-point, elisp--preceding-sexp):
25140         Also treat "‘" and "’" as quoting chars.
25142         substitute-command-keys now curves quotes
25143         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
25144         * doc/lispref/help.texi (Keys in Documentation):
25145         * etc/NEWS: Document this.
25146         * src/doc.c (Fsubstitute_command_keys): Implement it.
25148 2015-05-28  Glenn Morris  <rgm@gnu.org>
25150         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
25151         (rmail-summary-by-topic, rmail-summary-by-senders):
25152         No longer strip leading/trailing whitespace.
25154         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
25155         (f90-no-block-limit): Add "enum".  (Bug#20680)
25156         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
25157         New tests.
25159 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
25161         * lisp/isearch.el (isearch--current-buffer): Give a default value.
25162         Un-revert changes mistakenly dropped by f9fabb2b.
25164 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
25166         Merge from gnulib
25167         This incorporates:
25168         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
25169         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
25170         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
25171         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
25172         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
25173         2015-05-26 stdio: fix probe on mingw under gcc 5.1
25174         * admin/merge-gnulib (GNULIB_MODULES):
25175         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
25176         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
25177         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
25178         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
25179         Get latest versions from gnulib.
25180         * lib/get-permissions.c, lib/set-permissions.c: New files.
25181         * lib/gnulib.mk, m4/gnulib-comp.m4:
25182         Regenerate.
25183         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
25185 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
25187         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
25188         process here.
25189         (vc-do-command): Rather than here (bug#20608).
25191 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
25193         Avoid gratuitous delete-dups in face-at-point
25194         * lisp/faces.el (face-at-point): Do not compute the properly
25195         ordered, duplicate-free list if only a single value is
25196         requested anyway.  (Bug#20519)
25198         Show the exact C-x 8 RET invocation in describe-char
25199         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
25200         invocation instead of a template.  (Bug#20522)
25202 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
25204         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
25205         (package-menu--post-refresh): Call `tabulated-list-print' with the
25206         UPDATE argument.  This only affects the refresh action, the revert
25207         action still erases tags.
25208         (package-menu-get-status): Change `assq' to `assoc'.
25209         (package-menu--mark-upgrades-1): New function.
25210         (package-menu--mark-upgrades-pending): New variable.
25211         (package-menu-mark-upgrades): Use them to delay marking until
25212         after refresh is done.
25213         (package-menu--post-refresh): Call mark-upgrades-1 if
25214         mark-upgrades-pending is non-nil.
25216 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
25218         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
25219         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
25220         (commit 3953c4be2816537be95520605d45b866dc731f4b).
25222 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
25224         * lisp/isearch.el (isearch--current-buffer): New var.
25225         (isearch-update): Set cursor-sensor-inhibit here.
25226         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
25227         (bug#20532).
25229         Change inhibit-point-motion-hooks to t
25230         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
25231         to t and document it as obsolete.
25233 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
25235         Support ZIP files that use Zip64 extensions
25236         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
25237         format of central directory offsets used by Zip64 extensions.
25238         (Bug#20665)
25240 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
25242         New test tramp-test30-make-auto-save-file-name
25243         * test/automated/tramp-tests.el
25244         (tramp-test30-make-auto-save-file-name): New test.
25245         (tramp-test31-special-characters)
25246         (tramp-test31-special-characters-with-stat)
25247         (tramp-test31-special-characters-with-perl)
25248         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
25249         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
25250         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
25251         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
25253         Improve tramp-handle-make-auto-save-file-name
25254         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
25255         (tramp-handle-make-auto-save-file-name): Let native
25256         `make-auto-save-file-name' use `auto-save-file-name-transforms',
25257         if `tramp-auto-save-directory' is not set.
25259 2015-05-27  Glenn Morris  <rgm@gnu.org>
25261         No longer set dired-directory in eshell.  (Bug#16477)
25262         * lisp/eshell/esh-mode.el (eshell-mode):
25263         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
25265         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
25267         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
25268         * lisp/progmodes/cc-mode.el (c-mode-help-address):
25269         Change to submit@debbugs.
25270         (c-mode-bug-package): New constant.
25271         (mail-position-on-field): Declare.
25272         (c-submit-bug-report): Insert X-Debbugs-Package header.
25273         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
25274         Mention debbugs.gnu.org.
25276 2015-05-26  Glenn Morris  <rgm@gnu.org>
25278         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
25279         (rmail-summary-by-recipients, rmail-summary-by-topic)
25280         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
25281         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
25283 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
25285         Handle curved quotes in info files
25286         * lisp/calc/calc-help.el (calc-describe-thing):
25287         * lisp/info.el (Info-find-index-name)
25288         (Info-try-follow-nearest-node, Info-fontify-node):
25289         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
25290         In info files, process quotes ‘like this’ the same way we process
25291         quotes `like this'.  This catches a few places we missed earlier.
25293 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
25295         xref-prompt-for-identifier: Use a list value
25296         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
25297         value, to be interpreted as a list of commands.
25298         (xref--prompt-p): New function.
25299         (xref--read-identifier): Use it.
25301 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
25303         Teach MS-Windows font back-end return per-glyph ascent/descent
25304         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
25305         values.
25306         * src/w32font.c (w32font_text_extents): Compute, cache, and
25307         accumulate per-glyph ascent and descent values, instead of copying
25308         global values from the font.  If the values are not available from
25309         the font data, i.e., non-TTF fonts, fall back on font-global values.
25310         (compute_metrics): Compute and return per-glyph ascent and descent
25311         values, if returned by GetGlyphOutlineW, falling back on
25312         font-global values.  (Bug#20628)
25313         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
25314         height of rectangle to be drawn, to be compatible with
25315         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
25316         box, when per-glyph ascent/descent values are used.
25318 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
25320         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
25321         Don't sort if sorter is nil.
25323 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
25325         Fix Bug#20621
25326         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
25327         are major modes which set `auto-save-mode' on their own rules;
25328         Tramp shall not overwrite such settings.
25330 2015-05-26  Glenn Morris  <rgm@gnu.org>
25332         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
25333         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
25334         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
25335         Doc updates.
25336         (vc-dir-mode): Remove unnecessary autoload.
25338 2015-05-25  Philipp Stephani  <phst@google.com>
25340         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
25341         (xterm--extra-capabilities-type): Add `getSelection'.
25342         (xterm--query): Add `no-async' argument.
25343         (xterm--init-activate-get-selection): New function.
25344         (terminal-init-xterm): Use it.
25345         (xterm--init-modify-other-keys): Rename from
25346         terminal-init-xterm-modify-other-keys.
25347         (xterm--init-bracketed-paste-mode): Rename from
25348         terminal-init-xterm-bracketed-paste-mode.
25349         (xterm--init-activate-set-selection): Rename from
25350         terminal-init-xterm-activate-set-selection.
25351         (xterm--selection-char): New function.
25352         (gui-backend-set-selection): Use it.  Use the &context to only apply
25353         this method in terminals where we enabled the feature.
25354         (gui-backend-get-selection): New method.
25356 2015-05-25  Daniel Colascione  <dancol@dancol.org>
25358         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
25359         keyword constants to C++.
25361 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
25363         Make TAGS files more portable to MS-Windows
25364         * etc/NEWS: Document this.
25365         * lib-src/etags.c (readline_internal) [DOS_NT]:
25366         Don't treat CRs differently from GNUish hosts.
25367         * lisp/progmodes/etags.el (etags-goto-tag-location):
25368         Adjust STARTPOS to account for the skipped CRs in dos-style files.
25370 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
25372         Improve fix of bug#20634 in tramp-sh.el
25374 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
25376         Fix a typo in last commit
25377         * lib-src/etags.c (C_entries): Fix a typo.
25378         * test/etags/ETAGS.good_1:
25379         * test/etags/ETAGS.good_2:
25380         * test/etags/ETAGS.good_3:
25381         * test/etags/ETAGS.good_4:
25382         * test/etags/ETAGS.good_5:
25383         * test/etags/CTAGS.good: Update due to the change in etags.c.
25385         Fix tagging of class members in C-like OO languages
25386         * lib-src/etags.c (longopts): Add new option --class-qualify and
25387         its shorthand -Q.
25388         (print_help): Add help text for --class-qualify.
25389         (main): Add handling of -Q.
25390         (consider_token, C_entries) <omethodparm>: Append argument types
25391         to Objective C methods only if --class-qualify was specified.
25392         Qualify C++, Objective C, and Java class members with their class
25393         names only if --class-qualify was specified.
25394         (C_entries): If --class-qualify was not specified, remove the
25395         namespace and class qualifiers from tag names of C++ methods.
25396         This allows to use etags.el as xref back-end without the
25397         tag-symbol-match-p method, which greatly increases the number of
25398         potentially false positives.  (Bug#20629)
25399         * doc/man/etags.1: Update to document the new --class-qualify
25400         option.
25401         * test/etags/ETAGS.good_1:
25402         * test/etags/ETAGS.good_2:
25403         * test/etags/ETAGS.good_3:
25404         * test/etags/ETAGS.good_4:
25405         * test/etags/ETAGS.good_5:
25406         * test/etags/CTAGS.good: Update due to changes in etags.c.
25408 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
25410         (cl-generic-define-method): Side effects are evil (bug#20644)
25411         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
25412         cons-cells that might be used as keys in an `equal' hash-table.
25414 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
25416         Make erc timestamps visible again
25417         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
25418         Make timestamps visible again (if requested).
25420 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
25422         Fix last change in etags.c that broke tagging compresed files
25423         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
25424         quoting of decompression shell command for MS-Windows/MS-DOS.
25426 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
25428         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
25429         (Bug#20639)
25431 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
25433         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
25434         Fix typo in "Inhibit `epa-file-handler' in Tramp"
25435         (commit 89035e247591c8d688fce922b7079881aa110f33).
25437 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
25439         Fix IPv6 addresses in Tramp
25440         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
25441         Add square brackets around host name.
25443 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
25445         Inhibit `epa-file-handler' in Tramp (Bug#20634)
25446         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
25447         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
25448         `epa-file-handler'.
25450 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
25452         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
25453         (pcase-let): Document the behavior in case the pattern doesn't match.
25455 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
25457         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
25458         (tabulated-list-print): New optional argument, UPDATE.  If
25459         non-nil, the list is printed by only adding and deleting the
25460         changed entries, instead of erasing the whole buffer.  This method
25461         is much faster when few or no entries have changed.
25462         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
25463         * etc/NEWS: Document it.
25465         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
25466         (tabulated-list--get-sorter): New function.
25467         (tabulated-list-print): Restore window-line when remember-pos is
25468         passed and optimize away the `nreverse'.
25470 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
25472         Simpilify etags TEX mode scanning
25473         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
25474         Remove static vars.
25475         (TeX_commands): Deduce escapes here instead.
25476         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
25477         This removes the need for a reset_input call.
25479         Improve etags I/O error reporting
25480         * lib-src/etags.c:
25481         Don't include sys/types.h and sys/stat.h; no longer needed.
25482         (infilename): New static var.
25483         (process_file_name): Don't call 'stat'.  Instead, just open the
25484         file for reading and report any errors.  Don't bother making
25485         a copy of the file argument; it's not needed.  Be more careful to
25486         use the failing errno when reporting an error.
25487         Quote the real name better (though no perfectly)
25488         when passing it to the shell.
25489         (reset_input): New function, which reports I/O errors.
25490         All uses of 'rewind' changed to use this function.
25491         (perhaps_more_input): New function, which also checks for
25492         I/O errors.  All uses of 'feof' changed to use this function.
25493         (analyze_regex): Report an error if fclose fails.
25494         (readline_internal): Report an error if getc fails.
25495         (etags_mktmp): Return an error if close fails.
25497         etags.c: avoid side effects in 'if'
25498         * lib-src/etags.c (process_file_name, Perl_functions)
25499         (TEX_decode_env): Hoist side effects into previous statement.
25501         .gitignore tweaks
25502         * .gitignore: Ignore all *.stamp files.  Sort.
25503         Ignore [0-9]*.txt (commonly used name for git patches)
25504         and /vc-dwim-log-* (vc-dwim temporary).
25506 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
25508         Fix last change in etags.c, which failed the test suite
25509         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
25510         before the last change.
25512 2015-05-23  Glenn Morris  <rgm@gnu.org>
25514         Remove charset map files from repository, generate in first bootstrap
25515         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
25516         (all): Create the stamp file.
25517         (extraclean): Delete the stamp file.
25518         * src/Makefile.in (lispintdir, charsets): New variables.
25519         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
25520         New rules.
25521         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
25522         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
25523         * etc/charsets/*.map: Remove from repository.
25525 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
25527         Cleanup etags.c to use locale-independent code
25528         Although this doesn't alter behavior (as etags doesn't use
25529         setlocale), the new version is more clearly locale-independent and
25530         the executable is a bit smaller on my platform.
25531         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
25532         Include <c-ctype.h> instead of <ctype.h>.
25533         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
25534         (begtk, midtk):
25535         Remove; no longer needed.
25536         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
25537         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
25538         c_islower, c_tolower, respectively.
25539         (notinname, begtoken, intoken, endtoken): Rewrite as functions
25540         instead of macros, and initialize the tables at compile-time
25541         rather than at run-time.
25543         Put default action first in src/Makefile
25544         * src/Makefile.in (all): Put this rule before lisp.mk.
25545         That way, plain 'make' works in the src directory again.
25547 2015-05-23  Glenn Morris  <rgm@gnu.org>
25549         * Makefile.in: Fix extraclean rule.
25550         (extraclean_dirs): New.
25551         (extraclean): Use it.
25553 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
25555         Avoid compiler warning in image.c on MS-Windows
25556         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
25557         warning in image.c.
25559 2015-05-23  Glenn Morris  <rgm@gnu.org>
25561         Fix --without-toolkit-scroll-bars builds.
25562         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
25563         Add new argument to x_clear_area1.
25564         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
25565         Update x_clear_area arguments.
25567         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
25568         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
25569         Change to included version.
25570         (LOCAL, local, totalclean): Remove.
25571         (extraclean): Delete all generated files.
25573 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
25575         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
25576         CVS/Entries exists.
25578         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
25580         * lisp/progmodes/etags.el (tags-completion-at-point-function):
25581         Don't trust the find-tag function.
25583 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
25585         Pacify --enable-gcc-warnings
25586         * src/frame.h (x_query_color): Remove redundant extern decl.
25587         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
25588         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
25589         (ftcrfont_text_extents, ftcrfont_draw):
25590         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
25591         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
25592         (x_ins_del_lines, frame_highlight, frame_unhighlight)
25593         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
25594         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
25595         (x_update_window_begin, x_connection_closed)
25596         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
25597         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
25598         (*x_gc_get_ext_data, x_extension_initialize)
25599         (x_cr_accumulate_data):
25600         Remove redundant static decl.  Many of these GCC doesn't complain
25601         about, but we might as well clean out the duplication while we're
25602         in the neighborhood.
25603         * src/xterm.c (x_fill_trapezoid_for_relief):
25604         Remove decl of nonexistent function.
25606 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
25608         Replace gui-method macros with cl-generic with &context
25609         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
25610         (gui-method-declare, gui-call): Remove.
25611         (frame-creation-function): Use cl-defgeneric.
25612         (make-frame): Adjust callers.
25613         * lisp/menu-bar.el (menu-bar-edit-menu):
25614         Use gui-backend-selection-exists-p.
25615         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
25616         (gui-backend-get-selection): New cl-generic to replace
25617         gui-get-selection method.
25618         (gui-backend-set-selection): New cl-generic to replace
25619         gui-set-selection method.
25620         (gui-selection-owner-p): New cl-generic to replace
25621         gui-selection-owner-p method.
25622         (gui-backend-selection-exists-p): New cl-generic to replace
25623         gui-selection-exists-p method.  Adjust all callers.
25624         * lisp/server.el (server-create-window-system-frame): Don't ignore
25625         window-system spec even when unsupported.
25626         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
25627         * lisp/startup.el (handle-args-function, window-system-initialization):
25628         Use cl-defgeneric.
25629         (command-line): Adjust calls accordingly.
25630         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
25631         a window-system-initialization method.
25632         (handle-args-function, frame-creation-function): Use cl-defmethod.
25633         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
25634         (gui-get-selection): Use cl-defmethod on the new functions instead.
25635         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
25636         a gui-backend-get-selection method.
25637         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
25638         Use cl-defmethod on the new functions instead.
25639         (msdos-window-system-initialization): Turn into
25640         a window-system-initialization method.
25641         (frame-creation-function, handle-args-function): Use cl-defmethod.
25642         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
25643         a window-system-initialization method.
25644         (handle-args-function, frame-creation-function): Use cl-defmethod.
25645         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
25646         (gui-get-selection): Use cl-defmethod on the new functions instead.
25647         * lisp/term/x-win.el (x-window-system-initialization): Turn into
25648         a window-system-initialization method.
25649         (handle-args-function, frame-creation-function): Use cl-defmethod.
25650         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
25651         (gui-get-selection): Use cl-defmethod on the new functions instead.
25652         * lisp/term/xterm.el (xterm--set-selection): Turn into
25653         a gui-backend-set-selection method.
25654         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
25655         (Fns_selection_owner_p): Remove unused arg `terminal'.
25656         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
25658 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
25660         Revert "Fix etags Bug#20629 that broke C++ support"
25661         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
25663 2015-05-23  Jan D  <jan.h.d@swipnet.se>
25665         Fix etags Bug#20629 that broke C++ support
25666         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
25667         Revert commit from Sun May 10 (Bug#20629).
25669         Merge branch 'cairo'.
25670         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
25671         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
25673         Merge branch 'master' into cairo
25675         Fixes to compile cairo branch without cairo
25676         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
25677         first argument.
25678         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
25679         USE_CAIRO.
25681 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
25683         * lisp/emacs-lisp/package.el: Always update selected-packages.
25684         (package--update-selected-packages): New function.
25685         (package-menu-execute): Use it before starting the transaction,
25686         this way the list of selected packages is updated even when the
25687         transaction fails.
25688         (package-menu--perform-transaction): Don't edit selected-packages.
25690 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
25692         Fix etags reading of compressed files
25693         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
25694         Include fcntl.h, for O_CLOEXEC.
25695         (process_file_name): Don't use 'popen', whose streams cannot be
25696         rewound.  Instead, uncompress the file to a temporary file,
25697         created by 'etags_mktmp', and read from that as usual.
25698         (etags_mktmp): New function.
25699         * test/etags/ETAGS.good_1:
25700         * test/etags/ETAGS.good_2:
25701         * test/etags/ETAGS.good_3:
25702         * test/etags/ETAGS.good_4:
25703         * test/etags/ETAGS.good_5: Update to be consistent with latest
25704         changes in etags.c regarding reading compressed files.
25706         Improve documentation of 'set-fontset-font'
25707         * doc/lispref/display.texi (Fontsets): Document the value of nil
25708         for the 3rd argument of 'set-fontset-font'.
25710         Fix documentation of forward-line
25711         * src/cmds.c (Fforward_line): Clarify the return value if the line
25712         at end of accessible portion of the buffer has no newline.
25713         * doc/lispref/positions.texi (Text Lines): Document what happens
25714         if the line at end of accessible portion of buffer has no newline.
25715         (Bug#20587)
25717 2015-05-22  Glenn Morris  <rgm@gnu.org>
25719         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
25721         * admin/charsets/mapconv (LC_ALL): Set to C.
25723         * Makefile.in: Add admin/charsets into top-level clean rules.
25724         (clean): Add admin/charsets.
25725         (maybeclean_dirs): New variable.
25726         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
25728         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
25730 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
25732         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
25734 2015-05-22  Glenn Morris  <rgm@gnu.org>
25736         Generate admin/charsets Makefile via configure, and make more portable
25737         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
25738         (admin/charsets/Makefile): Generate it.
25739         * admin/charsets/Makefile.in: Rename from Makefile.
25740         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
25741         New variables, set by configure.
25742         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
25743         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
25744         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
25745         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
25746         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
25747         (all): Declare PHONY.
25748         (local): New PHONY target.
25749         (map_template): New template.  Use to define short PHONY aliases.
25750         (*.map): Add directory prefixes to targets and prerequisites.
25751         Respect make verbosity.
25752         (JISC6226.map): Replace non-portable sed append without newline.
25753         (install): Remove rule.
25754         (clean): Only delete temporary sedscript.
25755         (bootstrap-clean, distclean, maintainer-clean, extraclean)
25756         (totalclean): New PHONY rules.
25757         * admin/charsets/mapconv (BASE): Replace basename with expr.
25758         (FILE): Add "mapfiles" subdirectory.
25759         (AWK): New variable.  Use throughout in place of "awk".
25760         (main): Use "gunzip -c" in place of "zcat".
25761         Don't leave whitespace before "p", for older sed.
25762         * admin/charsets/mapfiles/PTCP154: Add final newline,
25763         to make older sed versions happy.
25765 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
25767         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
25768         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
25769         (auto-revert-notify-watch-descriptor): Use defvar-local.
25770         (find-file-hook, auto-revert-tail-mode)
25771         (auto-revert-notify-add-watch): Use setq-local.
25772         (auto-revert-notify-add-watch): Don't call make-local-variable on
25773         kill-buffer-hook (bug#20601).
25775 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25777         Change defgeneric so it doesn't completely redefine the function
25778         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
25779         previously defined methods.
25780         (cl-generic-define-method): Let-bind purify-flag instead of
25781         using `fset'.
25782         (cl--generic-prefill-dispatchers): Only define during compilation.
25783         (cl-method-qualifiers): Remove redundant alias.
25784         (help-fns-short-filename): Silence byte-compiler.
25785         * test/automated/cl-generic-tests.el:
25786         Adjust to new defgeneric semantics.
25788 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
25790         * lisp/emacs-lisp/package.el (package-menu-execute):
25791         Remove reference to remove-dups.
25793 2015-05-21  kwhite  <kwhite@gnu.org>
25795         * lisp/erc/erc.el: Hide network/channel messages.
25796         (erc-network-hide-list, erc-channel-hide-list): New lists to define
25797         message types per network/channel.
25798         (erc-add-targets): New function to parse list of targets.
25799         (erc-hide-current-message-p): Modify to check for new targets.
25801 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
25803         Don't quote nil and t in doc strings
25804         This is as per "Tips for Documentation Strings" in the elisp manual.
25805         For consistency, do the same in diagnostics and comments.
25807 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
25809         Fix a minor problem with mouse-face on mode line
25810         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
25811         mouse face also if the mouse pointer hovers above mode-line glyphs
25812         that don't come from any Lisp string.  (Bug#20620)
25814 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
25816         * lisp/emacs-lisp/package.el: Fix selected-package logic.
25817         (package-menu-execute): Mark as selected all non-upgrade packages
25818         being installed.
25819         (package-menu--perform-transaction): Don't mark anything.
25821         * lisp/emacs-lisp/package.el: Mode-line progress report.
25822         (package-menu--transaction-status): New variable.
25823         (package-menu-mode, package-menu--perform-transaction): Use it.
25825         * lisp/emacs-lisp/package.el: Better transaction messages.
25826         (package-menu--partition-transaction): New function.
25827         (package-menu--prompt-transaction-p, package-menu-execute):
25828         Use it.
25829         (package-menu--perform-transaction): Don't do any messaging.
25831         * lisp/emacs-lisp/package.el: Revert async package transactions.
25832         (package-menu-async): Update doc.
25833         (package-install-from-archive, package-download-transaction)
25834         (package-install, package-menu--perform-transaction)
25835         (package-menu-execute): Remove asynchronous functionality.
25837 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
25839         Revert doc string changes to f90.el
25840         Problem reported by Glenn Morris in:
25841         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
25842         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
25843         Revert recent changes to doc strings, as it's intended that they
25844         use grave accent, not quote.
25846 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
25848         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
25849         Improve parameter name.
25851         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
25853 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
25855         Don't require help-fns when not needed
25856         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
25857         * lisp/emacs-lisp/elint.el:
25858         Don't require help-fns at the top level
25859         * lisp/emacs-lisp/advice.el (ad-arglist):
25860         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
25861         Don't require help-fns.  (Bug#17001)
25863 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
25865         Fix slash collapsing in etags on MS-Windows
25866         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
25867         MS-Windows code from the Posix code, and support collapsing both
25868         forward- and back-slashes on MS-Windows.  Fixes a regression found
25869         by the test suite.
25871         Improve documentation of glyphless-char-display
25872         * doc/lispref/display.texi (Glyphless Chars): Improve
25873         documentation of glyphless character display.
25875         Fix "acronym" display of glyphless characters on w32
25876         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
25877         ignore "acronym" substitutes of 1 character for glyphless characters.
25879 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
25881         Add an automated test for let-when-compile
25882         * test/automated/subr-tests.el (let-when-compile): New test.
25884         Add let-when-compile macro instead of using pcase-let
25885         * lisp/subr.el (let-when-compile): New let-like macro that makes its
25886         bindings known to macros like `eval-when-compile' in the body.
25887         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
25888         a `let-when-compile'.  Also comment out the unused lexical var
25889         `el-kws-re'.
25890         The change greatly improves readability, while providing almost the
25891         same (even shorter) byte code: instead of pre-evaluating 10 variables,
25892         tossing them into a list, and destructuring that list a full screen
25893         page later, the variables are simply bound as they are evaluated,
25894         wrapped individually in `eval-when-compile'.
25896 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
25898         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
25899         (package-delete-button-action): New function.
25900         (describe-package-1): Add Delete button.
25902         * lisp/emacs-lisp/package.el: Better dependency description.
25903         (package--used-elsewhere-p): New optional arg, ALL, and return
25904         package-desc objects instead of names.
25905         (package-delete): Update accordingly.
25906         (describe-package-1): Describe which packages require the package.
25908 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
25910         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
25911         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
25912         Fix doc-string.
25914         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
25915         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
25916         (switch-to-buffer): If the selected window is strongly dedicated
25917         to its buffer, signal error before prompting for buffer name.
25918         Handle `switch-to-buffer-in-dedicated-window'.
25919         * doc/lispref/windows.texi (Switching Buffers):
25920         Document `switch-to-buffer-in-dedicated-window'.
25922 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
25924         Prefer "this" to “this” in doc strings
25925         This mostly just straightens quotes introduced in my previous patch.
25926         Suggested by Dmitry Gutov in:
25927         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
25928         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
25929         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
25930         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
25931         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
25932         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
25933         Prefer straight double quotes to curved double quotes in doc strings.
25935         Fix minor quoting problems in doc strings
25936         These were glitches regardless of how or whether we tackle the
25937         problem of grave accent in doc strings.
25938         * lisp/calc/calc-aent.el (math-restore-placeholders):
25939         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
25940         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
25941         * lisp/leim/quail/hebrew.el ("hebrew-new")
25942         ("hebrew-biblical-sil"):
25943         * lisp/leim/quail/thai.el ("thai-kesmanee"):
25944         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
25945         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
25946         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
25947         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
25948         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
25949         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
25950         (semantic-tag-components):
25951         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
25952         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
25953         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
25954         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
25955         * lisp/emacs-lisp/generator.el (iter-next):
25956         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
25957         (gnus-article-mode-syntax-table):
25958         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
25959         * lisp/net/soap-client.el (soap-wsdl-get):
25960         * lisp/net/telnet.el (telnet-mode):
25961         * lisp/org/org-compat.el (org-number-sequence):
25962         * lisp/org/org.el (org-remove-highlights-with-change)
25963         (org-structure-template-alist):
25964         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
25965         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
25966         (handwrite-12pt, handwrite-13pt):
25967         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
25968         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
25969         * lisp/progmodes/verilog-mode.el (verilog-tool)
25970         (verilog-string-replace-matches, verilog-preprocess)
25971         (verilog-auto-insert-lisp, verilog-auto-insert-last):
25972         * lisp/textmodes/makeinfo.el (makeinfo-options):
25973         * src/font.c (Ffont_spec):
25974         Fix minor quoting problems in doc strings, e.g., missing quote,
25975         ``x'' where `x' was meant, etc.
25976         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
25977         Fix minor quoting problem in other string.
25978         * lisp/leim/quail/ethiopic.el ("ethiopic"):
25979         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
25980         Omit unnecessary quotes.
25981         * lisp/faces.el (set-face-attribute, set-face-underline)
25982         (set-face-inverse-video, x-create-frame-with-faces):
25983         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
25984         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
25985         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
25986         * lisp/net/tramp.el (tramp-methods):
25987         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
25988         * lisp/textmodes/artist.el (artist-ellipse-right-char)
25989         (artist-ellipse-left-char, artist-vaporize-fuzziness)
25990         (artist-spray-chars, artist-mode, artist-replace-string)
25991         (artist-put-pixel, artist-text-see-thru):
25992         * lisp/vc/ediff-util.el (ediff-submit-report):
25993         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
25994         Use double-quotes rather than TeX markup in doc strings.
25995         * lisp/skeleton.el (skeleton-pair-insert-maybe):
25996         Reword to avoid the need for grave accent and apostrophe.
25997         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
25998         Don't use grave and acute accents to quote.
26000 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
26002         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
26003         Silence compiler.
26005 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
26007         Try to port new etags tests to MS-Windows
26008         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
26009         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
26010         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
26011         Adjust to test-case changes below.
26012         * test/etags/Makefile (CSRC): Remove dostorture.c.
26013         Whatever it was trying to test, wasn't working portably.
26014         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
26015         just a line-ending problem.
26016         * test/etags/c-src/dostorture.c: Remove.
26017         * test/etags/cp-src/c.C: Remove stray CR.
26018         * test/etags/html-src/algrthms.html: Remove trailing CRs.
26019         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
26020         but if someone edits it later it should stay UTF-8-compatible.
26022 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
26024         Fix display of overlapping window-specific overlays
26025         * src/keyboard.c (adjust_point_for_property): When adjusting point
26026         due to display strings, ignore overlays that are specific to
26027         windows other than the currently selected one.
26028         * src/xdisp.c (handle_single_display_spec): If the display
26029         property comes from an overlay, arrange for buffer iteration to
26030         resume only after the end of that overlay.  (Bug#20607)
26032 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
26034         New command icomplete-force-complete-and-exit
26035         * lisp/icomplete.el (icomplete-force-complete-and-exit):
26036         New command
26037         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
26038         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
26039         (icomplete-minibuffer-map): Bind C-j to it.
26040         (icomplete-forward-completions, icomplete-backward-completions):
26041         Mention the new command in the docstring.
26042         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
26043         Revert the previous fix for bug#17545.
26045 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
26047         Fix last commit
26049         In Elisp manual explain how to override window manager positioning
26050         (Bug#20552)
26051         * doc/lispref/frames.texi (Position Parameters): Give example of
26052         how to override a window manager positioning decision.
26054         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
26055         * src/frame.c (Fdelete_frame): In doc-string mention that frame
26056         can't be deleted if it has a surrogate minibuffer.
26057         * doc/lispref/frames.texi (Minibuffers and Frames)
26058         (Deleting Frames): Explain "surrogate minibuffer frames".
26060         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
26062 2015-05-18  Glenn Morris  <rgm@gnu.org>
26064         Add option to ignore commit lines matching a pattern in ChangeLog
26065         * build-aux/gitlog-to-changelog: Add --ignore-line option.
26066         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
26068 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
26070         Don't skip new etags tests on non-UTF-8 hosts
26071         Problem reported by Eli Zaretskii for MS-Windows.
26072         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
26073         (LC_ALL): Set to C if the current locale isn't UTF-8.
26074         (.PHONY): Remove ediff_1 thru ediff_5.
26075         (check): Always run.
26077 2015-05-18  Glenn Morris  <rgm@gnu.org>
26079         * lisp/calculator.el (calculator-funcall):
26080         * lisp/textmodes/artist.el (artist-spray-random-points):
26081         Use standard degree/radian conversion utilities.
26083         Further lisp-complete-symbol related cleanup.
26084         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
26085         Unadvertise non-functional argument.  Replace obsolete alias.
26087 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
26089         Add a test case for Maven warning ouput
26090         * test/automated/compile-tests.el
26091         (compile-tests--test-regexps-data): Add a case for Maven warning
26092         ouput.
26093         (compile--test-error-line): Check the compilation message type, if
26094         it's specified in the test data.
26096 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
26098         Update Maven compilation-mode entry to distinguish warnings
26099         * lisp/progmodes/compile.el
26100         (compilation-error-regexp-alist-alist): Update Maven entry to
26101         distinguish warnings (bug#20556).
26103 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
26105         * test/automated/sgml-mode-tests.el: New file.
26107 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
26109         Improve handling of the first Git revision
26110         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
26111         there's no next entry, delete until the end of the buffer.
26112         (log-view-end-of-defun-1): Stop at eob.
26113         * lisp/vc/vc-annotate.el
26114         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
26115         when previous-revision is nil.
26116         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
26117         with `--' to avoid ambiguity.
26118         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
26119         returned revision string.
26120         (vc-git-annotate-time): Expect `^' before the first revision.
26121         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
26122         REV1 is nil, and REV2 is not.
26123         * lisp/vc/vc.el: Update the description of the `diff' function.
26125 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
26127         Allow checkdoc to be called in batch
26128         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
26129         is non-nil, echo the error with `warn'.
26130         How it can be used in -batch:
26131         (with-current-buffer (find-file "checkdoc.el")
26132           (checkdoc-current-buffer t))
26134 2015-05-18  Glenn Morris  <rgm@gnu.org>
26136         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
26138 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
26140         * admin/notes/unicode: New section "binary files".
26142         Change new etags test to use UTF-8 encoding
26143         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
26144         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
26145         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
26146         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
26147         * test/etags/html-src/softwarelibero.html:
26148         Switch to UTF-8 encoding.
26149         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
26150         Remove Makefile, as it's too incestuous to have the test input
26151         include the build procedure.
26152         (UTF8_LOCALE, UTF_ENCODING): New macros.
26153         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
26154         (check): Skip if not UTF-8.
26155         (.PHONY): New rule.
26156         (FRC): Remove, as superseded by .PHONY.  All uses removed.
26157         (regexfile): Prefer printf to echo when outputting oddball chars.
26158         (.PRECIOUS): Remove, as these files are not built.
26160         Rename 'foo-gzipped' to 'foo.gz'
26161         * test/automated/data/decompress/foo.gz:
26162         Rename from test/automated/data/decompress/foo-gzipped,
26163         to make it easier for other tools to tell that it's compressed.
26164         * test/automated/zlib-tests.el (zlib--decompress):
26165         Adjust to renamed file.
26167 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
26169         Set up default-directory
26170         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
26171         binding for `v'.
26172         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
26173         appropriate value for default-directory.
26175 2015-05-17  Samer Masterson  <samer@samertm.com>
26177         * lisp/eshell/em-term.el (eshell-term-sentinel):
26178         No-op by default, only kills term buffer if
26179         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
26180         (eshell-destroy-buffer-when-process-dies): New custom to preserve
26181         previous behavior.
26183         eshell: Introduce new buffer syntax
26184         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
26185         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
26186         needed (Bug#19319).
26187         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
26188         (eshell-get-target): Remove shorthand-specific code.
26189         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
26190         '#<buffer-name>'.
26192 2015-05-17  Jan D  <jan.h.d@swipnet.se>
26194         Merge branch 'master' into cairo
26196 2015-04-26  Jan D  <jan.h.d@swipnet.se>
26198         Merge branch 'master' into cairo
26200         Add PBM support for cairo
26201         * src/image.c (xcolor_to_argb32): New function.
26202         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
26203         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
26204         XImagePtr if ! USE_CAIRO.
26205         (pbm_load): Add cairo support.
26207 2015-04-12  Jan D  <jan.h.d@swipnet.se>
26209         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
26210         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
26211         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
26212         x_free_cr_resources.
26214         Handle specified bg in images.  Use generic libpng code for PNGs.
26215         * src/image.c (get_spec_bg_or_alpha_as_argb)
26216         (create_cairo_image_surface): New functions when USE_CAIRO.
26217         (xpm_load): Call the above functions.  Handle XPM without mask
26218         when USE_CAIRO.
26219         (png_load_body): Handle USE_CAIRO case.
26220         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
26221         instead.
26222         (jpeg_load_body): Call create_cairo_image_surface.
26223         (gif_load, svg_load_image): Handle specified background, call
26224         create_cairo_image_surface.
26225         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
26227 2015-04-11  Jan D  <jan.h.d@swipnet.se>
26229         Support GIF and TIFF with cairo
26230         * configure.ac: Allow jpeg with cairo.
26231         Allow tiff and gif with cairo.
26232         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
26233         (tiff_load): Create cairo image surface if USE_CAIRO.
26234         (gif_load): Ditto.
26236         Support JPEG with USE_CAIRO
26237         * configure.ac: Allow jpeg with cairo.
26238         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
26240 2015-04-05  Jan D  <jan.h.d@swipnet.se>
26242         Support RSVG and cairo
26243         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
26244         * src/dispextern.h (struct image): Add cr_data2 if cairo.
26245         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
26246         (x_clear_image): Free cr_data and cr_data2 if set.
26247         (xpm_load): Assign data to cr_data2.
26248         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
26250 2015-04-03  Jan D  <jan.h.d@swipnet.se>
26252         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
26253         * configure.ac (HAVE_RSVG): Move after cairo.
26254         (USE_CAIRO): Disable rsvg, don't disable Xpm.
26255         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
26256         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
26257         don't return early.
26258         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
26259         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
26260         and create a surface.
26262         Tool tips for menus did not show any text.
26263         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
26264         tip frames, the geometry may be wrong.
26266         Merge branch 'master' into cairo, fixes tooltips not shown.
26268         Merge branch 'master' into cairo
26270         Add CAIRO_CFLAGS to lwlib/Makefile.in
26271         * Makefile.in (CAIRO_CFLAGS): Add.
26273 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
26275         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
26277 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
26279         Draw outermost line using black relief and erase corners also for cairo.
26280         * src/xterm.c [USE_CAIRO]: Include math.h.
26281         (enum corners) [USE_CAIRO]: New enum.
26282         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
26283         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
26284         than 1, draw the outermost line using the black relief.
26286         * src/xterm.c (x_fill_trapezoid_for_relief):
26287         Remove unnecessary cairo_close_path.
26289 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
26291         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
26293         * src/xterm.c (x_draw_stretch_glyph_string):
26294         Call x_reset_clip_rectangles instead of XSetClipMask.
26296         Use int instead of unsigned int for width and height args.
26297         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
26298         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
26299         width and height args.
26301         Modernize k&r cairo-related function declarations.
26302         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
26303         (xg_print_frames_dialog): Modernize k&r declarations.
26304         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
26305         (Fx_print_frames_dialog): Modernize k&r declarations.
26306         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
26307         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
26308         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
26309         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
26310         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
26311         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
26312         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
26313         (x_clear_area): Modernize k&r declarations.
26315         Implement wave-style variant of underlining for cairo.
26316         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
26317         (x_draw_underwave) [USE_CAIRO]: Use it.
26319         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
26320         instead of XFillRectangle.
26322 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
26324         Fix fringe bitmap initialization for cairo
26325         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
26326         data for cairo image surface.
26327         * src/xterm.c (x_cr_define_fringe_bitmap):
26328         Call cairo_surface_mark_dirty.
26330 2015-02-11  Jan D  <jan.h.d@swipnet.se>
26332         Add cairo drawing
26333         * configure.ac (with-cairo): New option.
26334         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
26335         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
26336         Output "Does Emacs use cairo?".
26337         * lisp/version.el (emacs-version): Add cairo version.
26338         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
26339         (FONT_OBJ): Add comment about ftcrfont.
26340         (ALL_CFLAGS): Add CAIRO_CFLAGS.
26341         (LIBES): Add CAIRO_LIBS.
26342         * src/dispextern.h (struct image): Add cr_data for cairo.
26343         (x_cr_init_fringe): Declare.
26344         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
26345         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
26346         * src/fringe.c (x_cr_init_fringe): New function name that shares code
26347         with w32_init_fringe.
26348         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
26349         * src/ftfont.c (ftfont_info_size); New global variable.
26350         (ftfont_open2): New extern function almost the same as old ftfont_open,
26351         but takes the font_object as argument.
26352         (ftfont_open): Build font object and call ftfont_open2.
26353         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
26354         * src/gtkutil.c (xg_clear_under_internal_border)
26355         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
26356         Only queue_draw if not cairo.  Change args to x_clear_area.
26357         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
26358         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
26359         (xg_print_frames_dialog): New functions for printing.
26360         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
26361         (xg_print_frames_dialog): Declare.
26362         * src/image.c: Add defined (USE_CAIRO) for PNG.
26363         Add !defined USE_CAIRO for W32 PNG code.
26364         (x_clear_image): If cairo, destroy the surface in cr_data.
26365         (png_load): Add new cairo compatible implementation.
26366         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
26367         * src/xfns.c: New section Printing.
26368         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
26369         (x-print-frames-dialog): New printing functions.
26370         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
26371         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
26372         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
26373         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
26374         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
26375         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
26376         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
26377         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
26378         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
26379         Declare.
26380         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
26381         (max_fringe_bmp, fringe_bmp): New variables.
26382         (x_gc_get_ext_data, x_extension_initialize)
26383         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
26384         (x_set_cr_source_with_gc_foreground)
26385         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
26386         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
26387         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
26388         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
26389         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
26390         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
26391         (x_update_begin): Create cairo surface if needed.
26392         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
26393         (x_update_end): Paint cairo drawing surface to xlib surface.
26394         (x_clear_under_internal_border, x_after_update_window_line): Adjust
26395         arguments to x_clear_area.
26396         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
26397         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
26398         of XSetClipMask.
26399         (x_set_glyph_string_clipping)
26400         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
26401         instead of XSetClipRectangles.
26402         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
26403         Use x_fill_rectangle instead of XFillRectangle.
26404         (x_draw_glyph_string_foreground)
26405         (x_draw_composite_glyph_string_foreground)
26406         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
26407         instead of XDrawRectangle.
26408         (x_draw_relief_rect): Add code for USE_CAIRO.
26409         Call x_reset_clip_rectangles instead of XSetClipMask.
26410         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
26411         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
26412         instead of XSetClipMask.
26413         (x_draw_image_foreground, x_draw_image_foreground_1):
26414         x_draw_rectangle instead of XDrawRectangle.
26415         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
26416         XFillRectangle.
26417         (x_draw_image_glyph_string): If img has cr_data, use it as
26418         a cairo surface.
26419         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
26420         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
26421         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
26422         x_reset_clip_rectangles instead of XSetClipMask.
26423         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
26424         (x_clear_area1): New function that calls XClearArea.
26425         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
26426         non-cairo.
26427         (x_clear_frame): x_clear_window instead of XClearWindow.
26428         (x_scroll_run): Set frame garbaged if cairo.
26429         (XTmouse_position): Initialize *part to 0.
26430         (x_scroll_bar_create): Adjust arguments to x_clear_area.
26431         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
26432         x_fill_rectangle instead of XFillRectangle.
26433         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
26434         arguments to x_clear_area.
26435         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
26436         (handle_one_xevent): Adjust arguments to x_clear_area.
26437         Destroy cairo surface for frame if ConfigureNotify.
26438         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
26439         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
26440         x_reset_clip_rectangles instead of XSetClipMask.
26441         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
26442         x_reset_clip_rectangles instead of XSetClipMask.
26443         (x_clear_frame_area): Adjust arguments to x_clear_area.
26444         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
26445         (x_term_init): Call x_extension_initialize if cairo.
26446         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
26447         x_cr_destroy_fringe_bitmap for cairo.
26448         (x_initialize): Call x_cr_init_fringe for cairo.
26449         * src/xterm.h: Add include of cairo header files.
26450         (x_bitmap_record): Add img if cairo.
26451         (x_gc_ext_data): New struct for cairo.
26452         (x_display_info): Add ext_codes for cairo.
26453         (x_output): Add cr_context and cr_surface for cairo.
26454         (x_clear_area): Change arguments from Display*/Window to frame pointer.
26455         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
26456         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
26457         (x_cr_draw_frame, x_cr_export_frames): Declare.
26459 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
26461         Fix integer-valued `mouse-highlight' (Bug#20590)
26462         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
26464 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
26466         MS-Windows followup for ASCIIfication of curved quotes
26467         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
26468         test for curved quotes being displayable, after switching the
26469         terminal encoding.  (Bug#20545)
26471 2015-05-17  Jan D  <jan.h.d@swipnet.se>
26473         Add comment that x_shift_glyphs_for_insert is never called
26474         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
26475         Add comment that this function is never called.
26477 2015-05-16  Glenn Morris  <rgm@gnu.org>
26479         * src/lisp.mk: Remove from repository and generate at build-time.
26480         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
26481         (shortlisp_filter): New variable.
26482         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
26483         (distclean): Remove lisp.mk.
26484         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
26485         * lisp/loadup.el: Tweak layout to make it easier to parse.
26486         * make-dist: Do not distribute src/lisp.mk.
26488 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
26490         Display shorter dates in Git annotate output
26491         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
26492         format (when not overridden with vc-git-annotate-switches).
26493         (vc-git-annotate-time): Support the short format, as well as ISO
26494         8601 that has been used until now (bug#5428).
26496 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
26498         ASCIIfy curved quotes on displays lacking them
26499         * lisp/international/mule-cmds.el (set-locale-environment):
26500         If curved quotes don't work, display straight ASCII approximations
26501         (Bug#20545).
26503 2015-05-16  Glenn Morris  <rgm@gnu.org>
26505         Small src/Makefile simplification
26506         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
26507         * src/Makefile.in (lisp): Derive from shortlisp.
26508         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
26510 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
26512         * lisp/help-mode.el (help-go-forward): Doc fix.
26513         (Bug#20577)
26515         * doc/lispref/debugging.texi (Profiling): Improve indexing.
26516         (Bug#20576)
26518 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
26520         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
26521         have one fewer `not'.
26523         * lisp/vc/vc-git.el (vc-git-diff-switches)
26524         (vc-git-annotate-switches, vc-git-resolve-conflicts)
26525         (vc-git-program, vc-git-root-log-format): Remove the redundant
26526         :group declarations.
26528 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
26530         Removes the predicate from lisp-complete-symbol (Bug#20456)
26531         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
26532         and remove it from the docstring.
26534 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
26536         Add new option vc-git-resolve-conflicts
26537         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
26538         (vc-git-find-file-hook): Add to after-save-hook only when the
26539         above is non-nil.
26540         (vc-git-resolve-when-done): Update to honor the new variable.
26541         (Bug#20292)
26543 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
26545         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
26546         (tabulated-list-init-header): Document new behavior.
26547         (tabulated-list-print-fake-header): Do nothing if
26548         `tabulated-list--header-string' is nil.
26549         (tabulated-list--header-string): Add a docstring.
26550         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
26551         * etc/NEWS: Document it.
26553 2015-05-15  Leo Liu  <sdl.web@gmail.com>
26555         Revert "Fix cps--gensym"
26556         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
26557         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
26559 2015-05-15  Glenn Morris  <rgm@gnu.org>
26561         Replace AC_SUBST_FILE in configure with include in Makefiles
26562         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
26563         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
26564         (AUTO_DEPEND): New output variable.
26565         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
26566         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
26567         (lwlib_deps_frag): Replace by conditional include.
26568         * lwlib/autodeps.mk: Remove file.
26569         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
26570         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
26571         (oldxmenu_deps_frag): Replace by conditional include.
26572         * oldXMenu/autodeps.mk: Remove file.
26573         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
26574         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
26575         (lisp_frag): Replace by an include.
26576         (deps_frag): Replace by conditional include.
26577         * src/autodeps.mk: Remove file.
26579         Tweak japanese.el's loading of dependencies
26580         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
26581         * lisp/language/japanese.el: Use require rather than load.
26582         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
26583         Provide a feature.
26584         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
26585         Provide a feature in the generated file.
26587 2015-05-15  Jan D  <jan.h.d@swipnet.se>
26589         Fix NS warnings
26590         * src/nsmenu.m (ns_popup_dialog)
26591         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
26592         * src/nsfns.m (Fx_create_frame): Remove unused variables.
26593         (Fns_read_file_name): Initialize fname, remove ret.
26594         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
26595         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
26596         Remove unused variable.
26597         (init): Add parantesis in if.
26598         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
26600 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
26602         Fix a enum conversion warning in macfont.m
26603         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
26604         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
26606 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
26608         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
26609         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
26611 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
26613         * lisp/cus-start.el: Add ns-confirm-quit.
26615         Fix warnings on OSX 10.10
26616         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
26617         OSX versions.
26618         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
26619         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
26620         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
26621         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
26622         setScalesWhenResized for OSX < 10.6.
26623         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
26624         * src/nsterm.m (ns_copy_bits): New function that does not use
26625         deprecated NSCopyBits.
26626         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
26627         (runAlertPanel): New function.
26628         (applicationShouldTerminate:): Call runAlertPanel.
26629         (initFrameFromEmacs, toggleFullScreen:): Only call
26630         useOptimizedDrawing for OSX < 10.10.
26631         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
26632         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
26633         (draggingEntered:): Returns NSDragOperation.
26634         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
26636 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
26638         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
26639         (package--init-file-ensured): New variable.
26640         (package-initialize, package--ensure-init-file): Use it.
26642 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
26644         Honor :fore/background for XBM on NS (Bug#14969)
26645         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
26646         initFromXBM takes bg, fg args, remove flip arg.
26647         (ns_image_from_XBM): Add bg, fg args.
26648         * src/image.c (x_create_bitmap_from_data)
26649         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
26650         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
26651         initFromXBM.  Remove flip arg.
26652         (initFromSkipXBM): Move code to initFromXBM.
26653         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
26654         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
26655         always false.
26656         Remove bit flipping (bitPat, swt), generated incorrect images when
26657         width/height wasn't a multiple of 8.
26658         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
26659         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
26660         remove flip arg.
26662 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
26664         * lisp/emacs-lisp/package.el: Be more careful with the init file.
26665         (package--ensure-init-file): Check that user-init-file is set,
26666         exists, is readable, and is writable.  (Bug#20584)
26667         Also expand the docstring.
26669 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
26671         Sync with upstream verilog-mode revision 6232468
26672         * lisp/progmodes/verilog-mode.el
26673         (verilog-font-lock-grouping-keywords-face)
26674         (verilog-highlight-grouping-keywords): Fix use of face when
26675         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
26676         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
26677         parent is reset, bug906.  Reported by Ken Schmidt.
26678         (verilog-auto-inout-module): Add fourth regexp argument to
26679         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
26680         Reported by John Tillema.
26681         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
26682         modport if signal attachment is itself a modport.  Reported by
26683         Matthew Lovell.
26684         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
26685         always_comb and always_latch, bug844.  Reported by Greg Hilton.
26686         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
26687         with many curly-bracket pairs, bug663.
26688         (verilog-set-auto-endcomments): Fix end comments for functions of
26689         type void, etc.  Reported by Alex Reed.
26690         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
26691         caused by indent-line-to deleting tabls pre 24.5.
26692         (verilog-nameable-item-re): Fix nameable items that can have an
26693         end-identifier to include endchecker, endgroup, endprogram,
26694         endproperty, and endsequence.  Reported by Alex Reed.
26695         (verilog-label-be): When auto-commenting a buffer, consider
26696         auto-comments on all known keywords (not just a subset thereof).
26697         Reported by Alex Reed.
26698         (verilog-auto-end-comment-lines-re)
26699         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
26700         Automatically comment property/endproperty blocks to match other
26701         similar blocks like sequence/endsequence, function/endfunction, etc.
26702         Reported by Alex Reed.
26703         (verilog-set-auto-endcomments): Detect the function- or task-name
26704         when auto-commenting blocks that lack an explicit portlist.
26705         Reported by Alex Reed.
26706         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
26707         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
26708         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
26709         is nil, fix indenting initial/final to match always statements,
26710         bug825.  Reported by Tim Clapp.
26711         (verilog-extended-complete-re): Fix indentation of DPI-C imports
26712         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
26713         Mao and Jason Forkey.
26714         (verilog-read-decls): Fix parsing typed interfaces.  Fix
26715         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
26716         Fix localparam not being ignored in AUTOINSTPARAM,
26717         bug889.  Reported by Shannon Hill.
26718         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
26719         bug793.  Reported by Pierre-David Pfister.
26720         (verilog-auto-arg-format, verilog-auto-arg-ports):
26721         Add verilog-auto-arg-format to support newlines in AUTOARG.
26722         Reported by Jie Xiao.
26723         (verilog-batch-execute-func): Do not batch re-auto files loaded by
26724         Local Variables.  Fix printing "no changes to be saved" with
26725         verilog-batch.  Reported by Dan Dever.
26726         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
26727         interface-only modules, bug721.  Reported by Dean Hoyt.
26728         Author: Alex Reed <acreed4@gmail.com>
26729         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
26730         Don't treat '<keyword>:<identifier>' as the start of a labeled
26731         statement, bug905.  Reported by Enzo Chi.
26732         (verilog-directive-re, verilog-compiler-directives)
26733         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
26734         directives (plus some extras) when determining indentation, bug
26735         901.  Reported by Bernd Beuster.
26736         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
26737         iff expression doesn't start with word-character, bug900.
26738         (verilog-optional-signed-range-re, verilog-optional-signed-re):
26739         Fix incorrect indentation/alignment of unsigned declarations,
26740         bug897.
26741         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
26742         always constructs, bug895.
26743         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
26744         Reported by Eric Mastromarchi.
26745         (verilog-beg-of-statement): Fix indenting for some forms of
26746         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
26747         continued assignment incorrect if first line ends with ']', bug437.
26748         Reported by Dan Dever.  Fix indention of cover inside an
26749         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
26750         blocks, bug842.
26751         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
26752         Reported by Kaushal Modi.
26753         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
26754         (verilog-backward-token): Fix indenting sensitivity lists with
26755         named events, bug840.  Reed.
26756         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
26757         nil not honoring 'forever', 'foreach', and 'do' keywords.
26759 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
26761         Check for invalid GTK+ monitor scales
26762         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
26763         INT_MAX for too-large scales.  All callers changed to assume the
26764         result is valid (Bug#20432).
26765         (xg_frame_set_char_size, xg_update_scrollbar_pos):
26766         Calculate scale only if needed.
26767         Show ASCII approximations instead.
26769 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
26771         Fix daemon crashes when linum-mode is turned on early on
26772         * src/window.c (Fwindow_end): Don't try calling display engine
26773         functions on initial-frame frame.  (Bug#20565)
26775         Fix selective diff browsing in Ediff
26776         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
26777         Go to the beginning of the region before searching for the
26778         ediff-regexp-focus-* regexps.  (Bug#20568)
26780 2015-05-14  Jan D  <jan.h.d@swipnet.se>
26782         Fixes bug#20142
26783         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
26784         arrive in the main loop, even for Gtk 3 (Bug#20142).
26786         Don't access display after i/o error (Bug#19147).
26787         * src/xterm.c (x_connection_closed): Add third arg ioerror.
26788         If ioerror, set display to 0 (Bug#19147).
26789         (x_error_quitter): Call x_connection_closed with third arg false.
26790         (x_io_error_quitter): Call x_connection_closed with third arg true.
26792         Handle GTK_SCALE, fixes Bug#20432.
26793         * src/gtkutil.c (xg_get_gdk_scale): New function.
26794         (xg_frame_set_char_size)
26795         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
26796         (xg_get_default_scrollbar_height)
26797         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
26798         when setting sizes (Bug#20432).
26800 2015-05-13  Leo Liu  <sdl.web@gmail.com>
26802         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
26804 2015-05-13  Glenn Morris  <rgm@gnu.org>
26806         Fix bootstrap (void function cl-member).
26807         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
26808         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
26810 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
26812         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
26813         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
26814         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
26815         Avoid defalias for closures which are not immutable.
26816         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
26817         the dispatchers table with various entries.
26818         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
26819         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
26821 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
26823         Improve tagging of C bindings in DEFVAR_*
26824         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
26825         from DEFVAR_*.
26827 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
26829         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
26831 2015-05-12  Glenn Morris  <rgm@gnu.org>
26833         * lisp/progmodes/tcl.el (tcl-filter):
26834         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
26836         Add basic VC push support
26837         * lisp/vc/vc.el (vc-push): New autoloaded command.
26838         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
26839         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
26840         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
26841         (vc-bzr-push): New.
26842         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
26843         (vc-git-pull): Reimplement using vc-git--pushpull.
26844         (vc-git-push): New.
26845         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
26846         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
26847         * doc/emacs/maintaining.texi (Pulling / Pushing):
26848         Rename from "VC Pull".  Mention pushing.
26849         (VC With A Merging VCS, VC Change Log): Update xrefs.
26850         (Branches): Update menu.
26851         * doc/emacs/emacs.texi: Update menu.
26852         * etc/NEWS: Mention this.
26854 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
26856         Improve the seq pcase pattern and the `seq-let' macro
26857         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
26858         object is a sequence, and binds each element of ARGS to the
26859         corresponding element of the sequence.
26861 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
26863         Fix tags created from DEFVAR_* declarations in C
26864         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
26865         to make tags extracted from DEFVAR_* declarations more accurate.
26867         Add a test suite for etags
26868         * test/etags/: New test suite, adapted from
26869         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
26870         whose original author is Francesco Potortì <pot@gnu.org>.
26872         Fix tagging of symbols in C enumerations
26873         * lib-src/etags.c (consider_token): Don't tag symbols in
26874         expressions that assign values to enum constants.  See
26875         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
26876         for details.
26877         (C_entries): Reset fvdef to fvnone after processing a preprocessor
26878         conditional and after a comma outside of parentheses.
26880 2015-05-12  Glenn Morris  <rgm@gnu.org>
26882         * lisp/url/url-handlers.el (url-file-name-completion)
26883         (url-file-name-all-completions): Silence compiler.
26885         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
26887         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
26889 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
26891         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
26892         (cl--generic-mandatory-args): Remove.
26893         (cl--generic-split-args): New function.
26894         (cl-generic-define, cl--generic-lambda): Use it.
26895         (cl-generic-define-method): Use it as well, and add support for
26896         context args.
26897         (cl--generic-get-dispatcher): Handle &context dispatch.
26898         (cl--generic-cache-miss): `dispatch-arg' can now be a
26899         context expression.
26900         (cl--generic-dispatchers): Pre-fill.
26901         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
26902         New test.
26904 2015-05-11  Glenn Morris  <rgm@gnu.org>
26906         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
26908 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
26910         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
26911         * lisp/term/rxvt.el: Require term/xterm.
26912         (rxvt-function-map): Use xterm-rxvt-function-map.
26913         (rxvt-standard-colors): Move before first use.
26914         (terminal-init-rxvt): Use xterm--push-map and
26915         xterm-register-default-colors.
26916         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
26917         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
26918         Move shared bindings between rxvt and xterm to it.
26919         (xterm-function-map): Use it.  Move the xterm-paste binding to
26920         xterm-rxvt-function-map (bug#20444).
26921         (xterm-standard-colors): Move before first use.
26922         (xterm--push-map): New function.
26923         (xterm-register-default-colors): Take standard colors as argument.
26924         (terminal-init-xterm): Use it.  Adjust call to
26925         xterm-register-default-colors.
26927 2015-05-11  Glenn Morris  <rgm@gnu.org>
26929         * lisp/term/x-win.el: Quieten --without-x compilation.
26930         (x-own-selection-internal, x-disown-selection-internal)
26931         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
26932         Declare.
26934         * Makefile.in (emacslog): Remove srcdir.
26935         (ChangeLog): Update for the above.
26937 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26939         python.el: better limit for looking-back calls
26940         * lisp/progmodes/python.el (python-shell-accept-process-output):
26941         Use last comint prompt start as limit for looking-back.
26943 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
26945         CEDET (srecode-insert-fcn): Fix use of oref on a class
26946         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
26947         on a class.  Reported by Pierre Lorenzon.
26948         (srecode-template-inserter-point): Remove declaration.
26950         CEDET (srecode-create-dictionary): Avoid obsolete object name
26951         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
26952         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
26954 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
26956         C-x 8 shorthands for curved quotes, Euro, etc.
26957         Although C-x 8 lets you insert arbitrary Unicode characters,
26958         it's awkward to use this to insert commonly used symbols such as curved
26959         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
26960         characters commonly found in English text and in basic math.
26961         For example, assuming the Alt key works on your keyboard and iso-transl
26962         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
26963         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
26964         (Bug#20499)
26965         * doc/emacs/mule.texi (Unibyte Mode):
26966         A few other printing characters now work too.
26967         * etc/NEWS: Document this.
26968         * lisp/international/iso-transl.el (iso-transl-char-map):
26969         Also support the following characters:
26970         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
26972 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
26974         Add xref-find-regexp
26975         * lisp/progmodes/xref.el (xref-find-function): Describe the
26976         `matches' action.
26977         (xref-find-regexp): New command, using it.
26978         (xref-collect-references): Rename to xref-collect-matches.
26979         (xref--collect-reference): Rename to xref--collect-match.
26980         (xref-collect-matches, xref--collect-match): Accept new argument,
26981         KIND.  Update accordingly.
26982         (xref--regexp-to-extended): New function.
26983         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
26984         `matches' action.
26985         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
26986         * lisp/progmodes/etags.el (etags-xref-find):
26987         Support the `matches' action.
26988         (etags--xref-find-matches): New function.
26990 2015-05-10  Glenn Morris  <rgm@gnu.org>
26992         * Makefile.in: Fixes for recent change-history changes.
26993         (change-history-nocommit): Update footer regexp.
26994         Ensure output script stays executable.
26996 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
26998         New version of `seq-let' based on a pcase pattern
26999         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
27000         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
27002 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
27004         Add basic HTML5 tags and a template
27005         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
27006         (html-tag-alist): Add HTML5 tags.
27007         (html-tag-help): Add new tags descriptions.
27008         (html-navigational-links): Template for nav links.
27009         (html-html5-template): Template for a HTML5 page.
27011 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
27013         semantic/symref/grep: Don't use word boundaries
27014         * lisp/cedet/semantic/symref/grep.el
27015         (semantic-symref-perform-search): Instead of wrapping input in
27016         word boundaries, check that the characters before and after are
27017         not word constituents.
27019         semantic/symref/grep: Support regexp search
27020         * lisp/cedet/semantic/symref.el
27021         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
27022         the search type is regexp.
27023         * lisp/cedet/semantic/symref/grep.el
27024         (semantic-symref-perform-search): Support the regexp search type.
27025         Pass -E to Grep when it's used.
27027         semantic-symref-regexp: Allow to input an arbitrary string
27028         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
27029         Allow to input an arbitrary string interactively.
27031         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
27032         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
27033         Remove tag-symbol-match-p from the default value
27034         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
27036         Declare find-tag obsolete
27037         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
27038         xref-find-definitions.
27040 2015-05-10  Jan D  <jan.h.d@swipnet.se>
27042         Draw composite string correctly (Bug#20537)
27043         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
27044         New function.
27045         (ns_draw_glyph_string): Call it.
27047 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
27049         Avoid infloop in ERC
27050         * lisp/simple.el (line-move-to-column): Ignore field boundaries
27051         while computing line beginning position.  (Bug#20498)
27053 2015-05-08  Glenn Morris  <rgm@gnu.org>
27055         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
27056         * build-aux/gitlog-to-emacslog: Check called from right directory.
27057         (srcprefix): Remove.
27059         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
27060         * Makefile.in (ChangeLog): No longer pass "distprefix".
27061         * make-dist: Update "make ChangeLog" syntax for the above change.
27063         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
27064         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
27066         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
27068         Add command-line option-parsing to gitlog-to-emacslog
27069         * build-aux/gitlog-to-emacslog: Add command-line options.
27070         By default, refuse to remove an existing output file.
27071         * Makefile.in (CHANGELOG): Update default.
27072         (ChangeLog): Do not test for existing file.
27073         (change-history-nocommit): Ensure temp file does not exist.
27075         Quieten --without-x compilation
27076         * lisp/term/common-win.el: Provide a feature.
27077         * lisp/term/x-win.el (term/common-win): Require it.
27079         * lisp/dired-aux.el (dired-do-print): Require lpr.
27081         Quieten compilation, eg in --without-x builds
27082         * lisp/dired-aux.el (lpr-printer-switch):
27083         * lisp/frame.el (tool-bar-height):
27084         * lisp/linum.el (font-info):
27085         * lisp/window.el (font-info, overflow-newline-into-fringe)
27086         (tool-bar-height):
27087         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
27088         * lisp/gnus/gnus-util.el (iswitchb-mode):
27089         * lisp/mail/rmailmm.el (libxml-parse-html-region):
27090         * lisp/net/nsm.el (gnutls-peer-status)
27091         (gnutls-peer-status-warning-describe):
27092         * lisp/net/shr.el (libxml-parse-xml-region):
27093         * lisp/url/url-http.el (gnutls-peer-status): Declare.
27095 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
27097         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
27098         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
27099         `subclass' since they're never called with a class.
27100         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
27101         srecode-dictionary-child-p.
27103 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
27105         * lisp/help.el (help--binding-locus): Document argument POSITION.
27106         (Bug#20530)
27108 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
27110         Merge from gnulib
27111         * doc/misc/texinfo.tex: Get latest version.
27113 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
27115         ffap.el (ffap-read-file-or-url): Fix completing-read call
27116         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
27117         `completing-read' should be a symbol.
27119 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
27121         Verify file modifications by other programs
27122         * src/filelock.c (lock_file): Check whether the file was modified
27123         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
27125         Fix keyboard macros that include function keys
27126         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
27127         keys in the macro before returning.  (Bug#20454)
27129 2015-05-08  Glenn Morris  <rgm@gnu.org>
27131         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
27132         "Copyright-paperwork-exempt".  (Bug#20324)
27134         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
27135         (log-edit-rewrite-tiny-change): New variable.
27136         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
27137         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
27138         * etc/NEWS: Mention this.
27140         * lisp/calc/calc.el (math-zerop): Declare.
27142         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
27144 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
27146         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
27147         Support the case when BINDINGS is a single tuple.  (Bug#20525)
27149         * etc/NEWS: Fix typo in previous commit
27150         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
27152 2015-05-07  Jan D  <jan.h.d@swipnet.se>
27154         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
27155         Output URL to Gtk+ bug (Bug#20452).
27157         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
27159 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
27161         * lisp/emacs-lisp/package.el: New "external" package status.
27162         An external package is any installed package that's not built-in
27163         and not from `package-user-dir', which usually means it's from an
27164         entry in `package-directory-list'.  They are treated much like
27165         built-in packages, in that they cannot be through the Package Menu
27166         deleted and are not considered for upgrades.
27167         (package-desc-status): Identify if a package is installed outside
27168         `package-user-dir'.
27169         (package-menu--print-info-simple)
27170         (package-menu--status-predicate): Add support for it.
27171         * etc/NEWS: Document it.
27173 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
27175         * lisp/mail/rmail.el: Use lexical-binding.
27176         (rmail-bury): Remove unused var `buffer-to-bury'.
27177         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
27178         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
27179         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
27180         (rmail-insert-inbox-text): Remove unused var `movemail'.
27181         (rmail-add-mbox-headers): Remove unused var `limit'.
27182         (rmail-undelete-previous-message): Remove unused var `value'.
27183         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
27184         `resent-reply-to'.
27185         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
27186         (rmail-restore-desktop-buffer): Rename arguments.
27188 2015-05-06  Glenn Morris  <rgm@gnu.org>
27190         * Makefile.in (change-history-commit): Add missing piece of previous.
27192         Avoid unnecessary bumping of Makefile.in's timestamp
27193         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
27194         (emacslog): New variable.
27195         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
27196         (unchanged-history-files): Use $emacslog rather than Makefile.in.
27197         (change-history-nocommit): Store hash in $emacslog.
27198         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
27199         * admin/update_autogen (changelog_files): Update for the above.
27201         * Makefile.in: Don't always insist on removing existing "ChangeLog".
27202         (CHANGELOG): New variable.
27203         (no-ChangeLog): Remove.
27204         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
27205         (change-history-nocommit): Use a temp file rather than insisting
27206         on deletion of any existing "ChangeLog".
27208         * build-aux/gitlog-to-emacslog: Allow specification of output.
27210         * admin/update_autogen: Add option to update ChangeLog.
27211         (usage): Mention -H.
27212         (changelog_flag, changelog_n, changelog_files): New variables.
27213         (main): Check for -H, and maybe run change-history-nocommit.
27215 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
27217         * lisp/subr.el (delete-dups): Pre-size the hashtable.
27219         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
27220         cl--arglist-args is defined (bug#20517).
27222 2015-05-06  Glenn Morris  <rgm@gnu.org>
27224         * Makefile.in (change-history-nocommit): New.
27226 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
27228         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
27229         timer when it is non-nil
27230         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
27232 2015-05-06  Glenn Morris  <rgm@gnu.org>
27234         Quieten CEDET compilation
27235         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
27236         Invert fboundp test to quieten on current Emacs.
27237         * lisp/cedet/ede/config.el (ede-shell-run-something)
27238         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
27239         (semanticdb-refresh-table): Declare.
27240         (ede-preprocessor-map): Require semantic/db.
27242         Quieten cc-mode compilation
27243         * lisp/progmodes/cc-awk.el (c-forward-sws):
27244         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
27245         Declare.
27247 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
27249         * lisp/subr.el (delete-dups): Avoid nreverse.
27251 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
27253         * lisp/subr.el (delete-dups): Make it destructive again.
27255 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
27257         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
27259 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
27261         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
27262         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
27263         (testcover--read): Rename from testcover-read.  Change calling
27264         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
27265         is gone.
27266         (testcover-start): Use add-function.  Move edebug-all-defs binding to
27267         testcover--read.
27268         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
27269         (testcover-mark): Remove unused var `item'.
27270         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
27272 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
27274         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
27275           use a hash table.  This can result in ~500 times speed-up for typical
27276           collections of size 5000, like that of `load-library'.
27278 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
27280         CEDET: Avoid `oref' on classes in a few more cases
27281         * lisp/cedet/ede/generic.el (ede-find-target):
27282         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
27283         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
27284         var `prefix'.
27286         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
27287         (grepflags, greppattern): Declare.
27288         (semantic-symref-perform-search): Remove unused var `pat'.
27290         CEDET (srecode-compile-inserter): Avoid `oref' on classes
27291         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
27292         Avoid `oref' on classes (bug#20491).
27293         (srecode-compile-split-code): Remove unused var `key'.
27295 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
27297         Clean up pulse.el a little
27298         * lisp/cedet/pulse.el (pulse): Remove.
27299         (pulse-momentary-timer): Save instead of the stop time.
27300         (pulse-momentary-highlight-overlay):
27301         Call pulse-momentary-unhighlight first thing.
27302         Treat pulse-momentary-overlay as a single value, not a list.
27303         Save the created timer.  Only pass the stop time to the timer.
27304         (pulse-tick): Update accordingly.
27305         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
27306         single value.  Cancel the timer.
27308 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
27310         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
27311         Support the biblatex journaltitle field.
27313 2015-05-05  Glenn Morris  <rgm@gnu.org>
27315         Minor declare-function improvement
27316         * lisp/emacs-lisp/bytecomp.el
27317         (byte-compile-macroexpand-declare-function):
27318         Handle declarations after calls.  (Bug#20509)
27320         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
27322         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
27324 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
27326         Pulse using a timer
27327         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
27328         (pulse-momentary-highlight-overlay): Set up the timer instead of
27329         calling `pulse'
27330         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
27331         (pulse-tick): New function.
27332         (pulse-momentary-unhighlight): Cut off the stop time.
27333         (pulse-delay): Update the docstring WRT to not using sit-for.
27335         Add semantic/symref/grep file patterns for ruby-mode
27336         * lisp/cedet/semantic/symref/grep.el
27337         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
27338         Clarify the docstring.
27340         Don't require match
27341         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
27342         match.  That doesn't work for every command, and some identifier
27343         completion tables are bound to be imperfect anyway.
27345 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
27347         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
27348         (semantic-grammar--template-expand): New function.
27349         (semantic-grammar-header, semantic-grammar-footer): Use it.
27350         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
27351         (semantic-grammar-file-regexp): Refine regexp.
27352         (semantic-grammar-eldoc-get-macro-docstring):
27353         Use elisp-get-fnsym-args-string when available.
27354         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
27355         instead of the old eldoc-* names.
27356         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
27357         from elisp-mode.el.  Tweak calling convention.
27358         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
27359         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
27360         elisp--get-fnsym-args-string.
27361         (elisp--highlight-function-argument): Add `prefix' arg.
27362         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
27363         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
27365 2015-05-05  Glenn Morris  <rgm@gnu.org>
27367         * lisp/help-fns.el (describe-function-1):
27368         Handle builtins with advertised calling conventions.  (Bug#20479)
27370 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
27372         Merge branch 'seq-let'
27374         Update `seq-let' documentation
27375         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
27376         with the support of  `&rest'.
27378         Add support for &rest in `seq-let'
27379         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
27380         in the argument list.
27381         * test/automated/seq-tests.el: Add a test for parsing and binding
27382         `&rest' in `seq-let'.
27384 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
27386         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
27387         Add missing increment (Bug#20467).
27388         (eieio-object-value-create): Adjust to new slots representation
27389         (Bug#20467).
27390         (eieio-object-value-create): Fix missed adjustment to new
27391         representation of slots metadata.
27393 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
27395         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
27397 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
27399         Work around "Attempt to modify read-only object"
27400         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
27401         elisp--xref-find-definitions, to work around "Attempt to modify
27402         read-only object" error.
27404         Only skip some variables that have function counterparts
27405         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
27406         Only skip minor-mode-named variable if it's defined in a Lisp
27407         file, and it's in minor-mode-list (bug#20506).
27408         * test/automated/elisp-mode-tests.el
27409         (elisp-xref-finds-both-function-and-variable)
27410         (elisp-xref-finds-only-function-for-minor-mode): New tests.
27412 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
27414         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
27415         previous change.
27416         (xref--insert-xrefs): Buttonize the whole line, including the
27417         number at the beginning.
27419         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
27420         Make sure we're inside the let bindings.
27421         * test/automated/elisp-mode-tests.el
27422         (elisp-completes-functions-after-let-bindings): New test.
27424 2015-05-04  Glenn Morris  <rgm@gnu.org>
27426         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
27427         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
27428         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
27429         Remove outdated declarations.
27431         Replace instances of "(eval-when-compile (autoload ...))"
27432         * lisp/gnus/gnus-art.el (nneething-get-file-name):
27433         Declare rather than autoload.
27434         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
27435         Remove pointless autoload.
27436         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
27437         (gnus-topic-create-topic, gnus-topic-enter-dribble):
27438         Declare rather than autoload.
27439         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
27440         (mailcap-extension-to-mime): Autoload at run-time.
27441         * lisp/gnus/mm-util.el (latin-unity-massage-name)
27442         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
27443         (latin-unity-representations-present-region):
27444         Declare rather than autoload.
27445         * lisp/gnus/mml-smime.el (epg-make-context)
27446         (epg-passphrase-callback-function): Autoload at run-time.
27447         (epg-context-set-signers, epg-context-result-for)
27448         (epg-new-signature-digest-algorithm)
27449         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
27450         (epg-sign-string, epg-encrypt-string)
27451         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
27452         (epg-configuration, epg-expand-group, epa-select-keys):
27453         Declare rather than autoload.
27454         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
27455         Autoload at run-time.
27456         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
27457         (gnus-registry-get-id-key, gnus-registry-action):
27458         Declare rather than autoload.
27459         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
27460         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
27461         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
27462         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
27463         (spam-stat-split-fancy): Remove pointless autoloads.
27464         * lisp/net/mairix.el: Load gnus-util when compiling.
27465         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
27466         (message-field-value): Declare rather than autoload.
27467         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
27468         Check gnus-alive-p is fbound.
27469         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
27470         (vm-check-for-killed-summary, vm-error-if-folder-empty)
27471         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
27472         Declare rather than autoload.
27474         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
27476         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
27477         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
27479         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
27481         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
27483         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
27484         * lisp/emacs-lisp/package.el (epg-signature-status):
27485         Fix declarations.
27487         * lisp/play/gametree.el (gametree-show-children-and-entry)
27488         (gametree-apply-layout, gametree-mouse-show-subtree)
27489         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
27491         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
27492         Handle cl-defgeneric, cl-defmethod.
27494 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
27496         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
27497         Highlight both type and symbol name.
27499         Insert, highlight and align line numbers in xref output
27500         * lisp/progmodes/etags.el (xref-location-line): Specialize for
27501         xref-etags-location.
27502         * lisp/progmodes/xref.el (xref-location-line): New generic method.
27503         (xref-file-location): Add reader for the line slot.
27504         (xref--location-at-point): Skip to the `xref-location' property.
27505         (xref--collect-reference): Drop the line number from description.
27506         (xref--insert-xrefs): Insert, highlight and align line numbers.
27508 2015-05-04  Daniel Colascione  <dancol@dancol.org>
27510         * lisp/simple.el (save-mark-and-excursion--save)
27511         (save-mark-and-excursion--restore): Fix previous commit
27512         (255a011f0ecf004b31c59945b10154b10fac3af1).
27514 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
27516         Don't pulse the indentation, or the newline
27517         * lisp/cedet/pulse.el (pulse-lighten-highlight)
27518         (pulse-reset-face): Fall back to the inherited background
27519         attribute in FACE.
27520         (pulse-momentary-highlight-region): Add autoload cookie.
27521         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
27522         indentation, or the newline, if the line's non-empty
27523         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
27525 2015-05-04  Daniel Colascione  <dancol@dancol.org>
27527         Add `save-mark-and-excursion', which has the old
27528         `save-excursion' behavior
27529         * doc/lispref/positions.texi (Excursions):
27530         Document `save-mark-and-excursion'.
27531         * lisp/font-lock.el (font-lock-fontify-block):
27532         Use `save-mark-and-excursion' instead of `save-excursion',
27533         restoring Emacs 24 behavior.
27534         * lisp/simple.el (save-mark-and-excursion--save)
27535         (save-mark-and-excursion--restore): New functions.
27536         (save-mark-and-excursion): New user macro.
27537         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
27538         in `save-excursion' documentation.
27540 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
27542         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
27543         Classify lone symbol inside let varlist as variable.
27544         * test/automated/elisp-mode-tests.el
27545         (completest-variables-in-let-bindings): New test.
27547         Add xref-pulse-on-jump
27548         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
27549         Add autoload cookie.
27550         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
27551         (xref--maybe-pulse): New function.
27552         (xref-pop-marker-stack, xref--pop-to-location)
27553         (xref--display-position): Use it.
27554         (xref--location-at-point): Use back-to-indentation.
27556 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
27558         lisp/org/org-{macs,list}.el: Fix lexical warnings
27559         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
27560         (org-list-get-next-item, org-list-get-prev-item)
27561         (org-list-get-children): Mark unused arg `struct'.
27562         (org-list-use-alpha-bul-p): Remove unused var `bul'.
27563         (org-toggle-checkbox): Mark unused var.
27564         (org-update-checkbox-count): Remove unused var `box-num'.
27565         (org-adapt-indentation): Declare.
27566         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
27567         (org-list-send-list): Remove unused var `txt'.
27568         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
27569         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
27570         * lisp/org/org-macs.el: Use `declare'.
27571         (org-with-limited-levels): Declare dyn-bound vars.
27573 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
27575         Fix minor issues with CEDET on MS-Windows
27576         * lisp/cedet/semantic/symref/idutils.el
27577         (semantic-symref-parse-tool-output-one-line): Fix the search
27578         regexp to match MS-Windows file names with drive letters.
27579         (Bug#19468)
27580         * lisp/cedet/semantic/symref/grep.el
27581         (semantic-symref-grep-use-template): Remove "--color=always" from
27582         Grep switches on MS-Windows.
27583         (semantic-symref-grep-shell): Use shell-file-name as the default
27584         value, so this works not only on Posix platforms.
27585         (semantic-symref-perform-search): Use shell-quote-argument instead
27586         of literal '..' for portable quoting of Grep command-line
27587         argument.  Use shell-command-switch instead of a literal "-c".
27588         * lisp/cedet/semantic/bovine/gcc.el
27589         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
27590         for an absolute file name in a portable way.
27592 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
27594         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
27595         (package-import-keyring, package-refresh-contents)
27596         (package-compute-transaction, package--save-selected-packages)
27597         (package-install-from-archive, package-delete)
27598         (package-menu--perform-transaction): Use `inhibit-message' instead.
27599         (package--compile): Set `warning-minimum-level' to :error.
27601 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
27603         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
27604         (terminal-init-screen): Use it (bug#20356).
27605         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
27606         (xterm--extra-capabilities-type): New const.
27607         (xterm-extra-capabilities): Use it.
27608         (xterm--version-handler): Lower the pseudo-version for `screen'.
27610 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
27612         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
27613         Always insert a newline at the end (to avoid mouse-face background
27614         tail at the last line).
27616         elisp-completion-at-point: Prioritize being quoted over funpos
27617         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
27618         Only consider function position when not inside quoted form
27619         (bug#20425).
27620         * test/automated/elisp-mode-tests.el: New file.
27622         Stop vc-print-log from jumping to the top
27623         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
27624         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
27625         is not specified.
27626         (vc-incoming-outgoing-internal): Always pass nil.
27627         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
27628         call it, and don't set vc-sentinel-movepoint (bug#15322).
27629         (vc-print-root-log): Don't fetch the root working revision, nor
27630         pass it to vc-print-log-internal.
27632 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
27634         Fix display of keyboard layouts for right-to-left scripts
27635         * lisp/international/quail.el (quail-insert-kbd-layout):
27636         Force left-to-right paragraph direction.
27638 2015-05-02  K. Handa  <handa@gnu.org>
27640         * src/cmds.c (internal_self_insert): When we insert spaces for
27641         padding, set point before the padding spaces, not after them.
27643 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
27645         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
27647 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
27649         Fix etags-xref-find for references
27650         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
27651         Use `cl-mapcan'.
27652         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
27653         directory if no tags tables are loaded (bug#19468).
27655 2015-05-02  Philipp Stephani  <phst@google.com>
27657         Update the options in whitespace-style defcustom
27658         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
27659         `repeat' because the option is really set-like.  Add missing
27660         options.  Reorder options to match the order in the
27661         documentation.  (Bug#20346)
27663 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
27665         Fix error diagnostics of c-macro-expand
27666         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
27667         too early if no start-marker string was found -- that generally
27668         means cpp exited abnormally, and we still want to show its error
27669         messages to the user.
27671         Don't require Texinfo 5.0 for Emacs documentation
27672         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
27673         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
27674         "@codequoteundirected on", respectively, to avoid requiring
27675         Texinfo 5.x for Emacs documentation.
27677 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
27679         * lisp/files.el (pwd):
27680         When called with a prefix argument, insert the current default
27681         directory at point.
27683 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
27685         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
27686         * lisp/isearch.el (isearch-mode-map): Don't inhibit
27687         function-key-map remapping for backspace (bug#20466).
27689 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
27691         Implement xref-find-references in etags and elisp-mode
27692         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
27693         (elisp-xref-find): Use it.
27694         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
27695         * lisp/progmodes/xref.el (xref-collect-references):
27696         (xref--collect-reference): New functions.
27698 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
27700         Prefer plain characters to Texinfo circumlocutions
27701         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
27702         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
27704         Fix single-quoting style in PDF manuals
27705         The PDF versions of the GNU manuals used curved single quotes to
27706         represent grave accent and apostrophe, which made it a pain to cut
27707         and paste code examples from them.  Fix the PDF versions to use
27708         grave accent and apostrophe for Lisp source code, keystrokes, etc.
27709         This change does not affect the info files, nor does it affect
27710         ordinary uses of curved single quotes in PDF.
27711         * doc/emacs/docstyle.texi: New file, which specifies treatment for
27712         grave accent and apostrophe, as well as the document encoding.
27713         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
27714         * doc/lispintro/emacs-lisp-intro.texi:
27715         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
27716         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
27717         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
27718         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
27719         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
27720         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
27721         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
27722         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
27723         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
27724         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
27725         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
27726         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
27727         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
27728         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
27729         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
27730         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
27731         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
27732         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
27733         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
27734         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
27735         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
27736         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
27737         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
27738         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
27739         * doc/misc/woman.texi:
27740         Use it instead of '@documentencoding UTF-8', to lessen the need for
27741         global changes like this in the future.
27742         * doc/emacs/Makefile.in (EMACS_XTRA):
27743         * doc/lispintro/Makefile.in (srcs):
27744         * doc/lispref/Makefile.in (srcs):
27745         Add dependency on docstyle.texi.
27746         * doc/misc/Makefile.in (style): New macro.
27747         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
27748         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
27749         Use it.
27751 2015-05-01  Glenn Morris  <rgm@gnu.org>
27753         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
27755         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
27756         (help-fns--signature): Declare.
27758         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
27760 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
27762         New macro seq-let, providing destructuring support to seq.el
27763         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
27764         to `cl-destructuring-bind' but works on all sequence types supported
27765         by `seq.el'.  Bump version number to 1.6.
27766         * test/automated/seq-tests.el: Add tests for seq-let.
27767         * doc/lispref/sequences.texi: Add documentation for seq-let.
27769 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
27771         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
27773 2015-05-01  Glenn Morris  <rgm@gnu.org>
27775         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
27777 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
27779         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
27780         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
27781         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
27782         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
27783         (Bug#20445).
27785 2015-05-01  K. Handa  <handa@gnu.org>
27787         * lisp/international/mule-cmds.el (input-method-use-echo-area):
27788         Change :type to 'boolean.
27790 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
27792         Start using proportional fonts in eww by default
27793         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
27794         it seems to work well.
27796         Fix links in tables in shr
27797         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
27798         makes (some) links in tables not work.
27800 2015-05-01  Jan D  <jan.h.d@swipnet.se>
27802         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
27804 2015-04-30  Glenn Morris  <rgm@gnu.org>
27806         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
27807         Update for 2015-02-08 change to indirect-function.
27809         * lisp/term/ns-win.el (ns-get-selection-internal):
27810         Remove declaration for function deleted 2014-10-21.
27812         * lisp/dom.el: Load subr-x when compiling, for when-let.
27814         Silence some compilation warnings
27815         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
27816         * lisp/emulation/cua-base.el (delete-active-region):
27817         * lisp/net/net-utils.el (w32-get-console-output-codepage):
27818         * lisp/term/ns-win.el (ns-own-selection-internal)
27819         (ns-disown-selection-internal, ns-selection-owner-p)
27820         (ns-selection-exists-p, ns-get-selection):
27821         Declare for compiler.
27823         Function declaration updates prompted by 'make check-declare'
27824         * lisp/emacs-lisp/package.el (lm-homepage):
27825         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
27826         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
27827         * lisp/gnus/mml.el (libxml-parse-html-region):
27828         * lisp/gnus/nnrss.el (libxml-parse-html-region):
27829         * lisp/net/eww.el (libxml-parse-html-region):
27830         * lisp/net/shr.el (libxml-parse-html-region):
27831         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
27832         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
27833         * lisp/vc/vc-git.el (vc-annotate-convert-time):
27834         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
27835         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
27836         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
27837         Update declaration.
27839         Remove compatibility code for 20-year old function renaming
27840         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
27841         Make it an obsolete alias.
27842         (idlwave-shell-filter): Change all uses to comint-output-filter.
27844 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
27846         Add ace-window face config
27847         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
27848         configuration.
27850 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
27852         Unclutter 'make doc' output a bit
27853         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
27854         Use make subst rather than sh IFS to split target string apart.
27855         This makes 'make' output easier to follow.
27857         Merge from gnulib
27858         * doc/misc/texinfo.tex: Update from gnulib.
27860 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
27862         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
27863         (package-menu--print-info): Obsolete.
27864         (package-menu--print-info-simple): New function.
27865         (package-menu--refresh): Use it, simplify code, and improve
27866         performance.
27867         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
27868         Tiny performance improvement.
27870         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
27872 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
27874         Omit -Wstrict-overflow workaround in GCC 5
27875         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
27876         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
27878         Merge from gnulib
27879         This incorporates:
27880         2015-04-29 extern-inline: no need for workaround in GCC 5.1
27881         2015-04-26 file-has-acl: port to CentOS 6
27882         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
27884 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
27886         Set next-error-* in xref--xref-buffer-mode
27887         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
27888         Set `next-error-function' and `next-error-last-buffer'.
27889         (xref--next-error-function): New function.
27890         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
27892 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
27894         python.el: Fix warnings on looking-back calls missing LIMIT
27895         * lisp/progmodes/python.el (python-shell-accept-process-output):
27896         Pass LIMIT arg to looking-back.
27898 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
27900         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
27901         (package--download-and-read-archives): Use pushnew instead of
27902         append.  If something terrible happened during a previous
27903         download, simply refreshing should now make things work again.
27905 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
27907         Introduce etags-xref-find-definitions-tag-order
27908         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
27909         New variable.
27910         (etags--xref-find-definitions): Use it (bug#19468).
27912 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
27914         PATH- and completion-related fixes in Eshell on MS-Windows
27915         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
27916         MS-Windows, prepend "." to list of directories produced from PATH,
27917         as Windows always implicitly searches the current directory first.
27918         (eshell-force-execution): Make it have a non-nil default value on
27919         MS-Windows and MS-DOS.
27920         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
27921         eshell-force-execution is non-nil, complete on readable files and
27922         directories, not only executables.  When running on MS-Windows,
27923         prepend "." to list of directories produced from PATH, as Windows
27924         always implicitly searches the current directory first.
27926 2015-04-29  Sam Steingold  <sds@gnu.org>
27928         Bury RCIRC buffers when there is no activity
27929         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
27930         (rcirc-bury-buffers): New function.
27931         (rcirc-next-active-buffer): When there is no new activity, use
27932         `rcirc-bury-buffers' to hide all RCIRC buffers.
27934 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
27936         Fix DBUS query result parsing for secrets-search-items
27937         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
27938         parsing.  The function assumed that return value of the
27939         SearchItems method called on a collection is a list of two lists,
27940         however this is true only when no collection is specified.  GNOME
27941         had used to incorrectly return a list of two lists in both cases,
27942         but this was already fixed:
27943         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
27944         incorrect information in the secrets-search-items’ docstring.
27945         (Bug#20449)
27947 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
27949         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
27950         Use `inhibit-message' instead of hiding the previous message
27951         with (message nil).
27953 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
27955         Remove the deprecated INTERNAL_FIELD macro by expanding it
27956         * src/lisp.h (INTERNAL_FIELD): Remove.
27957         (DEFVAR_KBOARD): Modify accordingly.
27958         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
27959         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
27960         * src/buffer.c (compact_buffer): Use BVAR.
27962 2015-04-29  Glenn Morris  <rgm@gnu.org>
27964         Replace an obsolete function alias
27965         * lisp/isearch.el (isearch-yank-x-selection):
27966         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
27967         (mouse-drag-secondary-moving):
27968         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
27969         Replace obsolete alias x-get-selection with gui-get-selection.
27971 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
27973         * lisp/mail/rmailsum.el: Use lexical-binding.
27975 2015-04-29  Glenn Morris  <rgm@gnu.org>
27977         * test/automated/package-test.el (package-test-update-archives-async):
27978         Skip test on hydra.nixos.org.
27980 2015-04-28  Glenn Morris  <rgm@gnu.org>
27982         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
27983         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
27984         (foldout-mouse-hide-or-exit): Use new names for outline functions.
27986         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
27987         Update for 2014-06-26 hideif.el change.
27989         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
27990         (rmail--decode-and-apply): New function.
27991         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
27993         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
27995 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
27997         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
27998         (package-menu--refresh): Delegate obsolete-hiding to
27999         `package--remove-hidden'.
28000         (package--remove-hidden): Disregard high-priority package if it is
28001         older than the installed one.
28003 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
28005         Update source file encoding list
28006         Update admin/notes/unicode, along with coding system cookies in
28007         other files, so that the two match each other better.
28008         * admin/notes/unicode: lisp/language/ethio-util.el and
28009         lisp/language/ethiopic.el also use utf-8-emacs.
28010         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
28011         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
28012         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
28013         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
28014         * etc/refcards/sk-survival.tex:
28015         Add "coding: utf-8" so that this file is not mishandled in a
28016         Latin-1 or Big-5 locale.
28017         * lisp/international/robin.el, lisp/org/ox-ascii.el:
28018         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
28019         * lisp/language/ethio-util.el: Fix trailer.
28021 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
28023         Fix synchronous invocation of Ispell
28024         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
28025         value to ispell-process-directory before calling ispell-init-process.
28026         Don't call set-process-coding-system if ispell-async-processp is nil.
28027         (Bug#20448)
28029 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
28031         * lisp/emacs-lisp/package.el: Skip space and comments in init file
28032         (package--ensure-init-file): Insert snippet at first
28033         non-whitespace non-comments line.  Respects local-vars at the top
28034         of the file.
28036 2015-04-28  Glenn Morris  <rgm@gnu.org>
28038         * lisp/mail/rmail.el (rmail-copy-headers):
28039         Handle rmail-nonignored-headers being nil.  (Bug#18878)
28041         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
28043         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
28044         Don't get confused by a bzrlib version mismatch warning.
28046 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
28048         Change default location of EUDC options file
28049         * etc/NEWS: Document change to EUDC options file's default location.
28050         * lisp/net/eudc-vars.el (eudc-options-file): Use
28051         `locate-user-emacs-file' to change default options file location.
28053 2015-04-27  Glenn Morris  <rgm@gnu.org>
28055         * test/automated/package-test.el (package-test-update-archives-async):
28056         Try to handle the test server script dying.
28058 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
28060         * lisp/saveplace.el (save-place-mode): New minor mode.
28061         (save-place): Redefine as an obsolete alias.
28063         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
28064         * lisp/midnight.el: Use lexical-binding.
28065         (midnight-mode): Make it a proper minor mode.
28066         (midnight-buffer-display-time): Make arg non-optional.
28067         (midnight-find): Remove.
28068         (clean-buffer-list-kill-never-regexps)
28069         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
28070         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
28071         contain functions.
28072         (clean-buffer-list): Use cl-find.
28073         Allow clean-buffer-list-kill-never-regexps to contain functions.
28075 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
28077         Bump version of seq.el to 1.5
28078         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
28079         from seq-doseq.  Bump version number of seq.el.
28081 2015-04-27  Glenn Morris  <rgm@gnu.org>
28083         * lisp/mail/rmail.el (rmail-reply):
28084         Decode subject before matching "Re:" prefix.  (Bug#20396)
28086 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
28088         * lisp/emacs-lisp/package.el: Small improvements
28089         (package--with-work-buffer-async): More informative error.
28090         (package-install-user-selected-packages): Rename to
28091         `package-install-selected-packages'.
28093 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
28095         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
28096         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
28097         (eieio--class-make): Remove leftover `tag'.
28099 2015-04-27  Glenn Morris  <rgm@gnu.org>
28101         * lisp/gnus/message.el (gnus-extract-address-components):
28102         Remove bogus declaration that was masking previous problem.
28104 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
28106         * lisp/gnus/message.el (message-insert-formatted-citation-line):
28107         Fix typo.  (Bug#20318)
28109 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
28111         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
28113         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
28114         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
28115         the buffer in yet another frame.
28116         (reftex-toc-visit-location): Make sure toc-window has focus at the end
28117         when `final' is nil.
28118         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
28119         silence warnings.  Use `--' to clarify that it's internal.
28120         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
28121         (reftex-toc-promote): Clarify unused argument.
28122         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
28123         Add `reftex--' prefix.  Fix all users.
28124         (reftex-toc-promote-prepare): Use _ for dummy variable.
28125         (reftex-toc-restore-region): Rename `m.
28127 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
28129         Fix a typo in bibtex.el
28130         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
28131         last change.  (Bug#20429)
28133         Fix redisplay of frame after loading new fonts
28134         * src/xdisp.c (redisplay_internal): When retrying redisplay of
28135         a frame because new fonts were loaded, disable all redisplay
28136         optimizations on that frame by calling SET_FRAME_GARBAGED.
28137         (Bug#20410)
28139 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
28141         * lisp/info.el (Info-menu): Properly provide the `default'
28142         (Bug#20391)
28144         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
28145         Catch errors from documentation (bug#20418).
28146         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
28148 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
28150         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
28151         Remove redundant ":group 'package".
28153 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
28155         Fix a typo in rmail.el
28156         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
28157         last commit.  (Bug#20429)
28159 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
28161         Introduce xref-prompt-for-identifier
28162         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
28163         (xref--read-identifier): Use it
28164         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
28166 2015-04-26  João Távora  <joaotavora@gmail.com>
28168         `tex-insert-quote' after single `'' opens quotes instead of closing
28169         Without this, it's very hard to precede double quotes with the
28170         apostrophe character, i.e. insert the sequence '``
28171         (quote-backquote-backquote), commonly useful in portuguese, for
28172         instance.
28173         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
28174         preceding chars making `tex-insert-quote' be in the "opening" context.
28176 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
28178         Pass `id' to `completing-read' as def instead of initial input
28179         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
28180         `completing-read' as the default value instead of initial input
28181         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
28183 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
28185         Don't freeze with unreadable processes
28186         Don't freeze if an exiting process can't be read from.  (Bug#19860).
28187         This fixes a bug I introduced in
28188         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
28189         "* process.c: Add sanity checks for file descriptors."
28190         Dmitry Gutov did most of the legwork in finding the problem.
28191         * src/process.c (wait_reading_process_output):
28192         Treat non-running processes that can't be read from
28193         the same as other non-running processes.
28195 2015-04-25  Alan Mackenzie  <acm@muc.de>
28197         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
28198         * lisp/subr.el (remove-yank-excluded-properties): Put
28199         `with-silent-modifications' around only the last three lines of code.
28201 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
28203         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
28204         (package--all-keywords): Deleted variable.
28206         * etc/NEWS: Document package-hiding functionality.
28208 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
28210         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
28212         Clarify the doc string of 'replace-regexp-in-string'
28213         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
28215         Improve doc string of 'insert-buffer-substring'
28216         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
28218         MS-Windows followup for the recent gnulib update
28219         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
28220         acl-internal.c.
28222 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
28224         Spelling fixes
28226         Merge from gnulib
28227         This incorporates:
28228         2015-04-24 file-has-acl: new module, split from acl
28229         2015-04-24 manywarnings: add GCC 5.1 warnings
28230         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
28231         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
28232         2015-04-15 acl: On Linux, check for acls without libacl
28233         2015-04-14 tempname: avoid unused parameter warnings (trivial)
28234         * lib/acl-internal.c: New file, from gnulib.
28235         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
28236         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
28237         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
28238         Update from gnulib.
28240         Port --enable-gcc-warnings to GCC 5.1 x86-64
28241         * lib-src/ebrowse.c (dump_sym):
28242         * lib-src/hexl.c (main):
28243         * src/ccl.c (ccl_driver):
28244         * src/character.c (string_escape_byte8):
28245         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
28246         * src/gnutls.c (Fgnutls_boot):
28247         * src/gtkutil.c (xg_check_special_colors):
28248         * src/image.c (x_build_heuristic_mask):
28249         * src/print.c (safe_debug_print, print_object):
28250         * src/term.c (produce_glyphless_glyph):
28251         * src/xdisp.c (get_next_display_element)
28252         (produce_glyphless_glyph):
28253         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
28254         Don't use a signed format to print an unsigned integer, or vice
28255         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
28256         * src/image.c (png_load_body, jpeg_load_body):
28257         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
28259 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
28261         Add new faces to tsdh-light-theme
28262         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
28263         definitions for Info-quoted, ace-jump-face-foreground,
28264         hl-paren-face, show-paren-match, and show-paren-mismatch.
28266 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
28268         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
28270 2015-04-24  Glenn Morris  <rgm@gnu.org>
28272         * build-aux/gitlog-to-emacslog:
28273         Use raw log format rather than wrapped one.
28275 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
28277         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
28278         (seq-doseq): Fix out-of-scope binding.
28279         Don't call `seq-length at every iteration.
28280         Reduce `if's from 3 to 2 per iteration.
28281         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
28283 2015-04-24  Glenn Morris  <rgm@gnu.org>
28285         * lisp/textmodes/text-mode.el (text-mode-hook):
28286         Move text-mode-hook-identify to default.
28288         * lisp/mouse.el (minor-mode-menu-from-indicator):
28289         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
28291         * lisp/help-fns.el (describe-function): More type checking.
28292         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
28294         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
28295         (Bug#20325)
28297 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
28299         shr: strip leading whitespace when expanding URLs
28300         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
28302 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
28304         Clarify "co-authored" some more
28306         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
28308         Clarify doc strings of functions that search for properties
28309         * src/textprop.c (Fnext_char_property_change)
28310         (Fprevious_char_property_change)
28311         (Fnext_single_char_property_change)
28312         (Fprevious_single_char_property_change, Fnext_property_change)
28313         (Fnext_single_property_change, Fprevious_property_change)
28314         (Fprevious_single_property_change): Clarify doc strings wrt return
28315         value and the optional LIMIT argument.  (Bug#20411)
28317 2015-04-24  Glenn Morris  <rgm@gnu.org>
28319         * test/automated/message-mode-tests.el (message-mode-propertize):
28320         Handle non-writable HOME; eg on hydra.nixos.org.
28322 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
28324         Avoid starting threads by w32-shell-execute
28325         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
28326         local file names, before invoking ShellExecute.  (Bug#20220)
28328 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
28330         Fix following doc-links in `widget-documentation-link-action'
28331         * lisp/wid-edit.el (widget-documentation-link-action): Make
28332         following doc-links less simplistic (Bug#20398).
28334 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
28336         Improve EUDC manual
28337         * doc/misc/eudc.texi (Troubleshooting):
28338         New LDAP troubleshooting subsection.
28340 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
28342         Omit needless "\ " after multibyte then newline
28343         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
28344         (print_object): When print-escape-multibyte is non-nil and a
28345         multibyte character is followed by a newline or formfeed, followed
28346         by a hex digit, don't output a needless "\ " before the hex digit.
28347         * test/automated/print-tests.el (print-hex-backslash): New test.
28349 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
28351         Add a new `inhibit-message' variable
28352         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
28353         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
28354         `inhibit_message' is non-zero.
28355         * etc/NEWS: Add an entry.
28356         * doc/lispref/display.texi: Add an entry for `inhibit-message',
28357         mention it in `message'.
28359 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
28361         Fix last fix in `display-buffer-record-window'.
28362         * lisp/window.el (display-buffer-record-window): Fix last fix.
28364 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
28366         Minor edits in CONTRIBUTE
28367         * CONTRIBUTE: Rearrange instructions about log messages.
28368         Use "Git" capitalized all over.
28369         Use 2 spaces between sentences.
28371 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
28373         * lisp/files.el (basic-save-buffer): Fix argument.
28375         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
28376         In case `(and (null custom-file) init-file-had-error)' do the same
28377         thing we'd do if `(null user-init-file)', which is to either error out
28378         or return nil.  This is in line with `custom-save-all' which would
28379         throw an error in that situation.  (Bug#20355)
28381         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
28382         (package-menu-hide-low-priority): New variable, see its doc.
28383         (package-archive-priorities): Update doc.
28384         (package-desc-priority): New function.
28385         (package-desc-priority-version): Use it.
28386         (package--remove-hidden): New function.
28387         (package-menu--refresh): Use it.
28389         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
28390         (package-menu--hide-obsolete): New variable.
28391         (package--remove-hidden): Use it.
28392         (package-menu-hide-obsolete): New interactive function to toggle
28393         the variable.
28394         (package--quick-help-keys): Document it.
28395         (package-menu-async): Add :version tag.
28396         (package-menu-mode-map): Bind package-menu-hide-obsolete.
28397         (package-desc-status): Indicate non-installed obsolete packages as
28398         avail-obso.
28399         (package-menu-mark-install): Allow installation of avail-obso.
28400         (package-menu--status-predicate): Sort avail-obso with available.
28402 2015-04-22  Alan Mackenzie  <acm@muc.de>
28404         On C-y, stop some text property entries being written into buffer-undo-list
28405         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
28406         `with-silent-modifications'.
28408 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
28410         In display-buffer-record-window record selected window if necessary
28411         * lisp/window.el (display-buffer-record-window): Store selected window
28412         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
28414 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
28416         Fix reftex-citation bug
28417         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
28418         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
28419         integration is enabled and there are no citations in the document
28420         so far.
28422 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
28424         Add or reset based on the presence of MERGE_HEAD
28425         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
28426         `vc-git-resolve-when-done' to `after-save-hook' in either case.
28427         (vc-git-conflicted-files): Add a TODO.
28428         (vc-git-resolve-when-done): Depending on the presence of
28429         MERGE_HEAD, either update the resolved file in the index, or
28430         remove it from there.  (Bug#20292)
28432 2015-04-21  Glenn Morris  <rgm@gnu.org>
28434         * lisp/custom.el (custom-declare-group): No need to purecopy
28435         custom-current-group-alist members following recent change to set
28436         it to nil before dumping.
28438         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
28439         (Bug#20399)
28441 2015-04-21  Daniel Colascione  <dancol@dancol.org>
28443         Unbreak no-op buffer save message
28444         * lisp/files.el (basic-save-buffer): Accept called-interactively as
28445         an argument instead of directly invoking called-interactively-p,
28446         which will always yield nil in that context.
28448 2015-04-21  Alan Mackenzie  <acm@muc.de>
28450         CC Mode: Do nothing in before/after-change-functions for text
28451         property changes
28452         Fixes bug#20266.
28453         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
28454         yank-handled-properties buffer local, and remove 'category from it.
28455         (c-called-from-text-property-change-p): New function.
28456         (c-before-change): Don't do anything if a call of the new function
28457         returns non-nil.
28458         (c-after-change): Don't do much if a call of the new function returns
28459         non-nil.
28460         (c-extend-after-change-region): Put changes to text property 'fontified
28461         inside c-save-buffer-state.
28463 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
28465         Fix byte-compiler warnings about looking-back
28466         * lisp/vc/log-view.el (log-view-end-of-defun-1):
28467         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
28468         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
28469         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
28470         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
28471         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
28472         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
28473         * lisp/org/org.el (org-insert-heading, org-sort-entries):
28474         * lisp/org/org-mouse.el (org-mouse-end-headline)
28475         (org-mouse-context-menu):
28476         * lisp/org/org-clock.el (org-clock-cancel):
28477         * lisp/man.el (Man-default-man-entry):
28478         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
28479         (rmail-ensure-blank-line):
28480         * lisp/mail/footnote.el (Footnote-delete-footnote):
28481         * lisp/mail/emacsbug.el (report-emacs-bug):
28482         * lisp/info.el (Info-follow-reference, Info-fontify-node):
28483         * lisp/info-look.el (info-lookup-guess-custom-symbol):
28484         * lisp/help-fns.el (help-fns--key-bindings):
28485         * lisp/files.el (hack-local-variables):
28486         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
28487         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
28488         (viper-complete-filename-or-exit):
28489         * lisp/emulation/viper-cmd.el (viper-backward-indent):
28490         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
28491         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
28492         * lisp/cus-edit.el (custom-face-edit-value-create):
28493         * lisp/calendar/todo-mode.el (todo-set-item-priority)
28494         (todo-filter-items-1, todo-convert-legacy-files)
28495         (todo-prefix-overlays): Add explicit second arg to looking-back.
28497 2015-04-20  Glenn Morris  <rgm@gnu.org>
28499         Avoid non-nil current-load-list at startup
28500         * src/process.c (init_process_emacs): Move Fprovide statement...
28501         (syms_of_process): ... to here.
28503         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
28505         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
28506         in emacs -Q.
28508 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
28510         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
28511         (Bug#20330)
28513 2015-04-20  Glenn Morris  <rgm@gnu.org>
28515         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
28517         Tweak exec-path in uninstalled case
28518         * src/callproc.c (init_callproc): If running uninstalled, do not
28519         include eventual installation libexec directory in exec-path.
28521 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
28523         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
28524         cache keywords.
28525         (package-menu-filter): Accept a list of keywords.
28526         (package--all-keywords): New variable to cache known keywords.
28527         (package-all-keywords): Populate it if necessary.
28528         (package-refresh-contents): Reset it.
28530         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
28531         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
28532         as special keywords which match agains package archive and status
28533         respectively.
28534         * etc/NEWS: Document it.
28536 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
28538         Describe and index "empty overlays".
28539         * doc/lispref/display.texi (Overlays): Improve indexing.
28540         (Managing Overlays): Describe "empty" overlays.
28541         (Overlay Properties, Finding Overlays): Add cross-reference to
28542         where empty overlays are described.
28544 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
28546         Spelling fixes
28548         Quote 'like this' in top-level files
28549         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
28550         Prefer to single-quote 'like this' (instead of the older style
28551         `like this').
28552         * configure.ac: Fix some space-before-tab problems that 'git commit'
28553         complained about.
28555         Use bool for boolean in textprop.c, undo.c
28556         * src/textprop.c (soft, hard): Now constants instead of macros.
28557         (validate_plist): Rewrite to avoid need for boolean local.
28558         (interval_has_all_properties, interval_has_some_properties)
28559         (interval_has_some_properties_list, add_properties)
28560         (remove_properties, get_char_property_and_overlay)
28561         (Fnext_single_char_property_change)
28562         (Fprevious_single_char_property_change, add_text_properties_1)
28563         (Fremove_text_properties, Fremove_list_of_text_properties)
28564         (copy_text_properties):
28565         * src/tparam.c (tparam1):
28566         * src/undo.c (record_change, record_property_change)
28567         (syms_of_undo):
28568         Use 'true' and 'false' for booleans.
28570 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
28572         * lisp/vc/vc-git.el (vc-git-find-file-hook):
28573         Call `smerge-start-session' even when dealing with a stash
28574         conflict (bug#20292).
28576 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
28578         Add option to eshell/clear to clear scrollback.
28579         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
28580         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
28581         scrollback contents are cleared.
28582         * etc/NEWS: Describe change.
28583         * doc/misc/eshell.texi: Add entry for `clear'.
28585 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
28587         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
28588         where either will do.
28590 2015-04-19  Steve Purcell  <steve@sanityinc.com>
28592         Assume package archive-contents are UTF8-encoded
28593         * lisp/emacs-lisp/package.el (package--read-archive-file):
28594         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
28595         downloaded and cached archive-contents files, so that non-ASCII
28596         characters in package descriptions are displayed correctly in the
28597         `list-packages' menu.  (Bug#20231)
28599 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
28601         Abort when looking at stashed changes
28602         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
28603         stashed changes (bug#20292).
28605 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
28607         Refactor low-level printing for simplicity
28608         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
28609         PRINTPREPARE; doable now that we assume C99.  All callers changed.
28610         (PRINTCHAR): Remove, as it adds more mystery than clarity.
28611         All callers changed.
28612         (strout): Assume that caller computes length.  All callers changed.
28613         (print_c_string): New function.
28614         (write_string, write_string_1): Compute length instead of asking
28615         the caller to compute it.  All callers changed.
28616         (write_string): Simplify by using write_string_1.
28617         (write_string_1): Simplify by using print_c_string.
28618         (Fterpri): Compute default val more clearly.
28619         (Fprin1_to_string, print_object):
28620         Assume C99 to avoid unnecessary nesting.
28621         (print_object): Prefer print_c_string to multiple printchar, or
28622         to calling strout with -1 length.  Coalesce into sprintf when
28623         this is easy.
28625 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
28627         Prefer "Bug#1234" in commit messages (Bug#20325)
28628         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
28629         as this isn't useful for Git.
28630         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
28632 2015-04-18  Glenn Morris  <rgm@gnu.org>
28634         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
28635         (Bug#19506)
28637 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
28639         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
28640         Do not use `chomp' as a function.  (Bug#19505)
28642 2015-04-18  Glenn Morris  <rgm@gnu.org>
28644         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
28646         * doc/emacs/misc.texi (Sorting): Small edit.
28647         (Bug#19896)
28649         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
28651 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
28653         css-mode.el: Support multi-line comment filling
28654         (Bug#20256)
28655         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
28656         comment filling.
28657         (css-adaptive-fill): New function.
28658         (css-mode): Set `adaptive-fill-function'.
28659         (scss-mode): Set `comment-continue'.
28661 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
28663         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
28664         Better error messages.
28666 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
28668         Minor improvements in Bulgarian input methods
28669         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
28670         Replace U+042C with U+045D, as the former character is not used in
28671         the modern Bulgarian language.
28672         (Bug#20350)
28674 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
28676         Improve EUDC manual
28677         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
28678         authentication schemes.  Add index items.  Shorten example server
28679         name.
28681 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
28683         Don't show both feature and function with the same name
28684         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
28685         Don't show both feature and function with the same name.
28687         (elisp--xref-identifier-location): Skip variable, if it's also
28688         a function
28689         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
28690         Avoid returning both the variable and the function for the same
28691         minor mode.
28693 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
28695         Fix fontification of keywords clobbered by the prompt
28696         * lisp/comint.el (comint-output-filter): Remove the uses of
28697         with-silent-modifications I introduced as part of the last change.
28698         This fixes, e.g., erratically missing highlighting when running
28699         ./configure --help; ./configure in a shell-mode buffer with
28700         compilation-shell-minor-mode turned on.
28702 2015-04-17  Glenn Morris  <rgm@gnu.org>
28704         * admin/authors.el (authors-valid-file-names)
28705         (authors-renamed-files-alist): Additions.
28707 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
28709         * lisp/indent.el (indent-region): Don't deactivate the mark.
28710         (Bug#20357)
28712 2015-04-17  Sam Steingold  <sds@gnu.org>
28714         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
28716 2015-04-16  Leo Liu  <sdl.web@gmail.com>
28718         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
28720 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
28722         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
28723         Don't use `pcomplete' any more.
28725 2015-04-16  Glenn Morris  <rgm@gnu.org>
28727         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
28729 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
28731         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
28732         * configure.ac (LIBJPEG): Leave it empty for MinGW.
28734 2015-04-16  Glenn Morris  <rgm@gnu.org>
28736         * lisp/replace.el (query-replace-from-to-separator):
28737         Delay initialization to avoid rogue setting after startup.
28739 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
28741         Pre-4.6 GCC succeeds with unknown option
28742         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
28743         (Bug#20338)
28745 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
28747         '[:graph:]' now excludes whitespace, not just ' '
28748         * doc/lispref/searching.texi (Char Classes):
28749         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
28750         sans whitespace (not sans space).
28751         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
28752         not just space.
28753         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
28755 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
28757         * lisp/subr.el (substitute-key-definition-key, special-form-p)
28758         (macrop): Drop deprecated second arg to indirect-function.
28759         (looking-back): Make the second arg non-optional.
28761         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
28762         command is actually sent to the shell.
28764 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
28766         Port jpeg configuration to Solaris 10 with Sun C
28767         * configure.ac: Check for jpeglib 6b by trying to link it, instead
28768         of relying on cpp magic that has problems in practice.  Check for
28769         both jpeglib.h and jerror.h features.  Remove special case for
28770         mingw32, which should no longer be needed (and if it were needed,
28771         should now be addressable by hotwiring emacs_cv_jpeglib).
28772         (Bug#20332)
28774 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
28776         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
28777         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
28778         Move to elisp-mode.el.
28779         (lisp-mode-variables): (Re)move elisp-specific settings.
28780         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
28781         from lisp-mode-variables.
28782         (elisp--font-lock-flush-elisp-buffers): New function, moved from
28783         lisp-mode.el.
28785         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
28786         Avoid pathological slowdown at top-level in large file.
28788 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
28790         Standardize names of ChangeLog history files
28791         Suggested by Glenn Morris in:
28792         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
28793         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
28794         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
28795         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
28796         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
28797         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
28798         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
28799         Remove.
28801         Split top-level entries into pre- and post-April 7
28802         This more clearly distingiushes pre-April-7 ChangeLog entries (which
28803         are for top-level files only) from post-April-7 entries (which are
28804         about files at all levels.  Problem reported by Glenn Morris in:
28805         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
28806         * ChangeLog.1: Move post-April-7 entries from here ...
28807         * ChangeLog.2: ... to this new file.
28808         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
28810 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
28812         Fix recent cus-start changes that added customize-rogues
28813         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
28814         vars early.
28815         * lisp/loadup.el ("cus-start"): Move to the end to reduce
28816         customize-rogue.
28818 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
28820         Define cl-concatenate as an alias to seq-concatenate
28821         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
28822           code by making cl-concatenate an alias to seq-concatenate.
28824 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
28826         * src/lread.c (intern_1): Make sure we'd find the symbol we add
28827         (Bug#20334)
28828         * src/xfaces.c (resolve_face_name): Don't use `intern' with
28829         Lisp_Strings.
28831 2015-04-15  Glenn Morris  <rgm@gnu.org>
28833         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
28835 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
28837         Clean up gnus-uu saving code slightly
28838         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
28839         save-restriction/widen calls make more sense.
28841 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
28843         Make [:graph:] act like [:print:] sans space
28844         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
28845         [:graph:] so that it matches everything that [:print:] does,
28846         except for space.
28847         * doc/lispref/searching.texi (Char Classes):
28848         * etc/NEWS:
28849         * lisp/emacs-lisp/rx.el (rx):
28850         Document [:graph:] to be [:print:] sans ' '.
28851         * src/character.c, src/character.h (graphicp): New function.
28852         * src/regex.c (ISGRAPH) [emacs]: Use it.
28853         (BIT_GRAPH): New macro.
28854         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
28855         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
28856         Return BIT_GRAPH for RECC_GRAPH.
28857         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
28858         and ISPRINT if BIT_PRINT.
28860 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
28862         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
28863         Don't use call-next-method in a cl-defmethod.
28865         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
28866         (eieio--class-p): Remove, provided by cl-defstruct.
28868 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
28870         Add seq-intersection and seq-difference to the seq library
28871         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
28872         New functions.
28873         * test/automated/seq-tests.el: Add tests for seq-intersection and
28874         seq-difference.
28875         * doc/lispref/sequences.texi: Add documentation for seq-intersection
28876         and seq-difference.
28878 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
28880         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
28881         to avoid leaking internals.
28883 2015-04-14  Sam Steingold  <sds@gnu.org>
28885         package--ensure-init-file: widen requires save-restriction
28887 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
28889         Improve the commit-msg Git hook for unibyte environments
28890         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
28891         in unibyte environments.  (Suggested by Paul Eggert
28892         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
28893         [:print:], based on UTF-8 sequences of the unprintable characters.
28895         Describe problems with cursor caused by Windows Magnifier
28896         * etc/PROBLEMS: Describe the problem with cursor shape on
28897         MS-Windows due to Windows Magnifier.
28898         (Bug#20271)
28900         Make [:print:] support non-ASCII characters correctly
28901         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
28902         (BIT_PRINT): New bit mask.
28903         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
28904         * src/character.c (printablep): New function.
28905         * src/character.h (printablep): Add prototype.
28906         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
28907         of 'print', 'alnum', and 'alphabetic'.
28908         * doc/lispref/searching.texi (Char Classes): Document the new
28909         behavior of [:print:].
28910         * etc/NEWS: Mention the new behavior of [:print:].
28912         Assign correct general-category and names to surrogates
28913         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
28914         surrogates.  This avoids assigning them the default
28915         general-category of 'Cn', i.e. unassigned codepoints.
28916         (unidata-get-name): Give surrogates synthetic names.
28918 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
28920         Assume C89 offsetof in xterm.c, xlwmenu.c
28921         * lwlib/xlwmenu.c (offset):
28922         * src/xterm.c (cvt_string_to_pixel_args):
28923         Use offsetof, not XtOffset.
28925 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
28927         Assume C89 offsetof in widget.c
28928         * src/widget.c (XtOffset): Remove; no longer needed.
28929         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
28931         Fix think-o in previous patch
28932         * src/window.c (count_windows, get_leaf_windows):
28933         Don't optimize count_windows incorrectly.
28935 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
28937         Avoid some int overflows in window.c
28938         * src/print.c (print_object):
28939         * src/window.c (sequence_number):
28940         * src/window.h (struct window.sequence_number):
28941         Don't assume window sequence number fits in int.
28942         * src/window.c (window_select_count):
28943         * src/window.h (struct window.use_time, window_select_count):
28944         Don't assume window use time fits in int.
28945         * src/window.c (Fsplit_window_internal):
28946         Don't assume user-supplied integer, or sum, fits in int.
28947         (Fset_window_configuration, count_windows, get_leaf_windows)
28948         (save_window_save, Fcurrent_window_configuration):
28949         Use ptrdiff_t for object counts.
28950         (Fset_window_configuration): Omit unused local 'n'.
28951         (count_windows): Simplify by writing in terms of get_leaf_windows.
28952         (get_leaf_windows): Don't store through FLAT if it's null.
28953         (extract_dimension): New static function.
28954         (set_window_margins, set_window_fringes, set_window_scroll_bars):
28955         Use it to avoid undefined behavior when converting user-supplied
28956         integer to 'int'.
28958 2015-04-13  Glenn Morris  <rgm@gnu.org>
28960         Minor doc copyedits
28961         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
28962         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
28964 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
28966         [Gnus] Catch the invalid-operation that idna.el will issue
28967         * lisp/gnus/gnus-art.el (gnus-use-idna):
28968         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
28969         * lisp/gnus/message.el (message-use-idna):
28970         Catch the invalid-operation that idna.el will issue.
28972 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
28974         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
28976 2015-04-13  Sam Steingold  <sds@gnu.org>
28978         package--ensure-init-file: widen before looking for
28979         "(package-initialize)"
28981 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
28983         Change diff-switches default to `-u' (Bug#20290)
28984         * doc/emacs/files.texi (Comparing Files): Document the new default
28985         value of `diff-switches'.
28986         * doc/emacs/trouble.texi (Sending Patches): Document the preference
28987         for unified diff format.  Escape the plus in the suggested `-F' regexp
28988         value.
28989         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
28991 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
28993         (gnus-group--setup-tool-bar-update): Fix last change
28994         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
28995         cursor-sensor-functions should be a list of functions.
28997 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
28999         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
29000         Use gmm-called-interactively-p.
29002 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
29004         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
29005         (Bug#20321)
29006         * lisp/cus-start.el (read-buffer-function): Don't advertise
29007         iswitchb-read-buffer any more.
29008         (iswitchb): Don't tweak this obsolete group any more.
29010 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
29012         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
29014         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
29015         Adding a string after a constructor's argument list will use
29016         that string as the constructor function docstring.  If this string
29017         is absent but the struct itself was given a docstring, use that as
29018         the constructor's docstring.
29019         Fixes bug#17284.
29021 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
29023         Deprecate `intangible' and `point-entered' properties
29024         * lisp/emacs-lisp/cursor-sensor.el: New file.
29025         * lisp/simple.el (pre-redisplay-functions): New hook.
29026         (redisplay--pre-redisplay-functions): New function.
29027         (pre-redisplay-function): Use it.
29028         (minibuffer-avoid-prompt): Mark obsolete.
29029         (redisplay--update-region-highlight): Adapt it to work as a function on
29030         pre-redisplay-functions.
29031         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
29032         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
29033         than point-entered to make the prompt intangible.
29034         * lisp/forms.el: Move `provide' calls to the end.
29035         (forms-mode): Don't use `run-hooks' on a local var.
29036         (forms--make-format, forms--make-format-elt-using-text-properties):
29037         Use cursor-intangible rather than `intangible'.
29038         (forms-mode): Enable cursor-intangible-mode.
29039         * lisp/isearch.el (isearch-mode): Use defvar-local.
29040         (cursor-sensor-inhibit): Declare.
29041         (isearch-mode): Set cursor-sensor-inhibit.
29042         (isearch-done): Set it back.
29043         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
29044         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
29045         any more.
29046         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
29047         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
29048         Add Edebug spec.
29049         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
29050         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
29051         inhibit-point-motion-hooks any more.
29052         (ses--cell-at-pos, ses--curcell): New functions, extracted from
29053         ses-set-curcell.
29054         (ses-set-curcell): Use them.
29055         (ses-print-cell, ses-setup): Use cursor-intangible instead of
29056         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
29057         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
29058         Use ses--cell-at-pos.
29059         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
29060         extracted from ses-command-hook.  Make them work with multiple windows
29061         displaying the same buffer.
29062         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
29063         Enable cursor-intangible-mode.
29064         (ses-command-hook): Remove cell highlight and mode-line update code.
29065         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
29066         Update for new name of text-property holding the cell name.
29067         (ses-rename-cell): Don't mess with mode-line-process.
29068         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
29069         cursor-sensor-functions property instead of point-entered.
29070         (erc-insert-timestamp-right, erc-format-timestamp):
29071         Use cursor-intangible rather than `intangible'.
29072         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
29073         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
29074         cursor-sensor-mode if needed.
29075         (erc-echo-timestamp): Adapt to calling convention of
29076         cursor-sensor-functions.
29077         (erc-insert-timestamp-right): Remove unused vars `current-window' and
29078         `indent'.
29079         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
29080         (gnus-update-group-mark-positions): Remove unused `topic' var.
29081         (gnus-group-insert-group-line): Remove unused var `header'.
29082         (gnus-group--setup-tool-bar-update): New function.
29083         (gnus-group-insert-group-line): Use it.
29084         (gnus-group-update-eval-form): Declare local
29085         dynamically-bound variables.
29086         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
29087         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
29088         (gnus-group-prepare-topics, gnus-topic-update-topic)
29089         (gnus-topic-change-level, gnus-topic-catchup-articles)
29090         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
29091         Use inhibit-read-only.
29092         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
29093         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
29094         * lisp/textmodes/reftex-index.el (reftex-display-index):
29095         Use cursor-intangible-mode if available.
29096         (reftex-index-post-command-hook): Check cursor-intangible.
29097         * lisp/textmodes/reftex-toc.el (reftex-toc):
29098         Use cursor-intangible-mode if available.
29099         (reftex-toc-recenter, reftex-toc-post-command-hook):
29100         Check cursor-intangible.
29101         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
29102         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
29103         (sgml-tags-invisible): Use with-silent-modifications and
29104         inhibit-read-only.  Enable cursor-sensor-mode.
29105         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
29106         calling convention of cursor-sensor-functions.
29107         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
29108         (table-point-entered-cell-hook, table-point-left-cell-hook):
29109         Don't autoload.
29110         (table-cell-entered-state): Remove var.
29111         (table--put-cell-point-entered/left-property)
29112         (table--remove-cell-properties):
29113         Use cursor-sensor-functions rather than point-entered/left.
29114         (table--point-entered/left-cell-function): Merge
29115         table--point-entered-cell-function and table--point-left-cell-function
29116         and adjust to calling convention of cursor-sensor-functions.
29118         Update ldef-boots.el
29120         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
29122         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
29124         Collapse successive char deletions in the undo log
29125         * src/cmds.c (remove_excessive_undo_boundaries): New function,
29126         extracted from Fself_insert_command.
29127         (Fdelete_char, Fself_insert_command): Use it.
29128         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
29129         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
29131         xterm and OSC 52: Add NEWS entry, and tweak the code
29132         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
29133         to top-level.
29134         (terminal-init-xterm-activate-set-selection): Set a terminal property.
29135         (xterm--set-selection): Use it instead of checking the value of
29136         `terminal-initted'.  Don't use string-bytes.
29138 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
29140         xterm.el: Implement OSC-52 functionality for setting the X selection
29141         * lisp/term/xterm.el (xterm-max-cut-length): New var.
29142         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
29143         New funs.
29144         (terminal-init-xterm, xterm--version-handler): Use them.
29146 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
29148         Remove left over code from when we used an obsolete/loaddefs.el file
29149         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
29150         when we used an obsolete/loaddefs.el file.
29152         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
29153         (semanticdb-without-unloaded-file-searches): Use declare.
29154         (semantic-fw-add-edebug-spec): Remove.
29156         * lisp/completion.el (completion-lisp-mode-hook):
29157         Use completion-separator-chars rather than local key binding.
29159         * src/*.c: Set deactivate_mark buffer-locally
29160         (Bug#20260)
29161         * src/insdel.c (prepare_to_modify_buffer_1):
29162         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
29163         buffer-locally.
29165 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
29167         python.el: Keep symmetry on sexp navigation with parens
29168         (Bug#19954)
29169         * lisp/progmodes/python.el
29170         (python-nav--forward-sexp): Add argument skip-parens-p.
29171         (python-nav-forward-sexp, python-nav-backward-sexp)
29172         (python-nav-forward-sexp-safe)
29173         (python-nav-backward-sexp-safe): Use it.
29174         * test/automated/python-tests.el
29175         (python-nav-forward-sexp-1): Fix test.
29177 2015-04-12  João Távora  <joaotavora@gmail.com>
29179         Don't use `setq-local' in Gnus code
29180         This might break upstream builds with older Emacsen
29181         * lisp/gnus/message.el (message-mode): Use `set' and
29182         `make-local-variable' instead of `setq-local'.
29184 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
29186         Update Makefile.in's .PHONY dependencies
29187         * Makefile.in (change-history-commit, master-branch-is-current)
29188         (no-ChangeLog): Now phony.
29190         Remove configure's --with-mmdf option
29191         * configure.ac (MAIL_USE_MMDF): Remove.
29192         * etc/NEWS: Document this.
29193         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
29194         (Bug#20308)
29196         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
29197         That way, 'make install' won't think it's a man page.
29198         Reported by Ashish SHUKLA in:
29199         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
29201         Improve 'make change-history' prereq tests
29202         * Makefile.in (gen_origin): Fix to match what's in the master branch.
29203         (no-ChangeLog, master-branch-is-current): New rules.
29204         (change-history): Depend on them, to avoid similar future problems.
29205         Escape the local-variables string to pacify Emacs when editing
29206         Makefile.in.
29208 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
29210         * test/automated/package-test.el (with-package-test):
29211         Kill Packages buffer.
29213         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
29214         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
29215         "Upgrade" last, and use capitalized instead of all-caps.
29217         * lisp/emacs-lisp/package.el: Completely silence async operations.
29218         (package--make-autoloads-and-stuff): Silence autoloads.
29219         (package--save-selected-packages): New function, silences
29220         `customize-save-variable'.
29221         (package--user-selected-p, package-install-from-buffer)
29222         (package-delete, package-install): Use it.
29223         (package-install-from-archive)
29224         (package-menu--perform-transaction): Silence.
29225         (package-menu-execute): Feedback when operation starts.
29227         Use delay-mode-hooks when visiting the init-file
29228         * lisp/emacs-lisp/package.el (package--ensure-init-file):
29229         delay-mode-hooks.
29230         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
29232         * lisp/files.el: Only message when saving if save-silently is nil.
29233         (save-silently): New variable.
29234         (files--message): New function.
29235         (find-file-noselect, save-buffer, basic-save-buffer)
29236         (basic-save-buffer-2, save-some-buffers, not-modified)
29237         (append-to-file): Use them.
29239 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
29241         Support debug declarations in pcase macros
29242         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
29243         (pcase-UPAT): Use it.  Remove "`".
29244         (pcase--edebug-match-macro): New function.
29245         (pcase-defmacro): Support debug declarations.
29246         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
29247         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
29248         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
29249         Add debug declaration.
29251         pcase.el: Edebug support for `app' and vector patterns
29252         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
29253         (pcase-UPAT): Use it.  Support `app' patterns.
29254         (pcase-QPAT): Support vector patterns.
29256         edebug.el: Disambiguate vector specifications
29257         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
29258         `(vector ...)' as a vector specification, not as a sublist.
29260         (gnus-summary-refer-thread): Don't clobber unread articles
29261         This fixes a bug where `A T' causes "random" articles to become marked
29262         as read.
29263         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
29264         gnus-newsgroup-unreads remains sorted.
29266         mouse-sel.el: Fix mouse-sel-get-selection-function
29267         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
29268         Use gui--last-selected-text-primary instead of no longer existing
29269         gui-last-selected-text.
29271         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
29273         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
29275 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
29277         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
29279         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
29280         right buffer.
29282         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
29283         (byte-compile--interactive): New var.
29284         (byte-compile--message): New function.
29285         (byte-compile-log-1, byte-force-recompile)
29286         (byte-recompile-directory, byte-recompile-file)
29287         (byte-compile-file, compile-defun)
29288         (byte-compile-file-form-defmumble, byte-compile)
29289         (byte-compile-file-form-defalias, display-call-tree): Use it.
29291         * lisp/files.el: Don't message when nothing happened.
29292         (save-some-buffers, basic-save-buffer): Before messaging to say
29293         "nothing was saved" check if (called-interactively-p 'any).
29295 2015-04-12  João Távora  <joaotavora@gmail.com>
29297         Summary: Improve sexp-based movement in message-mode
29298         Works by giving citations and smileys a different syntax.  This helps
29299         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
29300         sexp-based movement.
29301         * lisp/gnus/message.el (message--syntax-propertize): New function.
29302         (message-mode): Set syntax-related vars.
29303         (message-smileys): New variable.
29304         * test/automated/message-mode-tests.el: New file
29306 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
29308         Use bool for boolean in window.c
29309         * src/window.c: Omit unnecessary static function decls.
29310         (adjust_window_count, select_window, Fselect_window)
29311         (window_body_width, Fwindow_body_height, Fwindow_body_width)
29312         (set_window_hscroll, check_window_containing, Fwindow_at)
29313         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
29314         (unshow_buffer, replace_window, recombine_windows)
29315         (add_window_to_list, candidate_window_p, next_window)
29316         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
29317         (Fget_buffer_window, Fdelete_other_windows_internal)
29318         (replace_buffer_in_windows_safely, set_window_buffer)
29319         (Fset_window_buffer, Fforce_window_update)
29320         (temp_output_buffer_show, make_parent_window)
29321         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
29322         (resize_frame_windows, Fsplit_window_internal)
29323         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
29324         (Fresize_mini_window_internal, mark_window_cursors_off)
29325         (window_scroll, window_scroll_pixel_based)
29326         (window_scroll_line_based, scroll_command, Fscroll_other_window)
29327         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
29328         (Fmove_to_window_line, Fset_window_configuration)
29329         (delete_all_child_windows, apply_window_adjustment)
29330         (set_window_fringes, set_window_scroll_bars)
29331         (Fset_window_vscroll, foreach_window, foreach_window_1)
29332         (compare_window_configurations, Fcompare_window_configurations):
29333         Prefer 'bool', 'true', and 'false' for booleans.
29334         * src/window.h (WINDOW_MODE_LINE_LINES)
29335         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
29337 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
29339         Speed up byte-compilation and autoload generation by avoiding mode-hooks
29340         This prevents emacs-lisp-mode-hook from being run everytime an
29341         autoload file is generated, which can account for a fraction of
29342         package installation time depending on the hooks the user has
29343         configured.
29344         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
29345         * lisp/emacs-lisp/autoload.el (autoload-find-file)
29346         (autoload-find-generated-file): Use delay-mode-hooks.
29348         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
29349         (package-menu-refresh): Respect async and do new package checking.
29350         (list-packages): Use `package-menu-refresh' instead of repeating code.
29352         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
29353         (package--quick-help-keys): New variable.
29354         (package--prettify-quick-help-key): New function.
29355         (package-menu-quick-help): Use it.
29357         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
29358         (package--build-compatibility-table): Require finder.
29360         * test/automated/package-test.el: Fix new test.
29362         * lisp/emacs-lisp/package.el: Silence async operations.
29363         (package--silence): New variable.
29364         (package--message): New function.
29365         (package-import-keyring, package-refresh-contents)
29366         (package-compute-transaction, package-install, package-delete)
29367         (package-menu--perform-transaction, package-menu-execute): Use it.
29369         * test/automated/package-test.el: Test async functionality.
29370         (package-test-update-archives-async): New test.
29372 2015-04-11  Daiki Ueno  <ueno@gnu.org>
29374         Utilize `make-process' in epg.el
29375         * lisp/epg.el (epg-error-output): Abolish.
29376         (epg-context): New slot `error-buffer'.
29377         (epg--start): Use `make-process' and `make-pipe-process'.
29378         (epg--process-filter): Remove code separating stderr from stdout.
29379         (epg-wait-for-completion): Simplify `error-output' handling.
29380         (epg-reset): Dispose error buffer.
29382 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
29384         * .gitignore: Ignore doc temps and outputs.
29386         Port commit-msg to MSYS Bash+Gawk
29387         See Eli Zaretskii in:
29388         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
29389         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
29390         (cent_sign, print_at_sign, at_sign): Revert previous change.
29391         (print_at_sign): Prepend "BEGIN".
29392         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
29394         Port commit-msg to broken MS-Windows shell
29395         * build-aux/git-hooks/commit-msg (cent_sign):
29396         Just use UTF-8 here rather than ASCII + printf, as the latter fails
29397         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
29398         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
29400 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
29402         Support GnuTLS v3.4 and later on MS-Windows
29403         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
29404         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
29405         GnuTLS DLL to load according to value of libgnutls-version.
29406         (Bug#20294)
29408 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
29410         Minor quoting etc. fixes to misc manuals
29411         Fix some minor quoting and spacing issues.  Distinguish more
29412         clearly among grave accent and apostrophe (which are ASCII) and
29413         single quote (which is not).  Prefer the standard terms
29414         "apostrophe" and "grave accent" to alternative names that can be
29415         confusing.  Use apostrophes to single-quote ASCII text.
29416         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
29417         rather than approximating it in ASCII with grave accent.
29419 2015-04-11  Daiki Ueno  <ueno@gnu.org>
29421         Respect more keyword args in `make-process'
29422         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
29423         keywords as documented.
29425 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
29427         Extract ChangeLog entries when committing a directory
29428         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
29429         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
29430         Add a FIXME comment.
29431         (log-edit-changelog-entries): Extract from
29432         `log-edit-changelog-entries', handle FILE being a directory
29433         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
29435 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
29437         Fix problems found by --enable-gcc-warnings
29438         * src/process.c (create_process, Fmake_pipe_process)
29439         (Fmake_network_process): Omit unused locals.
29441         Fix commit-msg to handle scissors lines
29442         * build-aux/git-hooks/commit-msg:
29443         Ignore every line after a scissors line, such as a line generated
29444         by 'git commit -v'.  Problem reported by Johan Bockgård in:
29445         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
29447         port commit-msg to Gawk 3.0.4 (1999)
29448         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
29449         (print_at_sign, at_sign): New vars.  Use them to avoid problems
29450         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
29451         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
29453         Have commit-msg report commit failure
29454         * build-aux/git-hooks/commit-msg: If the commit is aborted,
29455         say so.  Simplify by doing this at the end.  Problem reported
29456         by Eli Zaretskii in:
29457         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
29459 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
29461         Clean up LDAP Configuration section of EUDC manual
29462         * doc/misc/eudc.texi: Combine indices.
29463         (LDAP Configuration): Use command markup.  Add index entries.
29464         Change formatting.  Wrap long lines.  Add noindent markup.
29466 2015-04-10  Daiki Ueno  <ueno@gnu.org>
29468         Add facility to collect stderr of async subprocess
29469         * src/w32.h (register_aux_fd): New function declaration.
29470         * src/w32.c (register_aux_fd): New function.
29471         * src/process.h (struct Lisp_Process): New member stderrproc.
29472         * src/process.c (PIPECONN_P): New macro.
29473         (PIPECONN1_P): New macro.
29474         (Fdelete_process, Fprocess_status, Fset_process_buffer)
29475         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
29476         (Fcontinue_process): Handle pipe process specially.
29477         (create_process): Respect p->stderrproc.
29478         (Fmake_pipe_process): New function.
29479         (Fmake_process): Add new keyword argument :stderr.
29480         (wait_reading_process_output): Specially handle a pipe process when
29481         it gets an EOF.
29482         (syms_of_process): Register Qpipe and Smake_pipe_process.
29483         * doc/lispref/processes.texi (Asynchronous Processes): Document
29484         `make-pipe-process' and `:stderr' keyword of `make-process'.
29485         * lisp/subr.el (start-process): Suggest to use `make-process' handle
29486         standard error separately.
29487         * test/automated/process-tests.el (process-test-stderr-buffer)
29488         (process-test-stderr-filter): New tests.
29489         * etc/NEWS: Mention new process type `pipe' and its usage with the
29490         `:stderr' keyword of `make-process'.
29492 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
29494         Minor quoting etc. fixes to lispref manual
29495         * doc/lispref/tips.texi (Documentation Tips):
29496         Distinguish more clearly among grave accent, apostrophe,
29497         and single quote.
29498         * doc/lispref/README, doc/lispref/buffers.texi:
29499         * doc/lispref/commands.texi, doc/lispref/control.texi:
29500         * doc/lispref/customize.texi, doc/lispref/display.texi:
29501         * doc/lispref/elisp.texi, doc/lispref/files.texi:
29502         * doc/lispref/frames.texi, doc/lispref/hash.texi:
29503         * doc/lispref/help.texi, doc/lispref/internals.texi:
29504         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
29505         * doc/lispref/markers.texi, doc/lispref/modes.texi:
29506         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
29507         * doc/lispref/os.texi, doc/lispref/positions.texi:
29508         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
29509         * doc/lispref/text.texi, doc/lispref/tips.texi:
29510         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
29511         Use American-style double quoting in ordinary text,
29512         and quote 'like this' when single-quoting in ASCII text.
29513         Also, fix some minor spacing issues.
29515 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
29517         Handle symlinked test directory in tramp-tests.el
29518         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
29519         (tramp--test-check-files): Use `file-truename' for directories.
29521 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
29523         Fix 'recenter' when visual-line-mode is turned on
29524         * src/window.c (Frecenter): Use the same code for GUI and TTY
29525         frames alike; use vmotion only for "initial" frames.  This is
29526         because vmotion doesn't support visual-line-mode.  Rewrite the
29527         'iarg >= 0' case to use move_it_* functions instead of using
29528         vmotion, for the same reason.  Fix the clipping of the argument
29529         value to support scroll-margin in all cases and avoid unwarranted
29530         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
29531         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
29532         which see.
29534 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
29536         * lisp/abbrev.el (define-abbrev-table): Refine last change.
29538         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
29539         use of c[ad]+r", so as to keep the "cl-" prefix on all
29540         cl-lib definitions.
29542         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
29543         Use inhibit-point-motion-hooks.
29545         * lisp/cedet/semantic: Remove some dead code.
29546         * lisp/cedet/semantic/util-modes.el
29547         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
29548         any more.
29549         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
29550         not supported any more.
29551         (semantic-safe): Use `declare'.
29552         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
29553         (semantic-tag-intangible-p): Remove unused functions.
29554         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
29555         Remove unused function.
29557         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
29558         (gnus-article-hide-text, gnus-article-unhide-text)
29559         (gnus-article-unhide-text-type): Remove special handling of
29560         `intangible' since that property is not used any more.
29561         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
29563 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
29565         Use the VC root in `log-edit-listfun'
29566         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
29567         `log-edit-listfun'.
29569 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
29571         Fix description of Unix time, mention new function.
29572         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
29573         Unix time.
29574         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
29575         (Basic Operations on Units): Mention `calc-convert-exact-units'.
29577 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
29579         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
29581 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
29583         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
29584         Don't add newline after the last entry.
29586 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
29588         css-mode.el: Add "not" pseudo-class
29589         (Bug#20267)
29590         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
29591         list of CSS pseudo-classes.
29593 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
29595         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
29597 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
29599         Stop messing with the EMACS env var
29600         * doc/emacs/misc.texi (Interactive Shell): Remove description of
29601         EMACS env var.
29603 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
29605         Adapt 'make change-history' to coding cookie
29606         * Makefile.in (change-history): Adjust to change of format of
29607         ChangeLog file, which now has a coding cookie before an indented
29608         copyright notice.
29610 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
29612         Adapt 'make change-history' to coding cookie
29613         * Makefile.in (change-history): Adjust to change of format of
29614         ChangeLog file, which now has a coding cookie before an indented
29615         copyright notice.
29617         gitlog-to-changelog coding cookie and mv -i
29618         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
29619         for copyright notice prototype, so that we get a proper "coding:"
29620         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
29621         existing ChangeLog.  Problems reported by Eli Zaretskii in:
29622         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
29624         Merge from gnulib
29625         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
29626         2015-04-09 gitlog-to-changelog: port to MS-Windows
29628 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
29630         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
29631         (Bug#20212)
29633 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
29635         Stop messing with the EMACS env var
29636         (Bug#20202)
29637         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
29638         * lisp/comint.el (comint-exec-1):
29639         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
29640         * lisp/progmodes/compile.el (compilation-start): Same and bring
29641         INSIDE_EMACS's format in line with other users.
29643         css-mode.el (css-smie-rules): Fix indentation after complex selectors
29644         (Bug#20282)
29645         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
29646         inner structure of selectors.
29648 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
29650         python.el: Indent docstring lines to base-indent
29651         (Bug#19595)
29652         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
29653         an initial patch.
29654         * lisp/progmodes/python.el
29655         (python-indent-context): Add :inside-docstring context.
29656         (python-indent--calculate-indentation): Handle :inside-docstring.
29657         (python-indent-region): Re-indent docstrings.
29658         * test/automated/python-tests.el (python-indent-region-5)
29659         (python-indent-inside-string-2): Fix tests.
29661         python.el: Increase native completion robustness
29662         (Bug#19755)
29663         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
29664         this and providing useful ideas.
29665         * lisp/progmodes/python.el
29666         (python-shell-completion-native-output-timeout): Increase value.
29667         (python-shell-completion-native-try-output-timeout): New var.
29668         (python-shell-completion-native-try): Use it.
29669         (python-shell-completion-native-setup): New readline setup avoids
29670         polluting current context, ensures output when no-completions are
29671         available and includes output end marker.
29672         (python-shell-completion-native-get-completions): Trigger with one
29673         tab only.  Call accept-process-output until output end is found or
29674         python-shell-completion-native-output-timeout is exceeded.
29676 2015-04-08  Samer Masterson  <samer@samertm.com>
29678         * lisp/eshell: Make backslash a no-op in front of normal chars
29679         (Bug#8531)
29680         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
29681         (eshell-parse-backslash): Return escaped character after backslash
29682         if it is special.  Otherwise, if the backslash is not in a quoted
29683         string, ignore the backslash and return the character after; if
29684         the backslash is in a quoted string, return the backslash and the
29685         character after.
29686         * test/automated/eshell.el (eshell-test/escape-nonspecial)
29687         (eshell-test/escape-nonspecial-unicode)
29688         (eshell-test/escape-nonspecial-quoted)
29689         (eshell-test/escape-special-quoted): Add tests for new
29690         `eshell-parse-backslash' behavior.
29692 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
29694         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
29695         after the file name.
29696         (Bug#20276)
29698 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
29700         Minor quoting etc. fixes to Emacs manual
29701         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
29702         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
29703         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
29704         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
29705         * doc/emacs/indent.texi, doc/emacs/macos.texi:
29706         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
29707         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
29708         * doc/emacs/search.texi, doc/emacs/trouble.texi:
29709         * doc/emacs/vc1-xtra.texi:
29710         Use American-style double quoting in ordinary text,
29711         and quote 'like this' when single-quoting in ASCII text.
29712         Also, fix some minor spacing issues.
29714         Minor quoting etc. fixes to elisp intro
29715         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
29716         American-style double quoting in ordinary text.  In ASCII text,
29717         consistently quote 'like this' instead of `like this', unless
29718         Emacs requires the latter.
29720 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
29722         * CONTRIBUTE: Mention log-edit-insert-changelog.
29724         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
29726 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
29728         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
29730 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
29732         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
29733         Fix inheritance of initargs.  (Bug#20270)
29735 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
29737         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
29738         while dowloading information.
29740         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
29741         (package--ensure-init-file): Check file contents before visiting.
29742         (package-initialize): Call it.
29743         (package-install-from-buffer, package-install): Don't call it.
29745 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
29747         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
29748         (Bug#17517)
29750 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
29752         * lisp/net/tramp-cache.el (tramp-flush-file-property):
29753         Fix nasty scoping bug.
29755 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
29757         Add notice to visual commands section
29758         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
29759         such as git call less with its -F option which omits pagination if
29760         the contents is less than one page long.  This interferes with
29761         eshell's visual (sub-)commands.
29763 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
29765         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
29766         environment variable expansion in file names.  (Bug#19839)
29768 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
29770         Prefer double-quote to accent-grave in man pages
29772 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
29774         (Bug#20257)
29775         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
29777 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
29779         Update etc/PROBLEMS.
29780         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
29781         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
29782         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
29783         respectively); other minor updates and tweaks.  (Bug#20011)
29785 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
29787         Add doc strings for some Isearch state vars
29788         * lisp/misearch.el (multi-isearch-buffer-list)
29789         (multi-isearch-file-list): Add doc strings.
29790         (Bug#20232)
29792 2015-04-07  Alan Mackenzie  <acm@muc.de>
29794         Always mark "<" and ">" in #include directives with text properties.
29795         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
29796         "anchored matcher" with an invocation of
29797         c-make-font-lock-search-function to allow fontification when there's
29798         no trailing space on an "#include <..>" line.
29800 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
29802         Generate a ChangeLog file from commit logs
29803         * .gitignore: Add 'ChangeLog'.
29804         * build-aux/gitlog-to-changelog: New file, from Gnulib.
29805         * build-aux/gitlog-to-emacslog: New file.
29806         * CONTRIBUTE: Document the revised workflow.
29807         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
29808         instead of just special cases.
29809         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
29810         (ChangeLog, unchanged-history-files, change-history)
29811         (change-history-commit): New rules.
29812         * admin/admin.el (make-manuals-dist--1):
29813         Don't worry about doc/ChangeLog.
29814         * admin/authors.el: Add a FIXME.
29815         * admin/make-tarball.txt:
29816         * lisp/calendar/icalendar.el:
29817         * lisp/gnus/deuglify.el:
29818         * lisp/obsolete/gulp.el:
29819         * lwlib/README:
29820         Adjust to renamed ChangeLog history files.
29821         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
29822         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
29823         Remove obsolete discussion of merging ChangeLog files.
29824         New section "Maintaining ChangeLog history".
29825         * build-aux/git-hooks/pre-commit:
29826         Reject attempts to commit files named 'ChangeLog'.
29827         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
29828         * make-dist: Make and distribute top-level ChangeLog if there's a
29829         .git directory.  Distribute the new ChangeLog history files
29830         instead of scattered ChangeLog files.  Distribute the new files
29831         gitlog-to-changelog and gitlog-to-emacslog.
29832         (Bug#19113)
29834         Rename ChangeLogs for gitlog-to-changelog
29835         This patch was implemented via the following shell commands:
29836         find * -name ChangeLog |
29837         sed 's,.*,git mv & &.1,
29838         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
29839         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
29840         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
29841         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
29842         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
29843         sh
29844         git commit -am"[this commit message]"
29846 This file records repository revisions from
29847 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
29848 2016-02-04b6d89ff9288a49099f041752908b5eb9613e (inclusive).
29849 commit 53f3d4a94ac784da3fed3abc72766ecf698ab53c (inclusive).
29850 See ChangeLog.1 for earlier changes.
29852 ;; Local Variables:
29853 ;; coding: utf-8
29854 ;; End:
29856   Copyright (C) 2015-2016 Free Software Foundation, Inc.
29858   This file is part of GNU Emacs.
29860   GNU Emacs is free software: you can redistribute it and/or modify
29861   it under the terms of the GNU General Public License as published by
29862   the Free Software Foundation, either version 3 of the License, or
29863   (at your option) any later version.
29865   GNU Emacs is distributed in the hope that it will be useful,
29866   but WITHOUT ANY WARRANTY; without even the implied warranty of
29867   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
29868   GNU General Public License for more details.
29870   You should have received a copy of the GNU General Public License
29871   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.